Пример #1
0
        public void Remove(ICacheHandle cacheHandle)
        {
            var handle = GetHandle(cacheHandle);

            if (!ConfirmHandle(handle))
            {
                return;
            }
            _collection.Remove(handle.Node);
        }
Пример #2
0
        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;
        }
Пример #3
0
 public void Add(TClass item, DateTime expiration, out ICacheHandle handle)
 {
     Add(item, expiration, out LinkedListNode <ContainedItem> node);
     handle = CreateHandle(node);
 }
Пример #4
0
 private static CacheHandle GetHandle(ICacheHandle cacheHandle)
 {
     return(cacheHandle is CacheHandle handle ? handle : null);
 }