예제 #1
0
        /// <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;
        }
예제 #2
0
        /// <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;
        }
예제 #3
0
 /// <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));
     }
 }
예제 #4
0
        /// <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;
        }