using System.Collections.Generic;
using System.Globalization;
using Abp.Configuration.Startup;
using Abp.Dependency;
namespace Abp.Localization.Sources
{
///
/// Null object pattern for .
///
internal class NullLocalizationSource : ILocalizationSource
{
///
/// Singleton instance.
///
public static NullLocalizationSource Instance { get; } = new NullLocalizationSource();
public string Name { get { return null; } }
private readonly IReadOnlyList _emptyStringArray = new LocalizedString[0];
private NullLocalizationSource()
{
}
public void Initialize(ILocalizationConfiguration configuration, IIocResolver iocResolver)
{
}
public string GetString(string name)
{
return name;
}
public string GetString(string name, CultureInfo culture)
{
return name;
}
public string GetStringOrNull(string name, bool tryDefaults = true)
{
return null;
}
public string GetStringOrNull(string name, CultureInfo culture, bool tryDefaults = true)
{
return null;
}
public IReadOnlyList GetAllStrings(bool includeDefaults = true)
{
return _emptyStringArray;
}
public IReadOnlyList GetAllStrings(CultureInfo culture, bool includeDefaults = true)
{
return _emptyStringArray;
}
}
}