/// <summary> /// Creates a new <see cref="ResourceManagerStringLocalizer"/>. /// </summary> /// <param name="hostingEnvironment">The <see cref="IHostingEnvironment"/>.</param> /// <param name="localizationOptions">The <see cref="IOptions{LocalizationOptions}"/>.</param> public GlobalResourceManagerStringLocalizerFactory( IHostingEnvironment hostingEnvironment, IOptions <LocalizationOptions> localizationOptions, IOptions <GlobalResourceOptions> globalResourceOptionsAccessor ) { if (hostingEnvironment == null) { throw new ArgumentNullException(nameof(hostingEnvironment)); } if (localizationOptions == null) { throw new ArgumentNullException(nameof(localizationOptions)); } _hostingEnvironment = hostingEnvironment; _resourcesRelativePath = localizationOptions.Value.ResourcesPath ?? string.Empty; if (!string.IsNullOrEmpty(_resourcesRelativePath)) { _resourcesRelativePath = _resourcesRelativePath.Replace(Path.AltDirectorySeparatorChar, '.') .Replace(Path.DirectorySeparatorChar, '.') + "."; } globalResourceOptions = globalResourceOptionsAccessor.Value; }
/// <summary> /// Creates a new <see cref="ResourceManagerWithCultureStringLocalizer"/>. /// </summary> /// <param name="resourceManager">The <see cref="System.Resources.ResourceManager"/> to read strings from.</param> /// <param name="resourceAssembly">The <see cref="Assembly"/> that contains the strings as embedded resources.</param> /// <param name="baseName">The base name of the embedded resource in the <see cref="Assembly"/> that contains the strings.</param> /// <param name="resourceNamesCache">Cache of the list of strings for a given resource assembly name.</param> /// <param name="culture">The specific <see cref="CultureInfo"/> to use.</param> /// <param name="globalResourceOptions">The <see cref="GlobalResourceOptions"/></param> /// <param name="globalResourceManager">The global <see cref="System.Resources.ResourceManager"/> to read strings from.</param> public GlobalResourceManagerWithCultureStringLocalizer( ResourceManager resourceManager, Assembly resourceAssembly, string baseName, IResourceNamesCache resourceNamesCache, CultureInfo culture, GlobalResourceOptions globalResourceOptions, ResourceManager globalResourceManager = null ) : base( resourceManager, resourceAssembly, baseName, resourceNamesCache, globalResourceOptions, globalResourceManager ) { if (resourceManager == null) { throw new ArgumentNullException(nameof(resourceManager)); } if (resourceAssembly == null) { throw new ArgumentNullException(nameof(resourceAssembly)); } if (baseName == null) { throw new ArgumentNullException(nameof(baseName)); } if (resourceNamesCache == null) { throw new ArgumentNullException(nameof(resourceNamesCache)); } if (culture == null) { throw new ArgumentNullException(nameof(culture)); } _culture = culture; }
/// <summary> /// Creates a new <see cref="HybridResourceManagerStringLocalizer"/>. /// </summary> /// <param name="resourceManager">The <see cref="System.Resources.ResourceManager"/> to read strings from.</param> /// <param name="resourceAssembly">The <see cref="Assembly"/> that contains the strings as embedded resources.</param> /// <param name="baseName">The base name of the embedded resource in the <see cref="Assembly"/> that contains the strings.</param> /// <param name="resourceNamesCache">Cache of the list of strings for a given resource assembly name.</param> /// <param name="globalResourceOptions">The <see cref="GlobalResourceOptions"/></param> /// <param name="globalResourceManager">The global <see cref="System.Resources.ResourceManager"/> to read strings from.</param> public GlobalResourceManagerStringLocalizer( ResourceManager resourceManager, Assembly resourceAssembly, string baseName, IResourceNamesCache resourceNamesCache, GlobalResourceOptions globalResourceOptions, ResourceManager globalResourceManager = null ) : this( resourceManager, new AssemblyWrapper(resourceAssembly), baseName, resourceNamesCache, globalResourceOptions, globalResourceManager ) { if (resourceAssembly == null) { throw new ArgumentNullException(nameof(resourceAssembly)); } }
/// <summary> /// Intended for testing purposes only. /// </summary> public GlobalResourceManagerStringLocalizer( ResourceManager resourceManager, AssemblyWrapper resourceAssemblyWrapper, string baseName, IResourceNamesCache resourceNamesCache, GlobalResourceOptions globalResourceOptions, ResourceManager globalResourceManager = null ) { if (resourceManager == null) { throw new ArgumentNullException(nameof(resourceManager)); } if (resourceAssemblyWrapper == null) { throw new ArgumentNullException(nameof(resourceAssemblyWrapper)); } if (baseName == null) { throw new ArgumentNullException(nameof(baseName)); } if (resourceNamesCache == null) { throw new ArgumentNullException(nameof(resourceNamesCache)); } _resourceAssemblyWrapper = resourceAssemblyWrapper; _resourceManager = resourceManager; _resourceBaseName = baseName; _resourceNamesCache = resourceNamesCache; _globalResourceManager = globalResourceManager; _globalResourceOptions = globalResourceOptions; }