Browse Source

Enable nullable annotations for Volo.Abp.Settings

pull/17020/head
liangshiwei 3 years ago
parent
commit
56f6f2454a
  1. 2
      framework/src/Volo.Abp.Settings/Volo.Abp.Settings.csproj
  2. 2
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ConfigurationSettingValueProvider.cs
  3. 2
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/DefaultValueSettingValueProvider.cs
  4. 2
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/GlobalSettingValueProvider.cs
  5. 2
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ISettingDefinitionContext.cs
  6. 2
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ISettingDefinitionManager.cs
  7. 6
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ISettingEncryptionService.cs
  8. 2
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ISettingProvider.cs
  9. 10
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ISettingStore.cs
  10. 2
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ISettingValueProvider.cs
  11. 6
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/NullSettingStore.cs
  12. 14
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingDefinition.cs
  13. 2
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingDefinitionContext.cs
  14. 4
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingDefinitionManager.cs
  15. 4
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingEncryptionService.cs
  16. 4
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingProvider.cs
  17. 4
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingValue.cs
  18. 2
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingValueProvider.cs
  19. 2
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingValueProviderManager.cs
  20. 2
      framework/src/Volo.Abp.Settings/Volo/Abp/Settings/UserSettingValueProvider.cs

2
framework/src/Volo.Abp.Settings/Volo.Abp.Settings.csproj

@ -5,6 +5,8 @@
<PropertyGroup>
<TargetFrameworks>netstandard2.0;netstandard2.1;net7.0</TargetFrameworks>
<Nullable>enable</Nullable>
<WarningsAsErrors>Nullable</WarningsAsErrors>
<AssemblyName>Volo.Abp.Settings</AssemblyName>
<PackageId>Volo.Abp.Settings</PackageId>
<AssetTargetFallback>$(AssetTargetFallback);portable-net45+win8+wp8+wpa81;</AssetTargetFallback>

2
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ConfigurationSettingValueProvider.cs

@ -21,7 +21,7 @@ public class ConfigurationSettingValueProvider : ISettingValueProvider, ITransie
Configuration = configuration;
}
public virtual Task<string> GetOrNullAsync(SettingDefinition setting)
public virtual Task<string?> GetOrNullAsync(SettingDefinition setting)
{
return Task.FromResult(Configuration[ConfigurationNamePrefix + setting.Name]);
}

2
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/DefaultValueSettingValueProvider.cs

@ -16,7 +16,7 @@ public class DefaultValueSettingValueProvider : SettingValueProvider
}
public override Task<string> GetOrNullAsync(SettingDefinition setting)
public override Task<string?> GetOrNullAsync(SettingDefinition setting)
{
return Task.FromResult(setting.DefaultValue);
}

2
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/GlobalSettingValueProvider.cs

@ -15,7 +15,7 @@ public class GlobalSettingValueProvider : SettingValueProvider
{
}
public override Task<string> GetOrNullAsync(SettingDefinition setting)
public override Task<string?> GetOrNullAsync(SettingDefinition setting)
{
return SettingStore.GetOrNullAsync(setting.Name, Name, null);
}

2
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ISettingDefinitionContext.cs

@ -4,7 +4,7 @@ namespace Volo.Abp.Settings;
public interface ISettingDefinitionContext
{
SettingDefinition GetOrNull(string name);
SettingDefinition? GetOrNull(string name);
IReadOnlyList<SettingDefinition> GetAll();

2
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ISettingDefinitionManager.cs

@ -10,5 +10,5 @@ public interface ISettingDefinitionManager
IReadOnlyList<SettingDefinition> GetAll();
SettingDefinition GetOrNull(string name);
SettingDefinition? GetOrNull(string name);
}

6
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ISettingEncryptionService.cs

@ -4,9 +4,7 @@ namespace Volo.Abp.Settings;
public interface ISettingEncryptionService
{
[CanBeNull]
string Encrypt([NotNull] SettingDefinition settingDefinition, [CanBeNull] string plainValue);
string? Encrypt([NotNull] SettingDefinition settingDefinition, string? plainValue);
[CanBeNull]
string Decrypt([NotNull] SettingDefinition settingDefinition, [CanBeNull] string encryptedValue);
string? Decrypt([NotNull] SettingDefinition settingDefinition, string? encryptedValue);
}

2
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ISettingProvider.cs

