Class BoundedLocalCache.BoundedLocalAsyncLoadingCache.AsyncLoader<K,V>
java.lang.Object
com.github.benmanes.caffeine.cache.BoundedLocalCache.BoundedLocalAsyncLoadingCache.AsyncLoader<K,V>
- All Implemented Interfaces:
AsyncCacheLoader<K,
,V> CacheLoader<K,
V>
- Enclosing class:
BoundedLocalCache.BoundedLocalAsyncLoadingCache<K,
V>
static final class BoundedLocalCache.BoundedLocalAsyncLoadingCache.AsyncLoader<K,V>
extends Object
implements CacheLoader<K,V>
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionasyncReload
(K key, V oldValue, Executor executor) Asynchronously computes or retrieves a replacement value corresponding to an already-cachedkey
.Computes or retrieves the value corresponding tokey
.Computes or retrieves a replacement value corresponding to an already-cachedkey
.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.github.benmanes.caffeine.cache.CacheLoader
asyncLoad, asyncLoadAll, loadAll
-
Field Details
-
loader
-
executor
-
-
Constructor Details
-
AsyncLoader
AsyncLoader(AsyncCacheLoader<? super K, V> loader, Caffeine<?, ?> builder)
-
-
Method Details
-
load
Description copied from interface:CacheLoader
Computes or retrieves the value corresponding tokey
.Warning: loading must not attempt to update any mappings of this cache directly.
- Specified by:
load
in interfaceCacheLoader<K,
V> - Parameters:
key
- the non-null key whose value should be loaded- Returns:
- the value associated with
key
ornull
if not found
-
reload
Description copied from interface:CacheLoader
Computes or retrieves a replacement value corresponding to an already-cachedkey
. If the replacement value is not found then the mapping will be removed ifnull
is returned. This method is called when an existing cache entry is refreshed byCaffeine.refreshAfterWrite(java.time.Duration)
, or through a call toLoadingCache.refresh(K)
.Note: all exceptions thrown by this method will be logged and then swallowed.
- Specified by:
reload
in interfaceCacheLoader<K,
V> - Parameters:
key
- the non-null key whose value should be loadedoldValue
- the non-null old value corresponding tokey
- Returns:
- the new value associated with
key
, ornull
if the mapping is to be removed
-
asyncReload
Description copied from interface:CacheLoader
Asynchronously computes or retrieves a replacement value corresponding to an already-cachedkey
. If the replacement value is not found then the mapping will be removed ifnull
is computed. This method is called when an existing cache entry is refreshed byCaffeine.refreshAfterWrite(java.time.Duration)
, or through a call toLoadingCache.refresh(K)
.Note: all exceptions thrown by this method will be logged and then swallowed.
- Specified by:
asyncReload
in interfaceAsyncCacheLoader<K,
V> - Specified by:
asyncReload
in interfaceCacheLoader<K,
V> - Parameters:
key
- the non-null key whose value should be loadedoldValue
- the non-null old value corresponding tokey
executor
- the executor with which the entry is asynchronously loaded- Returns:
- a future containing the new value associated with
key
, or containingnull
if the mapping is to be removed
-