init
This commit is contained in:
26
Framework/Caching/ManualEnumCache.cs
Normal file
26
Framework/Caching/ManualEnumCache.cs
Normal file
@@ -0,0 +1,26 @@
|
||||
using System;
|
||||
using System.Collections.Concurrent;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace Kreta.Framework.Caching
|
||||
{
|
||||
internal sealed class ManualEnumCache : Cache
|
||||
{
|
||||
private ConcurrentDictionary<string, Dictionary<string, string>> cache;
|
||||
|
||||
public ManualEnumCache(CacheManager cacheManager) : base(cacheManager)
|
||||
{
|
||||
cache = new ConcurrentDictionary<string, Dictionary<string, string>>();
|
||||
}
|
||||
|
||||
public Dictionary<string, string> GetOrAdd(string key, Func<string, Dictionary<string, string>> valueFactory)
|
||||
{
|
||||
return cache.GetOrAdd(key, valueFactory);
|
||||
}
|
||||
|
||||
public override void Reset()
|
||||
{
|
||||
cache.Clear();
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user