namespace Tizen.Applications
{
-
internal static class CultureInfoHelper
{
- private class CultureInfoManager
- {
- private static CultureInfoManager _inst;
- private const string _pathCultureInfoIni = "/usr/share/dotnet.tizen/framework/i18n/CultureInfo.ini";
- private static IntPtr _dictionary = IntPtr.Zero;
-
- public static CultureInfoManager GetInst()
- {
- return _inst;
- }
+ private const string _pathCultureInfoIni = "/usr/share/dotnet.tizen/framework/i18n/CultureInfo.ini";
+ private static bool _fileExists = File.Exists(_pathCultureInfoIni);
- private CultureInfoManager()
+ public static string GetCultureName(string locale)
+ {
+ if (!_fileExists)
{
- if (File.Exists(_pathCultureInfoIni))
- {
- _dictionary = Interop.LibIniParser.Load(_pathCultureInfoIni);
- }
+ return string.Empty;
}
- ~CultureInfoManager()
+ IntPtr dictionary = Interop.LibIniParser.Load(_pathCultureInfoIni);
+ if (dictionary == IntPtr.Zero)
{
- if (_dictionary != IntPtr.Zero)
- {
- Interop.LibIniParser.FreeDict(_dictionary);
- }
+ return string.Empty;
}
- public string GetCultureName(string locale)
+ string cultureName = string.Empty;
+ string key = "CultureInfo:" + locale.ToLowerInvariant();
+ IntPtr value = Interop.LibIniParser.GetString(dictionary, key, IntPtr.Zero);
+ if (value != IntPtr.Zero)
{
- if (_dictionary == IntPtr.Zero)
- {
- return string.Empty;
- }
-
- string cultureName = string.Empty;
- string key = "CultureInfo:" + locale.ToLowerInvariant();
- IntPtr value = Interop.LibIniParser.GetString(_dictionary, key, IntPtr.Zero);
- if (value != IntPtr.Zero)
- {
- cultureName = Marshal.PtrToStringAnsi(value);
- }
-
- return cultureName;
+ cultureName = Marshal.PtrToStringAnsi(value);
}
- }
- public static string GetCultureName(string locale)
- {
- return CultureInfoManager.GetInst().GetCultureName(locale);
+ Interop.LibIniParser.FreeDict(dictionary);
+ return cultureName;
}
}
}