public interface BaseCache<K,V> extends AutoCloseable
Cache and CheckedCache.| Modifier and Type | Method and Description | 
|---|---|
void | 
evict(K key)
Evict an entry from the cache. 
 | 
CacheManager | 
getManager()  | 
void | 
put(K key,
   V value)
Puts a new entry into the Cache, replacing any existing one. 
 | 
closevoid evict(K key)
Use CacheManager.evictAll() to evict all entries of the entire cache.
void put(@Nonnull K key, @Nonnull V value)
Normally, you often never need to call this method, as in regular usage
 scenarios a cache API client just invokes Cache.get(Object) (or CheckedCache.get(Object),
 which then internally (may) use the CacheFunction (or CheckedCacheFunction) - without you
 ever having had to explicitly put something into the Cache.
 
This method is ONLY (!) intended for "optimizations". It is useful if the code
 using a cache already has a key and value (e.g. following an external update
 notification event kind of thing) and wants to "save time" on an expected
 subsequent Cache.get(Object) (or CheckedCache.get(Object)
 invoking the CacheFunction (or CheckedCacheFunction)
 unnecessarily, using this "hint" to "propose" an entry to the cache.
 
Any code using this must expect key/value pairs that have been put into a
 cache to disappear at any time (e.g. when the cache is full and this
 key/value hasn't been used, or after a programmatic or end-user operator
 initiated eviction), and be able to obtain THE SAME value from the
 CacheFunction (or CheckedCacheFunction), for the given key.
 
Failure to implement calls to this put method consistent with the implementation of the cache's get function WILL lead to weird cache inconsistencies!
Some Cache implementations may IGNORE this "hint" method.
key - the key of the proposed new cache entryvalue - the value of the proposed new cache entryNullPointerException - if the cache's users passed a null key or valueCacheManager getManager()
Copyright © 2019 OpenDaylight. All rights reserved.