@ -6,7 +6,7 @@ namespace Volo.Abp.Settings;
public interface ISettingProvider
{
Task<string> GetOrNullAsync([NotNull] string name);
Task<string?> GetOrNullAsync([NotNull] string name);
Task<List<SettingValue>> GetAllAsync([NotNull] string[] names);

10
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ISettingStore.cs

@ -6,15 +6,15 @@ namespace Volo.Abp.Settings;
public interface ISettingStore
{
Task<string> GetOrNullAsync(
Task<string?> GetOrNullAsync(
[NotNull] string name,
[CanBeNull] string providerName,
[CanBeNull] string providerKey
string? providerName,
string? providerKey
);
Task<List<SettingValue>> GetAllAsync(
[NotNull] string[] names,
[CanBeNull] string providerName,
[CanBeNull] string providerKey
string? providerName,
string? providerKey
);
}

2
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ISettingValueProvider.cs

@ -8,7 +8,7 @@ public interface ISettingValueProvider
{
string Name { get; }
Task<string> GetOrNullAsync([NotNull] SettingDefinition setting);
Task<string?> GetOrNullAsync([NotNull] SettingDefinition setting);
Task<List<SettingValue>> GetAllAsync([NotNull] SettingDefinition[] settings);
}

6
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/NullSettingStore.cs

@ -17,12 +17,12 @@ public class NullSettingStore : ISettingStore, ISingletonDependency
Logger = NullLogger<NullSettingStore>.Instance;
}
public Task<string> GetOrNullAsync(string name, string providerName, string providerKey)
public Task<string?> GetOrNullAsync(string name, string? providerName, string? providerKey)
{
return Task.FromResult((string)null);
return Task.FromResult((string?)null);
}
public Task<List<SettingValue>> GetAllAsync(string[] names, string providerName, string providerKey)
public Task<List<SettingValue>> GetAllAsync(string[] names, string? providerName, string? providerKey)
{
return Task.FromResult(names.Select(x => new SettingValue(x, null)).ToList());
}

14
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingDefinition.cs

@ -17,16 +17,14 @@ public class SettingDefinition
get => _displayName;
set => _displayName = Check.NotNull(value, nameof(value));
}
private ILocalizableString _displayName;
private ILocalizableString _displayName = default!;
[CanBeNull]
public ILocalizableString Description { get; set; }
public ILocalizableString? Description { get; set; }
/// <summary>
/// Default value of the setting.
/// </summary>
[CanBeNull]
public string DefaultValue { get; set; }
public string? DefaultValue { get; set; }
/// <summary>
/// Can clients see this setting and it's value.
@ -61,9 +59,9 @@ public class SettingDefinition
public SettingDefinition(
string name,
string defaultValue = null,
ILocalizableString displayName = null,
ILocalizableString description = null,
string? defaultValue = null,
ILocalizableString? displayName = null,
ILocalizableString? description = null,
bool isVisibleToClients = false,
bool isInherited = true,
bool isEncrypted = false)

2
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingDefinitionContext.cs

@ -12,7 +12,7 @@ public class SettingDefinitionContext : ISettingDefinitionContext
Settings = settings;
}
public virtual SettingDefinition GetOrNull(string name)
public virtual SettingDefinition? GetOrNull(string name)
{
return Settings.GetOrDefault(name);
}

4
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingDefinitionManager.cs

@ -45,7 +45,7 @@ public class SettingDefinitionManager : ISettingDefinitionManager, ISingletonDep
return SettingDefinitions.Value.Values.ToImmutableList();
}
public virtual SettingDefinition GetOrNull(string name)
public virtual SettingDefinition? GetOrNull(string name)
{
return SettingDefinitions.Value.GetOrDefault(name);
}
@ -63,7 +63,7 @@ public class SettingDefinitionManager : ISettingDefinitionManager, ISingletonDep
foreach (var provider in providers)
{
provider.Define(new SettingDefinitionContext(settings));
provider!.Define(new SettingDefinitionContext(settings));
}
}

4
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingEncryptionService.cs

@ -17,7 +17,7 @@ public class SettingEncryptionService : ISettingEncryptionService, ITransientDep
Logger = NullLogger<SettingEncryptionService>.Instance;
}
public virtual string Encrypt(SettingDefinition settingDefinition, string plainValue)
public virtual string? Encrypt(SettingDefinition settingDefinition, string? plainValue)
{
if (plainValue.IsNullOrEmpty())
{
@ -27,7 +27,7 @@ public class SettingEncryptionService : ISettingEncryptionService, ITransientDep
return StringEncryptionService.Encrypt(plainValue);
}
public virtual string Decrypt(SettingDefinition settingDefinition, string encryptedValue)
public virtual string? Decrypt(SettingDefinition settingDefinition, string? encryptedValue)
{
if (encryptedValue.IsNullOrEmpty())
{

4
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingProvider.cs

@ -21,7 +21,7 @@ public class SettingProvider : ISettingProvider, ITransientDependency
SettingValueProviderManager = settingValueProviderManager;
}
public virtual async Task<string> GetOrNullAsync(string name)
public virtual async Task<string?> GetOrNullAsync(string name)
{
var setting = SettingDefinitionManager.Get(name);
var providers = Enumerable
@ -95,7 +95,7 @@ public class SettingProvider : ISettingProvider, ITransientDependency
return settingValues;
}
protected virtual async Task<string> GetOrNullValueFromProvidersAsync(
protected virtual async Task<string?> GetOrNullValueFromProvidersAsync(
IEnumerable<ISettingValueProvider> providers,
SettingDefinition setting)
{

4
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingValue.cs

@ -3,14 +3,14 @@
namespace Volo.Abp.Settings;
[Serializable]
public class SettingValue : NameValue
public class SettingValue : NameValue<string?>
{
public SettingValue()
{
}
public SettingValue(string name, string value)
public SettingValue(string name, string? value)
{
Name = name;
Value = value;

2
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingValueProvider.cs

@ -15,7 +15,7 @@ public abstract class SettingValueProvider : ISettingValueProvider, ITransientDe
SettingStore = settingStore;
}
public abstract Task<string> GetOrNullAsync(SettingDefinition setting);
public abstract Task<string?> GetOrNullAsync(SettingDefinition setting);
public abstract Task<List<SettingValue>> GetAllAsync(SettingDefinition[] settings);
}

2
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingValueProviderManager.cs

@ -24,7 +24,7 @@ public class SettingValueProviderManager : ISettingValueProviderManager, ISingle
() => Options
.ValueProviders
.Select(type => serviceProvider.GetRequiredService(type) as ISettingValueProvider)
.ToList(),
.ToList()!,
true
);
}

2
framework/src/Volo.Abp.Settings/Volo/Abp/Settings/UserSettingValueProvider.cs

@ -19,7 +19,7 @@ public class UserSettingValueProvider : SettingValueProvider
CurrentUser = currentUser;
}
public override async Task<string> GetOrNullAsync(SettingDefinition setting)
public override async Task<string?> GetOrNullAsync(SettingDefinition setting)
{
if (CurrentUser.Id == null)
{

Loading…
Cancel
Save