public void Remove(ICacheHandle cacheHandle) { var handle = GetHandle(cacheHandle); if (!ConfirmHandle(handle)) { return; } _collection.Remove(handle.Node); }
public void Update(ICacheHandle cacheHandle, DateTime expiration, TClass item = null) { var handle = GetHandle(cacheHandle); if (!ConfirmHandle(handle)) { return; } _collection.Remove(handle.Node); Add(item ?? handle.Node.Value.Item, expiration, out LinkedListNode <ContainedItem> newNode); handle.Node = newNode; }
public void Add(TClass item, DateTime expiration, out ICacheHandle handle) { Add(item, expiration, out LinkedListNode <ContainedItem> node); handle = CreateHandle(node); }
private static CacheHandle GetHandle(ICacheHandle cacheHandle) { return(cacheHandle is CacheHandle handle ? handle : null); }