Type of the key.
Type of the value.
Type of the arguments bundle.
Cache backend instance.
Hook executed before cache has been cleared.
Hook executed before entry for key has been deleted.
Policy is supposed to detach metadata from entry
and cleanup it's internal data structures when this hook is called.
Entry that's being deleted.
Hook executed after entry for key was retrieved.
Policy might decide that entry is no longer valid and return EntryValidity.NOT_VALID.
In case it does so, policy is responsible to evict entry from cache before this method returns.
Whether entry is still valid.
Hook executed after key wasn't found in the cache on Cache.get operation.
Hook executed after entry for key has been set.
Entry that was inserted.
Arguments bundle for cache set operation.
Hook executed after value for entry associated with key has been updated.
Set deleter which removes entries from cache.
Eviction policy, purpose of which is to offer cascade delete functionality.
When one of the keys is deleted/eviction, all of it's direct and transitive dependencies will also be deleted/evicted.
This is achieved by using an internal dependency graph. Graph is able to handle cycles.
When
keyis inserted in the cache, clients should also specify a list of dependencies and/or dependents (ifkeyhas them). The only limitation is that dependencies/dependents must be already present in the cache when they are specified, otherwise relationships of thekeywith them will be ignored.