public Task RemoveAsync(CacheOptionEntry entry) { Check.NotNull(entry, nameof(entry)); Check.NotNullOrEmpty(entry.Key, nameof(entry.Key)); _cache.Remove(entry.Key); return(Task.CompletedTask); }
public Task <T> GetAsync <T>(CacheOptionEntry entry, Func <Task <T> > func) { Check.NotNull(entry, nameof(entry)); Check.NotNullOrEmpty(entry.Key, nameof(entry.Key)); Check.NotNull(func, nameof(func)); return(_cache.GetOrCreateAsync <T>(entry, func)); }
public Task SetAsync <T>(CacheOptionEntry entry, T data) { Check.NotNull(entry, nameof(entry)); Check.NotNullOrEmpty(entry.Key, nameof(entry.Key)); _cache.Set(entry.Key, data, entry.ConvertToMemoryCacheEntryOptions()); return(Task.CompletedTask); }
public async Task <bool> ExistsAsync(CacheScheme scheme, CacheOptionEntry entry) { Check.NotNull(entry, nameof(entry)); Check.NotNullOrEmpty(entry.Key, nameof(entry.Key)); var store = AssignStore(scheme); return(store == null ? false : await store.ExistsAsync(entry)); }
public bool Exists(CacheScheme scheme, CacheOptionEntry entry) { Check.NotNull(entry, nameof(entry)); Check.NotNullOrEmpty(entry.Key, nameof(entry.Key)); var store = AssignStore(scheme); return(store == null ? false : store.Exists(entry)); }
public async Task SetAsync <T>(CacheScheme scheme, CacheOptionEntry entry, T data) { var store = AssignStore(scheme); if (store != null) { await store.SetAsync <T>(entry, data); } }
public async Task <bool> ExistsAsync(CacheOptionEntry entry) { Check.NotNull(entry, nameof(entry)); Check.NotNullOrEmpty(entry.Key, nameof(entry.Key)); var exist = _memoryStore.Exists(entry.Key); return(exist ? exist : await _redisStore.ExistsAsync(entry.Key)); }
public bool Exists(CacheOptionEntry entry) { Check.NotNull(entry, nameof(entry)); Check.NotNullOrEmpty(entry.Key, nameof(entry.Key)); var exist = _memoryStore.Exists(entry.Key); return(exist ? exist : _redisStore.Exists(entry.Key)); }
public void Set <T>(CacheScheme scheme, CacheOptionEntry entry, T data) { var store = AssignStore(scheme); if (store != null) { store.Set <T>(entry, data); } }
public async Task RemoveAsync(CacheScheme scheme, CacheOptionEntry entry) { Check.NotNull(entry, nameof(entry)); Check.NotNullOrEmpty(entry.Key, nameof(entry.Key)); var store = AssignStore(scheme); if (store != null) { await store.RemoveAsync(entry); } }
public void Remove(CacheScheme scheme, CacheOptionEntry entry) { Check.NotNull(entry, nameof(entry)); Check.NotNullOrEmpty(entry.Key, nameof(entry.Key)); var store = AssignStore(scheme); if (store != null) { store.Remove(entry); } }
/// <summary> /// 更新一级缓存,并通知其他客户端清理过期缓存 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="entry"></param> /// <param name="data"></param> /// <returns></returns> protected async Task UpdateAndPublishAsync <T>(CacheOptionEntry entry, T data) { if (entry == null && Equals(data, default(T))) { return; } _memoryStore.Set(entry, data); await _redisStore.Client.PublishAsync(TOPIC_NAME, new CacheMessage { ServiceId = SERVICE_ID, Keys = new string[] { entry.Key } }.ToJsonString()); }
/// <summary> /// 删除一级缓存,并通知其他客户端清理过期缓存 /// </summary> /// <param name="entry"></param> /// <returns></returns> protected async Task RemoveAndPublishAsync(CacheOptionEntry entry) { if (entry == null) { return; } _memoryStore.Remove(entry); await _redisStore.Client.PublishAsync(TOPIC_NAME, new CacheMessage { ServiceId = SERVICE_ID, Keys = new string[] { entry.Key } }.ToJsonString()); }
public T Get <T>(CacheOptionEntry entry) { Check.NotNull(entry, nameof(entry)); Check.NotNullOrEmpty(entry.Key, nameof(entry.Key)); return(_cache.Get <T>(entry.Key)); }
public void Set <T>(CacheOptionEntry entry, T data) { Check.NotNull(entry, nameof(entry)); Check.NotNullOrEmpty(entry.Key, nameof(entry.Key)); _cache.Set(entry.Key, data, entry.ConvertToMemoryCacheEntryOptions()); }
public T Get <T>(CacheScheme scheme, CacheOptionEntry entry) { var store = AssignStore(scheme); return(store == null ? default : store.Get <T>(entry)); }
public bool Exists(CacheOptionEntry entry) { Check.NotNull(entry, nameof(entry)); Check.NotNullOrEmpty(entry.Key, nameof(entry.Key)); return(_cache.TryGetValue(entry.Key, out object _)); }
public Task <bool> ExistsAsync(CacheOptionEntry entry) { Check.NotNull(entry, nameof(entry)); Check.NotNullOrEmpty(entry.Key, nameof(entry.Key)); return(Task.FromResult(_cache.TryGetValue(entry.Key, out object _))); }
public T Get <T>(CacheScheme scheme, CacheOptionEntry entry, Func <T> func) { var store = AssignStore(scheme); return(store == null?func(): store.Get <T>(entry, func)); }
public void Remove(CacheOptionEntry entry) { Check.NotNull(entry, nameof(entry)); Check.NotNullOrEmpty(entry.Key, nameof(entry.Key)); _cache.Remove(entry.Key); }
public async Task <T> GetAsync <T>(CacheScheme scheme, CacheOptionEntry entry) { var store = AssignStore(scheme); return(store == null ? default : await store.GetAsync <T>(entry)); }
public Task <T> GetAsync <T>(CacheOptionEntry entry) { Check.NotNull(entry, nameof(entry)); Check.NotNullOrEmpty(entry.Key, nameof(entry.Key)); return(Task.FromResult(_cache.Get <T>(entry.Key))); }
public async Task <T> GetAsync <T>(CacheScheme scheme, CacheOptionEntry entry, Func <T> func) { var store = AssignStore(scheme); return(store == null?func(): await store.GetAsync <T>(entry, func)); }