diff options
Diffstat (limited to 'vendor/github.com/ReneKroon/ttlcache/item.go')
-rw-r--r-- | vendor/github.com/ReneKroon/ttlcache/item.go | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/vendor/github.com/ReneKroon/ttlcache/item.go b/vendor/github.com/ReneKroon/ttlcache/item.go deleted file mode 100644 index 2f78f49cc..000000000 --- a/vendor/github.com/ReneKroon/ttlcache/item.go +++ /dev/null @@ -1,46 +0,0 @@ -package ttlcache - -import ( - "time" -) - -const ( - // ItemNotExpire Will avoid the item being expired by TTL, but can still be exired by callback etc. - ItemNotExpire time.Duration = -1 - // ItemExpireWithGlobalTTL will use the global TTL when set. - ItemExpireWithGlobalTTL time.Duration = 0 -) - -func newItem(key string, data interface{}, ttl time.Duration) *item { - item := &item{ - data: data, - ttl: ttl, - key: key, - } - // since nobody is aware yet of this item, it's safe to touch without lock here - item.touch() - return item -} - -type item struct { - key string - data interface{} - ttl time.Duration - expireAt time.Time - queueIndex int -} - -// Reset the item expiration time -func (item *item) touch() { - if item.ttl > 0 { - item.expireAt = time.Now().Add(item.ttl) - } -} - -// Verify if the item is expired -func (item *item) expired() bool { - if item.ttl <= 0 { - return false - } - return item.expireAt.Before(time.Now()) -} |