|
@@ -17,6 +17,8 @@ namespace InABox.Configuration
|
|
private static readonly Dictionary<Type, Dictionary<string, string>> _globalcache = new Dictionary<Type, Dictionary<string, string>>();
|
|
private static readonly Dictionary<Type, Dictionary<string, string>> _globalcache = new Dictionary<Type, Dictionary<string, string>>();
|
|
private static readonly Dictionary<Type, Dictionary<string, string>> _usercache = new Dictionary<Type, Dictionary<string, string>>();
|
|
private static readonly Dictionary<Type, Dictionary<string, string>> _usercache = new Dictionary<Type, Dictionary<string, string>>();
|
|
|
|
|
|
|
|
+ private static readonly bool _shouldLog = false;
|
|
|
|
+
|
|
private static Dictionary<Type, Dictionary<string, string>> GetCache(ConfigurationCacheType type)
|
|
private static Dictionary<Type, Dictionary<string, string>> GetCache(ConfigurationCacheType type)
|
|
{
|
|
{
|
|
return type == ConfigurationCacheType.Local
|
|
return type == ConfigurationCacheType.Local
|
|
@@ -26,9 +28,17 @@ namespace InABox.Configuration
|
|
: _usercache;
|
|
: _usercache;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ private static void Log(LogType type, string message)
|
|
|
|
+ {
|
|
|
|
+ if (_shouldLog)
|
|
|
|
+ {
|
|
|
|
+ Logger.Send(type, "", message);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
public static T Check<T>(ConfigurationCacheType type, string section)
|
|
public static T Check<T>(ConfigurationCacheType type, string section)
|
|
{
|
|
{
|
|
- Logger.Send(LogType.Information, "", string.Format("- Checking {0}({1},{2})", typeof(T), type, section));
|
|
|
|
|
|
+ Log(LogType.Information, $"- Checking {typeof(T)}({type},{section})");
|
|
var _cache = GetCache(type);
|
|
var _cache = GetCache(type);
|
|
if (_cache.ContainsKey(typeof(T)))
|
|
if (_cache.ContainsKey(typeof(T)))
|
|
{
|
|
{
|
|
@@ -38,20 +48,19 @@ namespace InABox.Configuration
|
|
var data = subcache[section];
|
|
var data = subcache[section];
|
|
if (!string.IsNullOrWhiteSpace(data))
|
|
if (!string.IsNullOrWhiteSpace(data))
|
|
{
|
|
{
|
|
- Logger.Send(LogType.Information, "",
|
|
|
|
- string.Format("- Checking: Found {0}({1},{2}) -> {3}", typeof(T), type, section, subcache[section]));
|
|
|
|
|
|
+ Log(LogType.Information, $"- Checking: Found {typeof(T)}({type},{section}) -> {subcache[section]}");
|
|
var result = Serialization.Deserialize<T>(subcache[section]);
|
|
var result = Serialization.Deserialize<T>(subcache[section]);
|
|
return result;
|
|
return result;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- return default(T);
|
|
|
|
|
|
+ return default;
|
|
}
|
|
}
|
|
|
|
|
|
public static void Add<T>(ConfigurationCacheType type, string section, T config)
|
|
public static void Add<T>(ConfigurationCacheType type, string section, T config)
|
|
{
|
|
{
|
|
- Logger.Send(LogType.Information, "", string.Format("- Adding {0}({1},{2})", typeof(T), type, section));
|
|
|
|
|
|
+ Log(LogType.Information, $"- Adding {typeof(T)}({type},{section})");
|
|
var _cache = GetCache(type);
|
|
var _cache = GetCache(type);
|
|
if (!_cache.ContainsKey(typeof(T)))
|
|
if (!_cache.ContainsKey(typeof(T)))
|
|
_cache[typeof(T)] = new Dictionary<string, string>();
|
|
_cache[typeof(T)] = new Dictionary<string, string>();
|
|
@@ -61,14 +70,14 @@ namespace InABox.Configuration
|
|
|
|
|
|
public static void Clear<T>(ConfigurationCacheType type, string section)
|
|
public static void Clear<T>(ConfigurationCacheType type, string section)
|
|
{
|
|
{
|
|
- Logger.Send(LogType.Information, "", string.Format("- Clearing {0}({1},{2})", typeof(T), type, section));
|
|
|
|
|
|
+ Log(LogType.Information, $"- Clearing {typeof(T)}({type},{section})");
|
|
var _cache = GetCache(type);
|
|
var _cache = GetCache(type);
|
|
if (_cache.ContainsKey(typeof(T)))
|
|
if (_cache.ContainsKey(typeof(T)))
|
|
{
|
|
{
|
|
var subcache = _cache[typeof(T)];
|
|
var subcache = _cache[typeof(T)];
|
|
if (subcache.ContainsKey(section))
|
|
if (subcache.ContainsKey(section))
|
|
{
|
|
{
|
|
- Logger.Send(LogType.Information, "", string.Format("- Clearing: Removing {0}({1},{2})", typeof(T), type, section));
|
|
|
|
|
|
+ Log(LogType.Information, $"- Clearing: Removing {typeof(T)}({type},{section})");
|
|
subcache[section] = "";
|
|
subcache[section] = "";
|
|
}
|
|
}
|
|
}
|
|
}
|