Class ProviderBasedLocalizationService
Provider based implementation of LocalizationService. Uses LocalizationProviders to load localized resources.
Inherited Members
Namespace: EPiServer.Framework.Localization
Assembly: EPiServer.Framework.dll
Version: 11.20.7Syntax
[ServiceConfiguration(typeof(LocalizationService), Lifecycle = ServiceInstanceScope.Singleton, FactoryMember = "CreateLocalizationService")]
[InitializableModule]
public class ProviderBasedLocalizationService : LocalizationService, IConfigurableModule, IInitializableModule
Constructors
ProviderBasedLocalizationService()
Initializes a new instance of the ProviderBasedLocalizationService class.
Declaration
public ProviderBasedLocalizationService()
ProviderBasedLocalizationService(ResourceKeyHandler)
Initializes a new instance of the ProviderBasedLocalizationService class.
Declaration
public ProviderBasedLocalizationService(ResourceKeyHandler keyHandler)
Parameters
Type | Name | Description |
---|---|---|
ResourceKeyHandler | keyHandler | The handler used to manipulate resource keys. |
Properties
AvailableLocalizations
Gets all available localizations that the LocalizationService has knowledge of.
Declaration
public override IEnumerable<CultureInfo> AvailableLocalizations { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<System.Globalization.CultureInfo> |
Overrides
ProviderList
Gets a list of the current set of LocalizationProvider that are used by the ProviderBasedLocalizationService.
Declaration
public IEnumerable<LocalizationProvider> ProviderList { get; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<LocalizationProvider> |
Remarks
Providers are processed in prioritized order from first to last and will return localized strings from the first provider that returns a value.
Providers
Gets a list of the current set of LocalizationProvider that are used by the ProviderBasedLocalizationService.
Declaration
[Obsolete("This property has been deprecated due to thread issues. Add additional providers by using methods AddProvider or InsertProvider. Inspect the current set of providers by calling ProviderList.", true)]
public IList<LocalizationProvider> Providers { get; protected set; }
Property Value
Type | Description |
---|---|
System.Collections.Generic.IList<LocalizationProvider> |
Methods
AddProvider(LocalizationProvider)
Adds a LocalizationProvider to the service at the end of the provider list.
Declaration
public void AddProvider(LocalizationProvider provider)
Parameters
Type | Name | Description |
---|---|---|
LocalizationProvider | provider | The provider that should be added. |
ConfigureContainer(ServiceConfigurationContext)
Configure the IoC container before initialization.
Declaration
public void ConfigureContainer(ServiceConfigurationContext context)
Parameters
Type | Name | Description |
---|---|---|
ServiceConfigurationContext | context | The context on which the container can be accessed. |
CreateLocalizationService(ResourceKeyHandler, LocalizationOptions, IServiceLocator)
Unsupported INTERNAL API! Not covered by semantic versioning; might change without notice.
Declaration
public static LocalizationService CreateLocalizationService(ResourceKeyHandler keyHandler, LocalizationOptions localizationOptions, IServiceLocator serviceLocator)
Parameters
Type | Name | Description |
---|---|---|
ResourceKeyHandler | keyHandler | |
LocalizationOptions | localizationOptions | |
IServiceLocator | serviceLocator |
Returns
Type | Description |
---|---|
LocalizationService |
GetAllStringsByCulture(String, String[], CultureInfo)
Gets all localized strings for the specified culture below the specified key.
Declaration
protected override IEnumerable<ResourceItem> GetAllStringsByCulture(string originalKey, string[] normalizedKey, CultureInfo culture)
Parameters
Type | Name | Description |
---|---|---|
System.String | originalKey | The original key that was passed into any GetString method. |
System.String[] | normalizedKey | The |
System.Globalization.CultureInfo | culture | The requested culture for the localized strings. |
Returns
Type | Description |
---|---|
System.Collections.Generic.IEnumerable<ResourceItem> | All localized strings below the specified key. |
Overrides
See Also
Initialize(InitializationEngine)
Declaration
public void Initialize(InitializationEngine context)
Parameters
Type | Name | Description |
---|---|---|
InitializationEngine | context |
InsertProvider(LocalizationProvider)
Adds a LocalizationProvider to the service at the to of the provider list.
Declaration
public void InsertProvider(LocalizationProvider provider)
Parameters
Type | Name | Description |
---|---|---|
LocalizationProvider | provider | The provider that should be added. |
LoadString(String[], String, CultureInfo)
Gets the localized string for the specified key in the specified culture.
Declaration
protected override string LoadString(string[] normalizedKey, string originalKey, CultureInfo culture)
Parameters
Type | Name | Description |
---|---|---|
System.String[] | normalizedKey | The |
System.String | originalKey | The original key that was passed into any GetString method. |
System.Globalization.CultureInfo | culture | The requested culture for the localized string. |
Returns
Type | Description |
---|---|
System.String | A localized string or |
Overrides
See Also
RemoveProvider(String)
Removes an existing LocalizationProvider from the list of providers for this service.
Declaration
public void RemoveProvider(string name)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | The name of the provider to remove. |
Exceptions
Type | Condition |
---|---|
System.ArgumentException | Thrown if no provider with the given name has been added to the service. |
Uninitialize(InitializationEngine)
Declaration
public void Uninitialize(InitializationEngine context)
Parameters
Type | Name | Description |
---|---|---|
InitializationEngine | context |