From fbb606a20679c84c0008dd098fbb237b759e0e04 Mon Sep 17 00:00:00 2001 From: liangshiwei Date: Tue, 4 Jul 2023 16:30:01 +0800 Subject: [PATCH] Enable nullable annotations for Volo.Abp.RemoteServices --- .../Volo.Abp.RemoteServices.csproj | 2 ++ .../Http/Client/IRemoteServiceConfigurationProvider.cs | 3 +-- .../Volo/Abp/Http/Client/RemoteServiceConfiguration.cs | 8 ++++---- .../Http/Client/RemoteServiceConfigurationDictionary.cs | 7 +++---- .../Abp/Http/Client/RemoteServiceConfigurationProvider.cs | 2 +- .../RemoteServiceConfigurationProviderExtensions.cs | 3 +-- 6 files changed, 12 insertions(+), 13 deletions(-) diff --git a/framework/src/Volo.Abp.RemoteServices/Volo.Abp.RemoteServices.csproj b/framework/src/Volo.Abp.RemoteServices/Volo.Abp.RemoteServices.csproj index 52d536b51a..bdd0f16c25 100644 --- a/framework/src/Volo.Abp.RemoteServices/Volo.Abp.RemoteServices.csproj +++ b/framework/src/Volo.Abp.RemoteServices/Volo.Abp.RemoteServices.csproj @@ -5,6 +5,8 @@ netstandard2.0;netstandard2.1;net7.0 + enable + Nullable Volo.Abp.RemoteServices Volo.Abp.RemoteServices $(AssetTargetFallback);portable-net45+win8+wp8+wpa81; diff --git a/framework/src/Volo.Abp.RemoteServices/Volo/Abp/Http/Client/IRemoteServiceConfigurationProvider.cs b/framework/src/Volo.Abp.RemoteServices/Volo/Abp/Http/Client/IRemoteServiceConfigurationProvider.cs index 12b779141e..e869b19637 100644 --- a/framework/src/Volo.Abp.RemoteServices/Volo/Abp/Http/Client/IRemoteServiceConfigurationProvider.cs +++ b/framework/src/Volo.Abp.RemoteServices/Volo/Abp/Http/Client/IRemoteServiceConfigurationProvider.cs @@ -8,6 +8,5 @@ public interface IRemoteServiceConfigurationProvider [ItemNotNull] Task GetConfigurationOrDefaultAsync(string name); - [ItemCanBeNull] - Task GetConfigurationOrDefaultOrNullAsync(string name); + Task GetConfigurationOrDefaultOrNullAsync(string name); } diff --git a/framework/src/Volo.Abp.RemoteServices/Volo/Abp/Http/Client/RemoteServiceConfiguration.cs b/framework/src/Volo.Abp.RemoteServices/Volo/Abp/Http/Client/RemoteServiceConfiguration.cs index 34510be354..89d0b79f48 100644 --- a/framework/src/Volo.Abp.RemoteServices/Volo/Abp/Http/Client/RemoteServiceConfiguration.cs +++ b/framework/src/Volo.Abp.RemoteServices/Volo/Abp/Http/Client/RemoteServiceConfiguration.cs @@ -2,12 +2,12 @@ namespace Volo.Abp.Http.Client; -public class RemoteServiceConfiguration : Dictionary +public class RemoteServiceConfiguration : Dictionary { /// /// Base Url. /// - public string BaseUrl { + public string? BaseUrl { get => this.GetOrDefault(nameof(BaseUrl)); set => this[nameof(BaseUrl)] = value; } @@ -15,7 +15,7 @@ public class RemoteServiceConfiguration : Dictionary /// /// Version. /// - public string Version { + public string? Version { get => this.GetOrDefault(nameof(Version)); set => this[nameof(Version)] = value; } @@ -25,7 +25,7 @@ public class RemoteServiceConfiguration : Dictionary } - public RemoteServiceConfiguration(string baseUrl, string version = null) + public RemoteServiceConfiguration(string baseUrl, string? version = null) { this[nameof(BaseUrl)] = baseUrl; this[nameof(Version)] = version; diff --git a/framework/src/Volo.Abp.RemoteServices/Volo/Abp/Http/Client/RemoteServiceConfigurationDictionary.cs b/framework/src/Volo.Abp.RemoteServices/Volo/Abp/Http/Client/RemoteServiceConfigurationDictionary.cs index b79cf96414..ef4c5f5b77 100644 --- a/framework/src/Volo.Abp.RemoteServices/Volo/Abp/Http/Client/RemoteServiceConfigurationDictionary.cs +++ b/framework/src/Volo.Abp.RemoteServices/Volo/Abp/Http/Client/RemoteServiceConfigurationDictionary.cs @@ -3,11 +3,11 @@ using JetBrains.Annotations; namespace Volo.Abp.Http.Client; -public class RemoteServiceConfigurationDictionary : Dictionary +public class RemoteServiceConfigurationDictionary : Dictionary { public const string DefaultName = "Default"; - public RemoteServiceConfiguration Default { + public RemoteServiceConfiguration? Default { get => this.GetOrDefault(DefaultName); set => this[DefaultName] = value; } @@ -20,8 +20,7 @@ public class RemoteServiceConfigurationDictionary : Dictionary GetConfigurationOrDefaultOrNullAsync(string name) + public Task GetConfigurationOrDefaultOrNullAsync(string name) { return Task.FromResult(Options.RemoteServices.GetConfigurationOrDefaultOrNull(name)); } diff --git a/framework/src/Volo.Abp.RemoteServices/Volo/Abp/Http/Client/RemoteServiceConfigurationProviderExtensions.cs b/framework/src/Volo.Abp.RemoteServices/Volo/Abp/Http/Client/RemoteServiceConfigurationProviderExtensions.cs index 1c6aaac21d..6ec0a874da 100644 --- a/framework/src/Volo.Abp.RemoteServices/Volo/Abp/Http/Client/RemoteServiceConfigurationProviderExtensions.cs +++ b/framework/src/Volo.Abp.RemoteServices/Volo/Abp/Http/Client/RemoteServiceConfigurationProviderExtensions.cs @@ -10,8 +10,7 @@ public static class RemoteServiceConfigurationProviderExtensions this IRemoteServiceConfigurationProvider provider) => provider.GetConfigurationOrDefaultAsync(RemoteServiceConfigurationDictionary.DefaultName); - [ItemNotNull] - public static Task GetConfigurationOrDefaultOrNullAsync( + public static Task GetConfigurationOrDefaultOrNullAsync( this IRemoteServiceConfigurationProvider provider) => provider.GetConfigurationOrDefaultOrNullAsync(RemoteServiceConfigurationDictionary.DefaultName); } \ No newline at end of file