Remove old/unused methods

pull/137/head
Halil İbrahim Kalkan 8 years ago
parent 1af65651e1
commit ab74af4314

@ -6,8 +6,6 @@ using Microsoft.Extensions.Localization;
namespace Volo.Abp.Localization
{
//TODO: Remove old/unused methods!
public class AbpDictionaryBasedStringLocalizer : IStringLocalizer
{
public LocalizationResource Resource { get; }
@ -27,29 +25,20 @@ namespace Volo.Abp.Localization
throw new NotImplementedException();
}
LocalizedString IStringLocalizer.this[string name]
{
get { return GetString(name); }
}
public LocalizedString this[string name] => GetLocalizedString(name, CultureInfo.CurrentUICulture.Name);
LocalizedString IStringLocalizer.this[string name, params object[] arguments]
public LocalizedString this[string name, params object[] arguments]
{
get
{
var localizedString = GetString(name);
var localizedString = this[name];
return new LocalizedString(name, string.Format(localizedString.Value, arguments, localizedString.ResourceNotFound, localizedString.SearchedLocation));
}
}
public LocalizedString GetString(string name)
protected virtual LocalizedString GetLocalizedString(string name, string cultureName)
{
return GetString(name, CultureInfo.CurrentUICulture.Name);
}
/// <inheritdoc/>
public LocalizedString GetString(string name, string cultureName)
{
var value = GetStringOrNull(name, cultureName);
var value = GetLocalizedStringOrNull(name, cultureName);
if (value == null)
{
@ -59,12 +48,7 @@ namespace Volo.Abp.Localization
return value;
}
public LocalizedString GetStringOrNull(string name, bool tryDefaults = true)
{
return GetStringOrNull(name, CultureInfo.CurrentUICulture.Name, tryDefaults);
}
public LocalizedString GetStringOrNull(string name, string cultureName, bool tryDefaults = true)
protected virtual LocalizedString GetLocalizedStringOrNull(string name, string cultureName, bool tryDefaults = true)
{
var dictionaries = Resource.DictionaryProvider.Dictionaries;
@ -114,8 +98,7 @@ namespace Volo.Abp.Localization
return new LocalizedString(name, strDefault.Value);
}
/// <inheritdoc/>
public IReadOnlyList<LocalizedString> GetAllStrings(string cultureName, bool includeDefaults = true)
protected virtual IReadOnlyList<LocalizedString> GetAllStrings(string cultureName, bool includeDefaults = true)
{
//TODO: Can be optimized (example: if it's already default dictionary, skip overriding)
@ -163,7 +146,7 @@ namespace Volo.Abp.Localization
return allStrings.Values.ToImmutableList();
}
private static string GetBaseCultureName(string cultureName)
protected virtual string GetBaseCultureName(string cultureName)
{
return cultureName.Contains("-")
? cultureName.Left(cultureName.IndexOf("-", StringComparison.Ordinal))

@ -46,11 +46,9 @@ namespace Volo.Abp.Localization
{
resource.Initialize(_serviceProvider);
//Use JSON/XML/...etc based provider that reads resource from source and creates a dictionary
//Extend dictionary with extensions
//Wrap reader by wrappers (like db wrapper which implement multitenancy/regions and so on...)
//Notes: Localizer will be cached, so wrappers are responsible to cache/invalidate themselves!
var localizer = new AbpDictionaryBasedStringLocalizer(resource); //TODO: !!!

@ -1,54 +0,0 @@
//using System.IO;
//using Abp.Localization.Dictionaries.Xml;
//using Abp.Localization.Sources;
//namespace Abp.Localization.Dictionaries.Json
//{
// /// <summary>
// /// Provides localization dictionaries from json files in a directory.
// /// </summary>
// public class JsonFileLocalizationDictionaryProvider : LocalizationDictionaryProviderBase
// {
// private readonly string _directoryPath;
// /// <summary>
// /// Creates a new <see cref="JsonFileLocalizationDictionaryProvider" />.
// /// </summary>
// /// <param name="directoryPath">Path of the dictionary that contains all related XML files</param>
// public JsonFileLocalizationDictionaryProvider(string directoryPath)
// {
// _directoryPath = directoryPath;
// }
// public override void Initialize(string sourceName)
// {
// var fileNames = Directory.GetFiles(_directoryPath, "*.json", SearchOption.TopDirectoryOnly);
// foreach (var fileName in fileNames)
// {
// var dictionary = CreateJsonLocalizationDictionary(fileName);
// if (Dictionaries.ContainsKey(dictionary.CultureInfo.Name))
// {
// throw new AbpInitializationException(sourceName + " source contains more than one dictionary for the culture: " + dictionary.CultureInfo.Name);
// }
// Dictionaries[dictionary.CultureInfo.Name] = dictionary;
// if (fileName.EndsWith(sourceName + ".json"))
// {
// if (DefaultDictionary != null)
// {
// throw new AbpInitializationException("Only one default localization dictionary can be for source: " + sourceName);
// }
// DefaultDictionary = dictionary;
// }
// }
// }
// protected virtual JsonLocalizationDictionary CreateJsonLocalizationDictionary(string fileName)
// {
// return JsonLocalizationDictionary.BuildFromFile(fileName);
// }
// }
//}

@ -1,4 +1,5 @@
using Microsoft.Extensions.DependencyInjection;
using System.Globalization;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Localization;
using Shouldly;
using Volo.Abp.Localization.Source;
@ -41,6 +42,16 @@ namespace Volo.Abp.Localization
}
}
[Fact]
public void Should_Get_Localized_Text_If_Defined_In_Requested_Culture()
{
_localizer.WithCulture(CultureInfo.GetCultureInfo("en"))["Car"].Value.ShouldBe("Car");
_localizer.WithCulture(CultureInfo.GetCultureInfo("en"))["CarPlural"].Value.ShouldBe("Cars");
_localizer.WithCulture(CultureInfo.GetCultureInfo("tr"))["CarPlural"].Value.ShouldBe("Araba");
_localizer.WithCulture(CultureInfo.GetCultureInfo("tr"))["CarPlural"].Value.ShouldBe("Araba");
}
[DependsOn(typeof(AbpTestBaseModule))]
public class TestModule : AbpModule
{

Loading…
Cancel
Save