Interface LocalCache<K,V>
-
- All Superinterfaces:
java.util.concurrent.ConcurrentMap<K,V>,java.util.Map<K,V>
- All Known Implementing Classes:
BoundedLocalCache,LocalCacheFactory.SI,LocalCacheFactory.SIA,LocalCacheFactory.SIAR,LocalCacheFactory.SIAW,LocalCacheFactory.SIAWR,LocalCacheFactory.SILi,LocalCacheFactory.SILiA,LocalCacheFactory.SILiAR,LocalCacheFactory.SILiAW,LocalCacheFactory.SILiAWR,LocalCacheFactory.SILiMS,LocalCacheFactory.SILiMSA,LocalCacheFactory.SILiMSAR,LocalCacheFactory.SILiMSAW,LocalCacheFactory.SILiMSAWR,LocalCacheFactory.SILiMSR,LocalCacheFactory.SILiMSW,LocalCacheFactory.SILiMSWR,LocalCacheFactory.SILiMW,LocalCacheFactory.SILiMWA,LocalCacheFactory.SILiMWAR,LocalCacheFactory.SILiMWAW,LocalCacheFactory.SILiMWAWR,LocalCacheFactory.SILiMWR,LocalCacheFactory.SILiMWW,LocalCacheFactory.SILiMWWR,LocalCacheFactory.SILiR,LocalCacheFactory.SILiS,LocalCacheFactory.SILiSA,LocalCacheFactory.SILiSAR,LocalCacheFactory.SILiSAW,LocalCacheFactory.SILiSAWR,LocalCacheFactory.SILiSMS,LocalCacheFactory.SILiSMSA,LocalCacheFactory.SILiSMSAR,LocalCacheFactory.SILiSMSAW,LocalCacheFactory.SILiSMSAWR,LocalCacheFactory.SILiSMSR,LocalCacheFactory.SILiSMSW,LocalCacheFactory.SILiSMSWR,LocalCacheFactory.SILiSMW,LocalCacheFactory.SILiSMWA,LocalCacheFactory.SILiSMWAR,LocalCacheFactory.SILiSMWAW,LocalCacheFactory.SILiSMWAWR,LocalCacheFactory.SILiSMWR,LocalCacheFactory.SILiSMWW,LocalCacheFactory.SILiSMWWR,LocalCacheFactory.SILiSR,LocalCacheFactory.SILiSW,LocalCacheFactory.SILiSWR,LocalCacheFactory.SILiW,LocalCacheFactory.SILiWR,LocalCacheFactory.SIMS,LocalCacheFactory.SIMSA,LocalCacheFactory.SIMSAR,LocalCacheFactory.SIMSAW,LocalCacheFactory.SIMSAWR,LocalCacheFactory.SIMSR,LocalCacheFactory.SIMSW,LocalCacheFactory.SIMSWR,LocalCacheFactory.SIMW,LocalCacheFactory.SIMWA,LocalCacheFactory.SIMWAR,LocalCacheFactory.SIMWAW,LocalCacheFactory.SIMWAWR,LocalCacheFactory.SIMWR,LocalCacheFactory.SIMWW,LocalCacheFactory.SIMWWR,LocalCacheFactory.SIR,LocalCacheFactory.SIS,LocalCacheFactory.SISA,LocalCacheFactory.SISAR,LocalCacheFactory.SISAW,LocalCacheFactory.SISAWR,LocalCacheFactory.SISMS,LocalCacheFactory.SISMSA,LocalCacheFactory.SISMSAR,LocalCacheFactory.SISMSAW,LocalCacheFactory.SISMSAWR,LocalCacheFactory.SISMSR,LocalCacheFactory.SISMSW,LocalCacheFactory.SISMSWR,LocalCacheFactory.SISMW,LocalCacheFactory.SISMWA,LocalCacheFactory.SISMWAR,LocalCacheFactory.SISMWAW,LocalCacheFactory.SISMWAWR,LocalCacheFactory.SISMWR,LocalCacheFactory.SISMWW,LocalCacheFactory.SISMWWR,LocalCacheFactory.SISR,LocalCacheFactory.SISW,LocalCacheFactory.SISWR,LocalCacheFactory.SIW,LocalCacheFactory.SIWR,LocalCacheFactory.SS,LocalCacheFactory.SSA,LocalCacheFactory.SSAR,LocalCacheFactory.SSAW,LocalCacheFactory.SSAWR,LocalCacheFactory.SSLi,LocalCacheFactory.SSLiA,LocalCacheFactory.SSLiAR,LocalCacheFactory.SSLiAW,LocalCacheFactory.SSLiAWR,LocalCacheFactory.SSLiMS,LocalCacheFactory.SSLiMSA,LocalCacheFactory.SSLiMSAR,LocalCacheFactory.SSLiMSAW,LocalCacheFactory.SSLiMSAWR,LocalCacheFactory.SSLiMSR,LocalCacheFactory.SSLiMSW,LocalCacheFactory.SSLiMSWR,LocalCacheFactory.SSLiMW,LocalCacheFactory.SSLiMWA,LocalCacheFactory.SSLiMWAR,LocalCacheFactory.SSLiMWAW,LocalCacheFactory.SSLiMWAWR,LocalCacheFactory.SSLiMWR,LocalCacheFactory.SSLiMWW,LocalCacheFactory.SSLiMWWR,LocalCacheFactory.SSLiR,LocalCacheFactory.SSLiS,LocalCacheFactory.SSLiSA,LocalCacheFactory.SSLiSAR,LocalCacheFactory.SSLiSAW,LocalCacheFactory.SSLiSAWR,LocalCacheFactory.SSLiSMS,LocalCacheFactory.SSLiSMSA,LocalCacheFactory.SSLiSMSAR,LocalCacheFactory.SSLiSMSAW,LocalCacheFactory.SSLiSMSAWR,LocalCacheFactory.SSLiSMSR,LocalCacheFactory.SSLiSMSW,LocalCacheFactory.SSLiSMSWR,LocalCacheFactory.SSLiSMW,LocalCacheFactory.SSLiSMWA,LocalCacheFactory.SSLiSMWAR,LocalCacheFactory.SSLiSMWAW,LocalCacheFactory.SSLiSMWAWR,LocalCacheFactory.SSLiSMWR,LocalCacheFactory.SSLiSMWW,LocalCacheFactory.SSLiSMWWR,LocalCacheFactory.SSLiSR,LocalCacheFactory.SSLiSW,LocalCacheFactory.SSLiSWR,LocalCacheFactory.SSLiW,LocalCacheFactory.SSLiWR,LocalCacheFactory.SSMS,LocalCacheFactory.SSMSA,LocalCacheFactory.SSMSAR,LocalCacheFactory.SSMSAW,LocalCacheFactory.SSMSAWR,LocalCacheFactory.SSMSR,LocalCacheFactory.SSMSW,LocalCacheFactory.SSMSWR,LocalCacheFactory.SSMW,LocalCacheFactory.SSMWA,LocalCacheFactory.SSMWAR,LocalCacheFactory.SSMWAW,LocalCacheFactory.SSMWAWR,LocalCacheFactory.SSMWR,LocalCacheFactory.SSMWW,LocalCacheFactory.SSMWWR,LocalCacheFactory.SSR,LocalCacheFactory.SSS,LocalCacheFactory.SSSA,LocalCacheFactory.SSSAR,LocalCacheFactory.SSSAW,LocalCacheFactory.SSSAWR,LocalCacheFactory.SSSMS,LocalCacheFactory.SSSMSA,LocalCacheFactory.SSSMSAR,LocalCacheFactory.SSSMSAW,LocalCacheFactory.SSSMSAWR,LocalCacheFactory.SSSMSR,LocalCacheFactory.SSSMSW,LocalCacheFactory.SSSMSWR,LocalCacheFactory.SSSMW,LocalCacheFactory.SSSMWA,LocalCacheFactory.SSSMWAR,LocalCacheFactory.SSSMWAW,LocalCacheFactory.SSSMWAWR,LocalCacheFactory.SSSMWR,LocalCacheFactory.SSSMWW,LocalCacheFactory.SSSMWWR,LocalCacheFactory.SSSR,LocalCacheFactory.SSSW,LocalCacheFactory.SSSWR,LocalCacheFactory.SSW,LocalCacheFactory.SSWR,LocalCacheFactory.WI,LocalCacheFactory.WIA,LocalCacheFactory.WIAR,LocalCacheFactory.WIAW,LocalCacheFactory.WIAWR,LocalCacheFactory.WILi,LocalCacheFactory.WILiA,LocalCacheFactory.WILiAR,LocalCacheFactory.WILiAW,LocalCacheFactory.WILiAWR,LocalCacheFactory.WILiMS,LocalCacheFactory.WILiMSA,LocalCacheFactory.WILiMSAR,LocalCacheFactory.WILiMSAW,LocalCacheFactory.WILiMSAWR,LocalCacheFactory.WILiMSR,LocalCacheFactory.WILiMSW,LocalCacheFactory.WILiMSWR,LocalCacheFactory.WILiMW,LocalCacheFactory.WILiMWA,LocalCacheFactory.WILiMWAR,LocalCacheFactory.WILiMWAW,LocalCacheFactory.WILiMWAWR,LocalCacheFactory.WILiMWR,LocalCacheFactory.WILiMWW,LocalCacheFactory.WILiMWWR,LocalCacheFactory.WILiR,LocalCacheFactory.WILiS,LocalCacheFactory.WILiSA,LocalCacheFactory.WILiSAR,LocalCacheFactory.WILiSAW,LocalCacheFactory.WILiSAWR,LocalCacheFactory.WILiSMS,LocalCacheFactory.WILiSMSA,LocalCacheFactory.WILiSMSAR,LocalCacheFactory.WILiSMSAW,LocalCacheFactory.WILiSMSAWR,LocalCacheFactory.WILiSMSR,LocalCacheFactory.WILiSMSW,LocalCacheFactory.WILiSMSWR,LocalCacheFactory.WILiSMW,LocalCacheFactory.WILiSMWA,LocalCacheFactory.WILiSMWAR,LocalCacheFactory.WILiSMWAW,LocalCacheFactory.WILiSMWAWR,LocalCacheFactory.WILiSMWR,LocalCacheFactory.WILiSMWW,LocalCacheFactory.WILiSMWWR,LocalCacheFactory.WILiSR,LocalCacheFactory.WILiSW,LocalCacheFactory.WILiSWR,LocalCacheFactory.WILiW,LocalCacheFactory.WILiWR,LocalCacheFactory.WIMS,LocalCacheFactory.WIMSA,LocalCacheFactory.WIMSAR,LocalCacheFactory.WIMSAW,LocalCacheFactory.WIMSAWR,LocalCacheFactory.WIMSR,LocalCacheFactory.WIMSW,LocalCacheFactory.WIMSWR,LocalCacheFactory.WIMW,LocalCacheFactory.WIMWA,LocalCacheFactory.WIMWAR,LocalCacheFactory.WIMWAW,LocalCacheFactory.WIMWAWR,LocalCacheFactory.WIMWR,LocalCacheFactory.WIMWW,LocalCacheFactory.WIMWWR,LocalCacheFactory.WIR,LocalCacheFactory.WIS,LocalCacheFactory.WISA,LocalCacheFactory.WISAR,LocalCacheFactory.WISAW,LocalCacheFactory.WISAWR,LocalCacheFactory.WISMS,LocalCacheFactory.WISMSA,LocalCacheFactory.WISMSAR,LocalCacheFactory.WISMSAW,LocalCacheFactory.WISMSAWR,LocalCacheFactory.WISMSR,LocalCacheFactory.WISMSW,LocalCacheFactory.WISMSWR,LocalCacheFactory.WISMW,LocalCacheFactory.WISMWA,LocalCacheFactory.WISMWAR,LocalCacheFactory.WISMWAW,LocalCacheFactory.WISMWAWR,LocalCacheFactory.WISMWR,LocalCacheFactory.WISMWW,LocalCacheFactory.WISMWWR,LocalCacheFactory.WISR,LocalCacheFactory.WISW,LocalCacheFactory.WISWR,LocalCacheFactory.WIW,LocalCacheFactory.WIWR,LocalCacheFactory.WS,LocalCacheFactory.WSA,LocalCacheFactory.WSAR,LocalCacheFactory.WSAW,LocalCacheFactory.WSAWR,LocalCacheFactory.WSLi,LocalCacheFactory.WSLiA,LocalCacheFactory.WSLiAR,LocalCacheFactory.WSLiAW,LocalCacheFactory.WSLiAWR,LocalCacheFactory.WSLiMS,LocalCacheFactory.WSLiMSA,LocalCacheFactory.WSLiMSAR,LocalCacheFactory.WSLiMSAW,LocalCacheFactory.WSLiMSAWR,LocalCacheFactory.WSLiMSR,LocalCacheFactory.WSLiMSW,LocalCacheFactory.WSLiMSWR,LocalCacheFactory.WSLiMW,LocalCacheFactory.WSLiMWA,LocalCacheFactory.WSLiMWAR,LocalCacheFactory.WSLiMWAW,LocalCacheFactory.WSLiMWAWR,LocalCacheFactory.WSLiMWR,LocalCacheFactory.WSLiMWW,LocalCacheFactory.WSLiMWWR,LocalCacheFactory.WSLiR,LocalCacheFactory.WSLiS,LocalCacheFactory.WSLiSA,LocalCacheFactory.WSLiSAR,LocalCacheFactory.WSLiSAW,LocalCacheFactory.WSLiSAWR,LocalCacheFactory.WSLiSMS,LocalCacheFactory.WSLiSMSA,LocalCacheFactory.WSLiSMSAR,LocalCacheFactory.WSLiSMSAW,LocalCacheFactory.WSLiSMSAWR,LocalCacheFactory.WSLiSMSR,LocalCacheFactory.WSLiSMSW,LocalCacheFactory.WSLiSMSWR,LocalCacheFactory.WSLiSMW,LocalCacheFactory.WSLiSMWA,LocalCacheFactory.WSLiSMWAR,LocalCacheFactory.WSLiSMWAW,LocalCacheFactory.WSLiSMWAWR,LocalCacheFactory.WSLiSMWR,LocalCacheFactory.WSLiSMWW,LocalCacheFactory.WSLiSMWWR,LocalCacheFactory.WSLiSR,LocalCacheFactory.WSLiSW,LocalCacheFactory.WSLiSWR,LocalCacheFactory.WSLiW,LocalCacheFactory.WSLiWR,LocalCacheFactory.WSMS,LocalCacheFactory.WSMSA,LocalCacheFactory.WSMSAR,LocalCacheFactory.WSMSAW,LocalCacheFactory.WSMSAWR,LocalCacheFactory.WSMSR,LocalCacheFactory.WSMSW,LocalCacheFactory.WSMSWR,LocalCacheFactory.WSMW,LocalCacheFactory.WSMWA,LocalCacheFactory.WSMWAR,LocalCacheFactory.WSMWAW,LocalCacheFactory.WSMWAWR,LocalCacheFactory.WSMWR,LocalCacheFactory.WSMWW,LocalCacheFactory.WSMWWR,LocalCacheFactory.WSR,LocalCacheFactory.WSS,LocalCacheFactory.WSSA,LocalCacheFactory.WSSAR,LocalCacheFactory.WSSAW,LocalCacheFactory.WSSAWR,LocalCacheFactory.WSSMS,LocalCacheFactory.WSSMSA,LocalCacheFactory.WSSMSAR,LocalCacheFactory.WSSMSAW,LocalCacheFactory.WSSMSAWR,LocalCacheFactory.WSSMSR,LocalCacheFactory.WSSMSW,LocalCacheFactory.WSSMSWR,LocalCacheFactory.WSSMW,LocalCacheFactory.WSSMWA,LocalCacheFactory.WSSMWAR,LocalCacheFactory.WSSMWAW,LocalCacheFactory.WSSMWAWR,LocalCacheFactory.WSSMWR,LocalCacheFactory.WSSMWW,LocalCacheFactory.WSSMWWR,LocalCacheFactory.WSSR,LocalCacheFactory.WSSW,LocalCacheFactory.WSSWR,LocalCacheFactory.WSW,LocalCacheFactory.WSWR,UnboundedLocalCache
interface LocalCache<K,V> extends java.util.concurrent.ConcurrentMap<K,V>An in-memory cache providing thread safety and atomicity guarantees. This interface provides an extension toConcurrentMapfor use with skeletal implementations.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description voidcleanUp()SeeCache.cleanUp().default Vcompute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)Vcompute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction, boolean recordMiss, boolean recordLoad)SeeConcurrentMap.compute(K, java.util.function.BiFunction<? super K, ? super V, ? extends V>).default VcomputeIfAbsent(K key, java.util.function.Function<? super K,? extends V> mappingFunction)VcomputeIfAbsent(K key, java.util.function.Function<? super K,? extends V> mappingFunction, boolean recordStats, boolean recordLoad)SeeConcurrentMap.computeIfAbsent(K, java.util.function.Function<? super K, ? extends V>).longestimatedSize()java.util.concurrent.Executorexecutor()Returns theExecutorused by this cache.TickerexpirationTicker()Returns theTickerused by this cache for expiration.java.util.Map<K,V>getAllPresent(java.lang.Iterable<?> keys)VgetIfPresent(java.lang.Object key, boolean recordStats)VgetIfPresentQuietly(java.lang.Object key, long[] writeTime)booleanhasRemovalListener()Returns whether this cache notifies when an entry is removed.booleanhasWriteTime()Returns whether the cache captures the write time of the entry.default voidinvalidateAll(java.lang.Iterable<?> keys)booleanisRecordingStats()Returns whether this cache has statistics enabled.voidnotifyRemoval(K key, V value, RemovalCause cause)Asynchronously sends a removal notification to the listener.Vput(K key, V value, boolean notifyWriter)RemovalListener<K,V>removalListener()Returns theRemovalListenerused by this cache or null if not used.default <T,U,R>
java.util.function.BiFunction<? super T,? super U,? extends R>statsAware(java.util.function.BiFunction<? super T,? super U,? extends R> remappingFunction)Decorates the remapping function to record statistics if enabled.default <T,U,R>
java.util.function.BiFunction<? super T,? super U,? extends R>statsAware(java.util.function.BiFunction<? super T,? super U,? extends R> remappingFunction, boolean recordMiss, boolean recordLoad)Decorates the remapping function to record statistics if enabled.default java.util.function.Function<? super K,? extends V>statsAware(java.util.function.Function<? super K,? extends V> mappingFunction, boolean recordLoad)Decorates the remapping function to record statistics if enabled.StatsCounterstatsCounter()Returns theStatsCounterused by this cache.TickerstatsTicker()Returns theTickerused by this cache for statistics.
-
-
-
Method Detail
-
isRecordingStats
boolean isRecordingStats()
Returns whether this cache has statistics enabled.
-
statsCounter
@Nonnull StatsCounter statsCounter()
Returns theStatsCounterused by this cache.
-
hasRemovalListener
boolean hasRemovalListener()
Returns whether this cache notifies when an entry is removed.
-
removalListener
@Nullable RemovalListener<K,V> removalListener()
Returns theRemovalListenerused by this cache or null if not used.
-
notifyRemoval
void notifyRemoval(@Nullable K key, @Nullable V value, RemovalCause cause)Asynchronously sends a removal notification to the listener.
-
executor
@Nonnull java.util.concurrent.Executor executor()
Returns theExecutorused by this cache.
-
hasWriteTime
boolean hasWriteTime()
Returns whether the cache captures the write time of the entry.
-
expirationTicker
@Nonnull Ticker expirationTicker()
Returns theTickerused by this cache for expiration.
-
estimatedSize
@Nonnegative long estimatedSize()
-
getIfPresent
@Nullable V getIfPresent(@Nonnull java.lang.Object key, boolean recordStats)
SeeCache.getIfPresent(Object). This method differs by accepting a parameter of whether to record the hit and miss statistics based on the success of this operation.
-
getIfPresentQuietly
@Nullable V getIfPresentQuietly(@Nonnull java.lang.Object key, @Nonnull long[] writeTime)
SeeCache.getIfPresent(Object). This method differs by not recording the access with the statistics nor the eviction policy, and populates the write time if known.
-
put
@Nullable V put(@Nonnull K key, @Nonnull V value, boolean notifyWriter)
SeeCache.put(Object, Object). This method differs by allowing the operation to not notify the writer when an entry was inserted or updated.
-
compute
default V compute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction)
-
compute
V compute(K key, java.util.function.BiFunction<? super K,? super V,? extends V> remappingFunction, boolean recordMiss, boolean recordLoad)
SeeConcurrentMap.compute(K, java.util.function.BiFunction<? super K, ? super V, ? extends V>). This method differs by accepting parameters indicating whether to record miss and load statistics based on the success of this operation.
-
computeIfAbsent
default V computeIfAbsent(K key, java.util.function.Function<? super K,? extends V> mappingFunction)
-
computeIfAbsent
V computeIfAbsent(K key, java.util.function.Function<? super K,? extends V> mappingFunction, boolean recordStats, boolean recordLoad)
SeeConcurrentMap.computeIfAbsent(K, java.util.function.Function<? super K, ? extends V>). This method differs by accepting parameters indicating how to record statistics.
-
invalidateAll
default void invalidateAll(java.lang.Iterable<?> keys)
-
cleanUp
void cleanUp()
SeeCache.cleanUp().
-
statsAware
default java.util.function.Function<? super K,? extends V> statsAware(java.util.function.Function<? super K,? extends V> mappingFunction, boolean recordLoad)
Decorates the remapping function to record statistics if enabled.
-
statsAware
default <T,U,R> java.util.function.BiFunction<? super T,? super U,? extends R> statsAware(java.util.function.BiFunction<? super T,? super U,? extends R> remappingFunction)
Decorates the remapping function to record statistics if enabled.
-
statsAware
default <T,U,R> java.util.function.BiFunction<? super T,? super U,? extends R> statsAware(java.util.function.BiFunction<? super T,? super U,? extends R> remappingFunction, boolean recordMiss, boolean recordLoad)Decorates the remapping function to record statistics if enabled.
-
-