Skip to content

Commit 2744fd2

Browse files
committed
chore: Modify code bad smell
1 parent 10d39ab commit 2744fd2

File tree

57 files changed

+261
-270
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+261
-270
lines changed

Masa.Framework.sln.DotSettings

+5-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
22
<s:Boolean x:Key="/Default/UserDictionary/Words/=Masa/@EntryIndexedValue">True</s:Boolean>
33
<s:Boolean x:Key="/Default/UserDictionary/Words/=DaprProcess/@EntryIndexedValue">True</s:Boolean>
4-
<s:Boolean x:Key="/Default/UserDictionary/Words/=Dapr/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>
5-
<s:Boolean x:Key="/Default/UserDictionary/Words/=MasaConfigurationProvider/@EntryIndexedValue">True</s:Boolean>
4+
<s:Boolean x:Key="/Default/UserDictionary/Words/=MasaConfigurationProvider/@EntryIndexedValue">True</s:Boolean>
5+
<s:Boolean x:Key="/Default/UserDictionary/Words/=II18n/@EntryIndexedValue">True</s:Boolean>
6+
<s:Boolean x:Key="/Default/UserDictionary/Words/=I18n/@EntryIndexedValue">True</s:Boolean>
7+
<s:Boolean x:Key="/Default/UserDictionary/Words/=I18nResourceDictionary/@EntryIndexedValue">True</s:Boolean>
8+
<s:Boolean x:Key="/Default/UserDictionary/Words/=Dapr/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>

src/BuildingBlocks/Exception/Masa.BuildingBlocks.Exceptions/MasaException.cs

+15-15
Original file line numberDiff line numberDiff line change
@@ -21,36 +21,36 @@ public class MasaException : Exception
2121

2222
private bool _initialize;
2323

24-
private II18N? _i18N;
24+
private II18n? _i18n;
2525

26-
internal II18N? I18N
26+
internal II18n? I18n
2727
{
2828
get
2929
{
3030
TryInitialize();
31-
return _i18N;
31+
return _i18n;
3232
}
3333
}
3434

35-
private II18N? _frameworkI18N;
35+
private II18n? _frameworkI18n;
3636

37-
internal II18N? FrameworkI18N
37+
internal II18n? FrameworkI18n
3838
{
3939
get
4040
{
4141
TryInitialize();
42-
return _frameworkI18N;
42+
return _frameworkI18n;
4343
}
4444
}
4545

46-
private bool _supportI18N;
46+
private bool _supportI18n;
4747

48-
internal bool SupportI18N
48+
internal bool SupportI18n
4949
{
5050
get
5151
{
5252
TryInitialize();
53-
return _supportI18N;
53+
return _supportI18n;
5454
}
5555
}
5656

@@ -64,9 +64,9 @@ private void TryInitialize()
6464

6565
private void Initialize()
6666
{
67-
_frameworkI18N = MasaApp.GetService<II18N<MasaFrameworkResource>>();
68-
_i18N = MasaApp.GetService<II18N<DefaultResource>>();
69-
_supportI18N = _frameworkI18N != null;
67+
_frameworkI18n = MasaApp.GetService<II18nOfT<MasaFrameworkResource>>();
68+
_i18n = MasaApp.GetService<II18nOfT<DefaultResource>>();
69+
_supportI18n = _frameworkI18n != null;
7070
_initialize = true;
7171
}
7272

@@ -111,7 +111,7 @@ public string GetLocalizedMessage()
111111

