Files
Umbraco-CMS/src/Umbraco.Core/Dictionary/UmbracoCultureDictionaryFactory.cs
Ibrahim Muhammad Nada 0da33d064a Fixes #12904 UmbracoHelper.GetDictionaryValue defaults to en-US when used in non-front end code (#12942)
* adding new overload/rename a method

* remove this keyword

* fix comment

* remove space

* commit

* revert

* replace param name

* public backward compatibility

* Minor style tweaks

* Don't change default culture in UmbracoCultureDictionary

---------

Co-authored-by: Nikolaj <nikolajlauridsen@protonmail.ch>
2023-07-06 12:29:18 +02:00

31 lines
1.1 KiB
C#

using System.Globalization;
using Umbraco.Cms.Core.Cache;
using Umbraco.Cms.Core.Services;
namespace Umbraco.Cms.Core.Dictionary;
/// <summary>
/// A culture dictionary factory used to create an Umbraco.Core.Dictionary.ICultureDictionary.
/// </summary>
/// <remarks>
/// In the future this will allow use to potentially store dictionary items elsewhere and allows for maximum
/// flexibility.
/// </remarks>
public class DefaultCultureDictionaryFactory : ICultureDictionaryFactory
{
private readonly AppCaches _appCaches;
private readonly ILocalizationService _localizationService;
public DefaultCultureDictionaryFactory(ILocalizationService localizationService, AppCaches appCaches)
{
_localizationService = localizationService;
_appCaches = appCaches;
}
public ICultureDictionary CreateDictionary() =>
new DefaultCultureDictionary(_localizationService, _appCaches.RequestCache);
public ICultureDictionary CreateDictionary(CultureInfo specificCulture) =>
new DefaultCultureDictionary(specificCulture, _localizationService, _appCaches.RequestCache);
}