mirror of
https://github.com/ICDSystems/ICD.Common.Utils.git
synced 2026-02-16 13:15:07 +00:00
refactor: Tidying
This commit is contained in:
@@ -181,13 +181,13 @@ namespace ICD.Common.Utils.Globalization
|
|||||||
if ((calendar = m_Calendar) == null)
|
if ((calendar = m_Calendar) == null)
|
||||||
{
|
{
|
||||||
calendar =
|
calendar =
|
||||||
(m_Calendar =
|
m_Calendar =
|
||||||
((m_CalendarType == typeof(GregorianCalendar) && m_GregorianCalendarType.HasValue)
|
m_CalendarType == typeof(GregorianCalendar) && m_GregorianCalendarType.HasValue
|
||||||
? (ReflectionUtils.CreateInstance<Calendar>(m_CalendarType, new object[]
|
? ReflectionUtils.CreateInstance<Calendar>(m_CalendarType, new object[]
|
||||||
{
|
{
|
||||||
m_GregorianCalendarType
|
m_GregorianCalendarType
|
||||||
}))
|
})
|
||||||
: ReflectionUtils.CreateInstance<Calendar>(m_CalendarType)));
|
: ReflectionUtils.CreateInstance<Calendar>(m_CalendarType);
|
||||||
}
|
}
|
||||||
return calendar;
|
return calendar;
|
||||||
}
|
}
|
||||||
@@ -302,7 +302,7 @@ namespace ICD.Common.Utils.Globalization
|
|||||||
{
|
{
|
||||||
CultureInfo cultureInfo;
|
CultureInfo cultureInfo;
|
||||||
if ((cultureInfo = m_Parent) == null)
|
if ((cultureInfo = m_Parent) == null)
|
||||||
cultureInfo = (m_Parent = new IcdCultureInfo(m_ParentId, 0));
|
cultureInfo = m_Parent = new IcdCultureInfo(m_ParentId, 0);
|
||||||
return cultureInfo;
|
return cultureInfo;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -438,12 +438,13 @@ namespace ICD.Common.Utils.Globalization
|
|||||||
int @int = sQLiteDataReader.GetInt32(0);
|
int @int = sQLiteDataReader.GetInt32(0);
|
||||||
bool boolean = sQLiteDataReader.GetBoolean(3);
|
bool boolean = sQLiteDataReader.GetBoolean(3);
|
||||||
string @string = sQLiteDataReader.GetString(1);
|
string @string = sQLiteDataReader.GetString(1);
|
||||||
s_DictAvailableCulturesByName[@string] = (boolean ? CultureTypes.NeutralCultures : CultureTypes.SpecificCultures);
|
s_DictAvailableCulturesByName[@string] = boolean ? CultureTypes.NeutralCultures : CultureTypes.SpecificCultures;
|
||||||
int int2 = sQLiteDataReader.GetInt32(2);
|
int int2 = sQLiteDataReader.GetInt32(2);
|
||||||
s_DictAvailableCulturesByLcid[int2] = (boolean ? CultureTypes.NeutralCultures : CultureTypes.SpecificCultures);
|
s_DictAvailableCulturesByLcid[int2] = boolean ? CultureTypes.NeutralCultures : CultureTypes.SpecificCultures;
|
||||||
s_AvailableCultureNames[@int] = @string;
|
s_AvailableCultureNames[@int] = @string;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
sQLiteCommand2 = new IcdSqliteCommand("select id, specificculture from specificcultureinfo", sQLiteConnection);
|
sQLiteCommand2 = new IcdSqliteCommand("select id, specificculture from specificcultureinfo", sQLiteConnection);
|
||||||
using (IcdSqliteDataReader sQLiteDataReader2 = sQLiteCommand2.ExecuteReader())
|
using (IcdSqliteDataReader sQLiteDataReader2 = sQLiteCommand2.ExecuteReader())
|
||||||
{
|
{
|
||||||
@@ -455,6 +456,7 @@ namespace ICD.Common.Utils.Globalization
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
string[] array = builtinCultures;
|
string[] array = builtinCultures;
|
||||||
for (int i = 0; i < array.Length; i++)
|
for (int i = 0; i < array.Length; i++)
|
||||||
{
|
{
|
||||||
@@ -462,14 +464,16 @@ namespace ICD.Common.Utils.Globalization
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
CultureInfo cultureInfo = CultureInfo.GetCultureInfo(name);
|
CultureInfo cultureInfo = CultureInfo.GetCultureInfo(name);
|
||||||
|
|
||||||
Dictionary<string, CultureTypes> dictAvailableCulturesByName;
|
Dictionary<string, CultureTypes> dictAvailableCulturesByName;
|
||||||
string name2;
|
string name2;
|
||||||
(dictAvailableCulturesByName = s_DictAvailableCulturesByName)[name2 = cultureInfo.Name] =
|
(dictAvailableCulturesByName = s_DictAvailableCulturesByName)[name2 = cultureInfo.Name] =
|
||||||
(dictAvailableCulturesByName[name2] | CultureTypes.InstalledWin32Cultures);
|
dictAvailableCulturesByName[name2] | CultureTypes.InstalledWin32Cultures;
|
||||||
|
|
||||||
Dictionary<int, CultureTypes> dictAvailableCulturesByLcid;
|
Dictionary<int, CultureTypes> dictAvailableCulturesByLcid;
|
||||||
int lCid;
|
int lCid;
|
||||||
(dictAvailableCulturesByLcid = s_DictAvailableCulturesByLcid)[lCid = cultureInfo.LCID] =
|
(dictAvailableCulturesByLcid = s_DictAvailableCulturesByLcid)[lCid = cultureInfo.LCID] =
|
||||||
(dictAvailableCulturesByLcid[lCid] | CultureTypes.InstalledWin32Cultures);
|
dictAvailableCulturesByLcid[lCid] | CultureTypes.InstalledWin32Cultures;
|
||||||
}
|
}
|
||||||
catch (Exception)
|
catch (Exception)
|
||||||
{
|
{
|
||||||
@@ -487,14 +491,17 @@ namespace ICD.Common.Utils.Globalization
|
|||||||
{
|
{
|
||||||
if (culture < 0)
|
if (culture < 0)
|
||||||
throw new ArgumentOutOfRangeException("culture", "must be >= 0");
|
throw new ArgumentOutOfRangeException("culture", "must be >= 0");
|
||||||
|
|
||||||
CultureTypes cultureTypes;
|
CultureTypes cultureTypes;
|
||||||
if (!s_DictAvailableCulturesByLcid.TryGetValue(culture, out cultureTypes))
|
if (!s_DictAvailableCulturesByLcid.TryGetValue(culture, out cultureTypes))
|
||||||
throw new ArgumentException("not supported");
|
throw new ArgumentException("not supported");
|
||||||
|
|
||||||
if (!s_IsDatabasePresent || (cultureTypes & CultureTypes.InstalledWin32Cultures) != 0)
|
if (!s_IsDatabasePresent || (cultureTypes & CultureTypes.InstalledWin32Cultures) != 0)
|
||||||
{
|
{
|
||||||
BuildCultureInfoEx(CultureInfo.GetCultureInfo(culture));
|
BuildCultureInfoEx(CultureInfo.GetCultureInfo(culture));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
CultureInfo ci;
|
CultureInfo ci;
|
||||||
bool flag;
|
bool flag;
|
||||||
s_LockCacheByLcid.Enter();
|
s_LockCacheByLcid.Enter();
|
||||||
@@ -502,11 +509,13 @@ namespace ICD.Common.Utils.Globalization
|
|||||||
flag = s_DictCacheByLcid.TryGetValue(culture, out ci);
|
flag = s_DictCacheByLcid.TryGetValue(culture, out ci);
|
||||||
}
|
}
|
||||||
s_LockCacheByLcid.Leave();
|
s_LockCacheByLcid.Leave();
|
||||||
|
|
||||||
if (flag)
|
if (flag)
|
||||||
{
|
{
|
||||||
BuildCultureInfoEx(ci);
|
BuildCultureInfoEx(ci);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
using (IcdSqliteConnection sQLiteConnection = new IcdSqliteConnection(s_SqlConnectionString))
|
using (IcdSqliteConnection sQLiteConnection = new IcdSqliteConnection(s_SqlConnectionString))
|
||||||
{
|
{
|
||||||
sQLiteConnection.Open();
|
sQLiteConnection.Open();
|
||||||
@@ -527,14 +536,17 @@ namespace ICD.Common.Utils.Globalization
|
|||||||
{
|
{
|
||||||
if (name == null)
|
if (name == null)
|
||||||
throw new ArgumentNullException("name");
|
throw new ArgumentNullException("name");
|
||||||
|
|
||||||
CultureTypes cultureTypes;
|
CultureTypes cultureTypes;
|
||||||
if (!s_DictAvailableCulturesByName.TryGetValue(name, out cultureTypes))
|
if (!s_DictAvailableCulturesByName.TryGetValue(name, out cultureTypes))
|
||||||
throw new ArgumentException("not supported");
|
throw new ArgumentException("not supported");
|
||||||
|
|
||||||
if (!s_IsDatabasePresent || (cultureTypes & CultureTypes.InstalledWin32Cultures) != 0)
|
if (!s_IsDatabasePresent || (cultureTypes & CultureTypes.InstalledWin32Cultures) != 0)
|
||||||
{
|
{
|
||||||
BuildCultureInfoEx(CultureInfo.GetCultureInfo(name));
|
BuildCultureInfoEx(CultureInfo.GetCultureInfo(name));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
CultureInfo ci;
|
CultureInfo ci;
|
||||||
bool flag;
|
bool flag;
|
||||||
s_LockCacheByName.Enter();
|
s_LockCacheByName.Enter();
|
||||||
@@ -594,6 +606,7 @@ namespace ICD.Common.Utils.Globalization
|
|||||||
{
|
{
|
||||||
if (!rdr.Read())
|
if (!rdr.Read())
|
||||||
throw new InvalidOperationException("failure reading database");
|
throw new InvalidOperationException("failure reading database");
|
||||||
|
|
||||||
int ordinal = rdr.GetOrdinal("calendar");
|
int ordinal = rdr.GetOrdinal("calendar");
|
||||||
string text = rdr.GetString(ordinal);
|
string text = rdr.GetString(ordinal);
|
||||||
if (text.EndsWith(")"))
|
if (text.EndsWith(")"))
|
||||||
@@ -603,6 +616,7 @@ namespace ICD.Common.Utils.Globalization
|
|||||||
text = text.Substring(0, num);
|
text = text.Substring(0, num);
|
||||||
m_GregorianCalendarType = (GregorianCalendarTypes)Enum.Parse(typeof(GregorianCalendarTypes), value, true);
|
m_GregorianCalendarType = (GregorianCalendarTypes)Enum.Parse(typeof(GregorianCalendarTypes), value, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
m_CalendarType = Type.GetType("System.Globalization." + text);
|
m_CalendarType = Type.GetType("System.Globalization." + text);
|
||||||
ordinal = rdr.GetOrdinal("englishname");
|
ordinal = rdr.GetOrdinal("englishname");
|
||||||
m_EnglishName = rdr.GetString(ordinal);
|
m_EnglishName = rdr.GetString(ordinal);
|
||||||
@@ -615,10 +629,7 @@ namespace ICD.Common.Utils.Globalization
|
|||||||
ordinal = rdr.GetOrdinal("nativename");
|
ordinal = rdr.GetOrdinal("nativename");
|
||||||
m_NativeName = rdr.GetString(ordinal);
|
m_NativeName = rdr.GetString(ordinal);
|
||||||
ordinal = rdr.GetOrdinal("optionalcalendars");
|
ordinal = rdr.GetOrdinal("optionalcalendars");
|
||||||
string[] array = rdr.GetString(ordinal).Split(new[]
|
string[] array = rdr.GetString(ordinal).Split('|');
|
||||||
{
|
|
||||||
'|'
|
|
||||||
});
|
|
||||||
m_OptionalGregorianCalendarTypes = new GregorianCalendarTypes?[array.Length];
|
m_OptionalGregorianCalendarTypes = new GregorianCalendarTypes?[array.Length];
|
||||||
m_OptionalCalendarTypes = new Type[array.Length];
|
m_OptionalCalendarTypes = new Type[array.Length];
|
||||||
for (int i = 0; i < array.Length; i++)
|
for (int i = 0; i < array.Length; i++)
|
||||||
@@ -705,15 +716,15 @@ namespace ICD.Common.Utils.Globalization
|
|||||||
CurrencyDecimalDigits = sQLiteDataReader.GetInt32(ordinal),
|
CurrencyDecimalDigits = sQLiteDataReader.GetInt32(ordinal),
|
||||||
CurrencyDecimalSeparator = sQLiteDataReader.GetString(ordinal2),
|
CurrencyDecimalSeparator = sQLiteDataReader.GetString(ordinal2),
|
||||||
CurrencyGroupSizes = sQLiteDataReader.GetString(ordinal3)
|
CurrencyGroupSizes = sQLiteDataReader.GetString(ordinal3)
|
||||||
.Split(new[] {','})
|
.Split(',')
|
||||||
.Select(s => int.Parse(s))
|
.Select(s => int.Parse(s))
|
||||||
.ToArray(),
|
.ToArray(),
|
||||||
NumberGroupSizes = sQLiteDataReader.GetString(ordinal4)
|
NumberGroupSizes = sQLiteDataReader.GetString(ordinal4)
|
||||||
.Split(new[] {','})
|
.Split(',')
|
||||||
.Select(s => int.Parse(s))
|
.Select(s => int.Parse(s))
|
||||||
.ToArray(),
|
.ToArray(),
|
||||||
PercentGroupSizes = sQLiteDataReader.GetString(ordinal5)
|
PercentGroupSizes = sQLiteDataReader.GetString(ordinal5)
|
||||||
.Split(new[] {','})
|
.Split(',')
|
||||||
.Select(s => int.Parse(s))
|
.Select(s => int.Parse(s))
|
||||||
.ToArray(),
|
.ToArray(),
|
||||||
CurrencyGroupSeparator = sQLiteDataReader.GetString(ordinal6),
|
CurrencyGroupSeparator = sQLiteDataReader.GetString(ordinal6),
|
||||||
@@ -802,34 +813,13 @@ namespace ICD.Common.Utils.Globalization
|
|||||||
ShortTimePattern = sQLiteDataReader.GetString(ordinal11),
|
ShortTimePattern = sQLiteDataReader.GetString(ordinal11),
|
||||||
TimeSeparator = sQLiteDataReader.GetString(ordinal12),
|
TimeSeparator = sQLiteDataReader.GetString(ordinal12),
|
||||||
YearMonthPattern = sQLiteDataReader.GetString(ordinal13),
|
YearMonthPattern = sQLiteDataReader.GetString(ordinal13),
|
||||||
AbbreviatedDayNames = sQLiteDataReader.GetString(ordinal14).Split(new[]
|
AbbreviatedDayNames = sQLiteDataReader.GetString(ordinal14).Split('|'),
|
||||||
{
|
ShortestDayNames = sQLiteDataReader.GetString(ordinal15).Split('|'),
|
||||||
'|'
|
DayNames = sQLiteDataReader.GetString(ordinal16).Split('|'),
|
||||||
}),
|
AbbreviatedMonthNames = sQLiteDataReader.GetString(ordinal17).Split('|'),
|
||||||
ShortestDayNames = sQLiteDataReader.GetString(ordinal15).Split(new[]
|
MonthNames = sQLiteDataReader.GetString(ordinal18).Split('|'),
|
||||||
{
|
AbbreviatedMonthGenitiveNames = sQLiteDataReader.GetString(ordinal19).Split('|'),
|
||||||
'|'
|
MonthGenitiveNames = sQLiteDataReader.GetString(ordinal20).Split('|')
|
||||||
}),
|
|
||||||
DayNames = sQLiteDataReader.GetString(ordinal16).Split(new[]
|
|
||||||
{
|
|
||||||
'|'
|
|
||||||
}),
|
|
||||||
AbbreviatedMonthNames = sQLiteDataReader.GetString(ordinal17).Split(new[]
|
|
||||||
{
|
|
||||||
'|'
|
|
||||||
}),
|
|
||||||
MonthNames = sQLiteDataReader.GetString(ordinal18).Split(new[]
|
|
||||||
{
|
|
||||||
'|'
|
|
||||||
}),
|
|
||||||
AbbreviatedMonthGenitiveNames = sQLiteDataReader.GetString(ordinal19).Split(new[]
|
|
||||||
{
|
|
||||||
'|'
|
|
||||||
}),
|
|
||||||
MonthGenitiveNames = sQLiteDataReader.GetString(ordinal20).Split(new[]
|
|
||||||
{
|
|
||||||
'|'
|
|
||||||
})
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
s_DictDatetimeFormatInfos[id] = dateTimeFormatInfo;
|
s_DictDatetimeFormatInfos[id] = dateTimeFormatInfo;
|
||||||
@@ -934,9 +924,9 @@ namespace ICD.Common.Utils.Globalization
|
|||||||
return cultureInfo;
|
return cultureInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static CultureInfo[] GetCultures(CultureTypes types)
|
public new static CultureInfo[] GetCultures(CultureTypes types)
|
||||||
{
|
{
|
||||||
return s_DictAvailableCulturesByName.Where(de => (de.Value & types) != (CultureTypes)0)
|
return s_DictAvailableCulturesByName.Where(de => (de.Value & types) != 0)
|
||||||
.Select(de => new IcdCultureInfo(de.Key))
|
.Select(de => new IcdCultureInfo(de.Key))
|
||||||
.Cast<CultureInfo>()
|
.Cast<CultureInfo>()
|
||||||
.ToArray();
|
.ToArray();
|
||||||
|
|||||||
Reference in New Issue
Block a user