namespace IStation.Service
{
///
/// LogicPolicy
/// 缓存辅助类
///
internal class LogicPolicyCacheHelper
{
private const string _contentKey = "LogicPolicyList";
internal static string GetCacheKey()
{
return CacheHelper.GetCacheKey(_contentKey);
}
///
/// 设置缓存
///
public static void Set(List list, int Minites = 30, int RandomSeconds = 0)
{
var cacheKey = GetCacheKey();
MemoryCacheHelper.Set(cacheKey, list, Minites * 60 + RandomSeconds);
}
///
/// 获取缓存
///
///
public static List Get()
{
var cacheKey = GetCacheKey();
return MemoryCacheHelper.Get>(cacheKey);
}
///
/// 获取设置缓存
///
public static List GetSet(Func> func, int Minites = 30, int RandomSeconds = 0)
{
var cacheKey = GetCacheKey();
return MemoryCacheHelper.GetSet(cacheKey, func, Minites * 60 + RandomSeconds);
}
///
/// 移除缓存
///
public static void Remove()
{
var cacheKey = GetCacheKey();
MemoryCacheHelper.Remove(cacheKey);
}
///
/// 发布
///
public static void Publish(string key)
{
var cacheKey = GetCacheKey();
MemoryCacheWipeRelationHelper.Set(key, cacheKey);
}
///
/// 触发
///
public static void Trigger()
{
var cacheKey = GetCacheKey();
MemoryCacheWipeRelationHelper.Trigger(cacheKey);
}
}
}