112112
protected virtual string GetLocalizedMessageExecuting()
113113
{
114-
if (!SupportI18N)
114+
if (!SupportI18n)
115115
{
116116
if (string.IsNullOrWhiteSpace(ErrorMessage))
117117
return Message;
@@ -122,10 +122,10 @@ protected virtual string GetLocalizedMessageExecuting()
122122
if (ErrorCode!.StartsWith(Masa.BuildingBlocks.Data.Constants.ErrorCode.FRAMEWORK_PREFIX))
123123
{
124124
//The current framework frame exception
125-
return FrameworkI18N!.T(ErrorCode!, false, GetParameters()) ?? Message;
125+
return FrameworkI18n!.T(ErrorCode!, false, GetParameters()) ?? Message;
126126
}
127127

128-
return I18N!.T(ErrorCode, false, GetParameters()) ?? Message;
128+
return I18n!.T(ErrorCode, false, GetParameters()) ?? Message;
129129
}
130130

131131
protected virtual object[] GetParameters() => Parameters;

src/BuildingBlocks/Exception/Masa.BuildingBlocks.Exceptions/MasaValidatorException.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -192,19 +192,19 @@ private static void Throw(
192192
protected override string GetLocalizedMessageExecuting()
193193
{
194194
string message;
195-
if (!SupportI18N)
195+
if (!SupportI18n)
196196
{
197197
message = string.IsNullOrWhiteSpace(ErrorMessage) ? Message : string.Format(ErrorMessage, GetParameters());
198198
}
199199

200200
else if (ErrorCode!.StartsWith(Masa.BuildingBlocks.Data.Constants.ErrorCode.FRAMEWORK_PREFIX))
201201
{
202202
//The current framework frame exception
203-
message = FrameworkI18N!.T(ErrorCode!, false, GetParameters()) ?? Message;
203+
message = FrameworkI18n!.T(ErrorCode!, false, GetParameters()) ?? Message;
204204
}
205205
else
206206
{
207-
message = I18N!.T(ErrorCode, false, GetParameters()) ?? Message;
207+
message = I18n!.T(ErrorCode, false, GetParameters()) ?? Message;
208208
}
209209

210210
return FormatMessage(new ValidationModel(ParamName!, message));

src/BuildingBlocks/Exception/Masa.BuildingBlocks.Exceptions/_Imports.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// Licensed under the MIT License. See LICENSE.txt in the project root for license information.
33

44
global using Masa.BuildingBlocks.Data;
5-
global using Masa.BuildingBlocks.Globalization.I18N;
5+
global using Masa.BuildingBlocks.Globalization.I18n;
66
global using Microsoft.Extensions.Logging;
77
global using System.Diagnostics.CodeAnalysis;
88
global using System.Runtime.CompilerServices;
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
// Copyright (c) MASA Stack All rights reserved.
22
// Licensed under the MIT License. See LICENSE.txt in the project root for license information.
33

4-
namespace Masa.BuildingBlocks.Globalization.I18N;
4+
namespace Masa.BuildingBlocks.Globalization.I18n;
55

66
public static class Constant
77
{
8-
public const string DEFAULT_LOCAL_SECTION = "I18N";
8+
public const string DEFAULT_LOCAL_SECTION = "I18n";
99
}

src/BuildingBlocks/Globalization/Masa.BuildingBlocks.Globalization.I18n/CultureModel.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// Copyright (c) MASA Stack All rights reserved.
22
// Licensed under the MIT License. See LICENSE.txt in the project root for license information.
33

4-
namespace Masa.BuildingBlocks.Globalization.I18N;
4+
namespace Masa.BuildingBlocks.Globalization.I18n;
55

66
public class CultureModel
77
{

src/BuildingBlocks/Globalization/Masa.BuildingBlocks.Globalization.I18n/CultureSettings.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// Copyright (c) MASA Stack All rights reserved.
22
// Licensed under the MIT License. See LICENSE.txt in the project root for license information.
33

4-
namespace Masa.BuildingBlocks.Globalization.I18N;
4+
namespace Masa.BuildingBlocks.Globalization.I18n;
55

66
public class CultureSettings
77
{

src/BuildingBlocks/Globalization/Masa.BuildingBlocks.Globalization.I18n/DefaultLanguageProvider.cs

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
// Copyright (c) MASA Stack All rights reserved.
22
// Licensed under the MIT License. See LICENSE.txt in the project root for license information.
33

4-
namespace Masa.BuildingBlocks.Globalization.I18N;
4+
namespace Masa.BuildingBlocks.Globalization.I18n;
55

66
public class DefaultLanguageProvider : ILanguageProvider
77
{
8-
private readonly II18N<MasaLanguageResource> _i18N;
8+
private readonly II18nOfT<MasaLanguageResource> _i18N;
99
private readonly IOptions<CultureSettings> _options;
1010

11-
private static Dictionary<string, string> _languages = new()
11+
private static readonly Dictionary<string, string> _languages = new()
1212
{
1313
{ "en-US", "English (United States)" },
1414
{ "zh-CN", "中文 (简体)" }
1515
};
1616

17-
public DefaultLanguageProvider(II18N<MasaLanguageResource> i18N, IOptions<CultureSettings> options)
17+
public DefaultLanguageProvider(II18nOfT<MasaLanguageResource> i18N, IOptions<CultureSettings> options)
1818
{
1919
_i18N = i18N;
2020
_options = options;

src/BuildingBlocks/Globalization/Masa.BuildingBlocks.Globalization.I18n/I18N.cs src/BuildingBlocks/Globalization/Masa.BuildingBlocks.Globalization.I18n/I18n.cs

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
// Copyright (c) MASA Stack All rights reserved.
22
// Licensed under the MIT License. See LICENSE.txt in the project root for license information.
33

4-
namespace Masa.BuildingBlocks.Globalization.I18N;
4+
namespace Masa.BuildingBlocks.Globalization.I18n;
55

66
public static class I18n
77
{
88
private static readonly IServiceProvider _serviceProvider = MasaApp.RootServiceProvider;
9-
private static readonly II18N _i18N = InitI18N();
9+
private static readonly II18n _i18N = InitI18n();
1010
private static readonly ILanguageProvider _languageProvider = InitLanguage();
1111

12-
static II18N InitI18N() => _serviceProvider.GetRequiredService<II18N>();
12+
static II18n InitI18n() => _serviceProvider.GetRequiredService<II18n>();
1313

1414
static ILanguageProvider InitLanguage() => _serviceProvider.GetRequiredService<ILanguageProvider>();
1515

src/BuildingBlocks/Globalization/Masa.BuildingBlocks.Globalization.I18n/I18NOfT.cs src/BuildingBlocks/Globalization/Masa.BuildingBlocks.Globalization.I18n/I18nOfT.cs

+25-27
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
// Copyright (c) MASA Stack All rights reserved.
22
// Licensed under the MIT License. See LICENSE.txt in the project root for license information.
33

4-
namespace Masa.BuildingBlocks.Globalization.I18N;
4+
namespace Masa.BuildingBlocks.Globalization.I18n;
55

6-
public class I18nOfT<TResourceSource> : II18N<TResourceSource>
6+
public class I18nOfT<TResourceSource> : II18nOfT<TResourceSource> where TResourceSource : class
77
{
8-
private readonly I18NResource? _resource;
9-
private readonly List<I18NResource?> _baseResources;
8+
private readonly I18nResource? _resource;
9+
private readonly List<I18nResource?> _baseResources;
1010

1111
public string this[string name] => T(name);
1212

@@ -18,24 +18,37 @@ public class I18nOfT<TResourceSource> : II18N<TResourceSource>
1818

1919
public I18nOfT()
2020
{
21-
_resource = I18NResourceResourceConfiguration.Resources.GetOrNull<TResourceSource>();
21+
_resource = I18nResourceResourceConfiguration.Resources.GetOrNull<TResourceSource>();
2222

2323
_baseResources = _resource?.BaseResourceTypes
24-
.Select(resourceType => I18NResourceResourceConfiguration.Resources.GetOrNull(resourceType))
25-
.ToList() ?? new List<I18NResource?>();
24+
.Select(resourceType => I18nResourceResourceConfiguration.Resources.GetOrNull(resourceType))
25+
.ToList() ?? new List<I18nResource?>();
2626
}
2727

28-
public virtual string T(string name)
29-
=> T(name, true)!;
28+
public virtual string T(string name) => T(name, true)!;
3029

3130
/// <summary>
3231
/// Gets the string resource with the given name.
3332
/// </summary>
3433
/// <param name="name">The name of the string resource.</param>
3534
/// <param name="returnKey">Return Key when key does not exist, default: true</param>
3635
/// <returns></returns>
37-
public virtual string? T(string name, bool returnKey)
38-
=> Core(name, returnKey, out _);
36+
public virtual string? T(string name, bool returnKey) => Core(name, returnKey, out _);
37+
38+
public virtual string T(string name, params object[] arguments)
39+
=> T(name, true, arguments)!;
40+
41+
public virtual string? T(string name, bool returnKey, params object[] arguments)
42+
{
43+
ArgumentNullException.ThrowIfNull(name);
44+
45+
var value = Core(name, returnKey, out bool isExist);
46+
47+
if (isExist)
48+
return string.Format(GetCultureInfo(), value!, arguments);
49+
50+
return returnKey ? name : null;
51+
}
3952

4053
/// <summary>
4154
/// Gets the string resource with the given name.
@@ -64,7 +77,7 @@ public virtual string T(string name)
6477

6578
public virtual string? GetOrNull(string name) => GetOrNull(_resource, name);
6679

67-
public virtual string? GetOrNull(I18NResource? i18NResource, string name)
80+
public virtual string? GetOrNull(I18nResource? i18NResource, string name)
6881
{
6982
if (i18NResource == null)
7083
return null;
@@ -73,21 +86,6 @@ public virtual string T(string name)
7386
return resourceContributor?.GetOrNull(name);
7487
}
7588

76-
public virtual string T(string name, params object[] arguments)
77-
=> T(name, true, arguments)!;
78-
79-
public virtual string? T(string name, bool returnKey, params object[] arguments)
80-
{
81-
ArgumentNullException.ThrowIfNull(name);
82-
83-
var value = Core(name, returnKey, out bool isExist);
84-
85-
if (isExist)
86-
return string.Format(GetCultureInfo(), value!, arguments);
87-
88-
return returnKey ? name : null;
89-
}
90-
9189
public virtual CultureInfo GetCultureInfo() => CultureInfo.CurrentCulture;
9290

9391
public virtual void SetCulture(string cultureName, bool useUserOverride = true)

src/BuildingBlocks/Globalization/Masa.BuildingBlocks.Globalization.I18n/I18NResource.cs src/BuildingBlocks/Globalization/Masa.BuildingBlocks.Globalization.I18n/I18nResource.cs

+6-6
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,34 @@
11
// Copyright (c) MASA Stack All rights reserved.
22
// Licensed under the MIT License. See LICENSE.txt in the project root for license information.
33

4-
namespace Masa.BuildingBlocks.Globalization.I18N;
4+
namespace Masa.BuildingBlocks.Globalization.I18n;
55

6-
public class I18NResource
6+
public class I18nResource
77
{
8-
private readonly Dictionary<string, II18NResourceContributor> _dictionary;
8+
private readonly Dictionary<string, II18nResourceContributor> _dictionary;
99

1010
public Type ResourceType { get; }
1111

1212
public List<Type> BaseResourceTypes { get; private set; }
1313

1414
public IEnumerable<Assembly> Assemblies { get; set; } = new List<Assembly>();
1515

16-
public I18NResource(Type resourceType, IEnumerable<Type> baseResourceTypes)
16+
public I18nResource(Type resourceType, IEnumerable<Type> baseResourceTypes)
1717
{
1818
_dictionary = new(StringComparer.OrdinalIgnoreCase);
1919
ResourceType = resourceType;
2020
BaseResourceTypes = baseResourceTypes.ToList();
2121
}
2222

23-
public void AddContributor(string cultureName, II18NResourceContributor localizationResourceContributor)
23+
public void AddContributor(string cultureName, II18nResourceContributor localizationResourceContributor)
2424
{
2525
if (_dictionary.ContainsKey(cultureName))
2626
throw new ArgumentException($"The {cultureName} already exists with {ResourceType.FullName}");
2727

2828
_dictionary.Add(localizationResourceContributor.CultureName, localizationResourceContributor);
2929
}
3030

31-
public II18NResourceContributor? GetResourceContributor(CultureInfo? cultureInfo = null)
31+
public II18nResourceContributor? GetResourceContributor(CultureInfo? cultureInfo = null)
3232
{
3333
var cultureName = cultureInfo?.Name ?? CultureInfo.CurrentUICulture.Name;
3434

0 commit comments

Comments
 (0)