Class AbstractCache<K,V>

java.lang.Object
com.google.common.cache.AbstractCache<K,V>
All Implemented Interfaces:
Cache<K,V>
Direct Known Subclasses:
AbstractLoadingCache

@Beta @GwtCompatible @Deprecated(since="2022-12-01") public abstract class AbstractCache<K,V> extends Object implements Cache<K,V>
Deprecated.
The Google Guava Core Libraries are deprecated and will not be part of the AEM SDK after April 2023
This class provides a skeletal implementation of the Cache interface to minimize the effort required to implement this interface.

To implement a cache, the programmer needs only to extend this class and provide an implementation for the put(K, V) and Cache.getIfPresent(java.lang.Object) methods. getAllPresent(java.lang.Iterable<?>) is implemented in terms of Cache.getIfPresent(java.lang.Object); putAll(java.util.Map<? extends K, ? extends V>) is implemented in terms of put(K, V), invalidateAll(Iterable) is implemented in terms of invalidate(java.lang.Object). The method cleanUp() is a no-op. All other methods throw an UnsupportedOperationException.

Since:
10.0
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final class 
    Deprecated.
    The Google Guava Core Libraries are deprecated and will not be part of the AEM SDK after April 2023
    static interface 
    Deprecated.
    The Google Guava Core Libraries are deprecated and will not be part of the AEM SDK after April 2023
  • Method Summary

    Modifier and Type
    Method
    Description
    Deprecated.
    Returns a view of the entries stored in this cache as a thread-safe map.
    void
    Deprecated.
    Performs any pending maintenance operations needed by the cache.
    get(K key, Callable<? extends V> valueLoader)
    Deprecated.
    Returns the value associated with key in this cache, obtaining that value from valueLoader if necessary.
    Deprecated.
    This implementation of getAllPresent lacks any insight into the internal cache data structure, and is thus forced to return the query keys instead of the cached keys.
    void
    Deprecated.
    Discards any cached value for key key.
    void
    Deprecated.
    Discards all entries in the cache.
    void
    Deprecated.
    Discards any cached values for keys keys.
    void
    put(K key, V value)
    Deprecated.
    Associates value with key in this cache.
    void
    putAll(Map<? extends K,? extends V> m)
    Deprecated.
    Copies all of the mappings from the specified map to the cache.
    long
    Deprecated.
    Returns the approximate number of entries in this cache.
    Deprecated.
    Returns a current snapshot of this cache's cumulative statistics.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface com.google.common.cache.Cache

    getIfPresent
  • Method Details

    • get

      public V get(K key, Callable<? extends V> valueLoader) throws ExecutionException
      Deprecated.
      Description copied from interface: Cache
      Returns the value associated with key in this cache, obtaining that value from valueLoader if necessary. No observable state associated with this cache is modified until loading completes. This method provides a simple substitute for the conventional "if cached, return; otherwise create, cache and return" pattern.

      Warning: as with CacheLoader.load(K), valueLoader must not return null; it may either return a non-null value or throw an exception.

      Specified by:
      get in interface Cache<K,V>
      Throws:
      ExecutionException - if a checked exception was thrown while loading the value
      Since:
      11.0
    • getAllPresent

      public ImmutableMap<K,V> getAllPresent(Iterable<?> keys)
      Deprecated.
      This implementation of getAllPresent lacks any insight into the internal cache data structure, and is thus forced to return the query keys instead of the cached keys. This is only possible with an unsafe cast which requires keys to actually be of type K. Returns a map of the values associated with keys in this cache. The returned map will only contain entries which are already present in the cache.
      Specified by:
      getAllPresent in interface Cache<K,V>
      Since:
      11.0
    • put

      public void put(K key, V value)
      Deprecated.
      Description copied from interface: Cache
      Associates value with key in this cache. If the cache previously contained a value associated with key, the old value is replaced by value.

      Prefer Cache.get(Object, Callable) when using the conventional "if cached, return; otherwise create, cache and return" pattern.

      Specified by:
      put in interface Cache<K,V>
      Since:
      11.0
    • putAll

      public void putAll(Map<? extends K,? extends V> m)
      Deprecated.
      Description copied from interface: Cache
      Copies all of the mappings from the specified map to the cache. The effect of this call is equivalent to that of calling put(k, v) on this map once for each mapping from key k to value v in the specified map. The behavior of this operation is undefined if the specified map is modified while the operation is in progress.
      Specified by:
      putAll in interface Cache<K,V>
      Since:
      12.0
    • cleanUp

      public void cleanUp()
      Deprecated.
      Description copied from interface: Cache
      Performs any pending maintenance operations needed by the cache. Exactly which activities are performed -- if any -- is implementation-dependent.
      Specified by:
      cleanUp in interface Cache<K,V>
    • size

      public long size()
      Deprecated.
      Description copied from interface: Cache
      Returns the approximate number of entries in this cache.
      Specified by:
      size in interface Cache<K,V>
    • invalidate

      public void invalidate(Object key)
      Deprecated.
      Description copied from interface: Cache
      Discards any cached value for key key.
      Specified by:
      invalidate in interface Cache<K,V>
    • invalidateAll

      public void invalidateAll(Iterable<?> keys)
      Deprecated.
      Description copied from interface: Cache
      Discards any cached values for keys keys.
      Specified by:
      invalidateAll in interface Cache<K,V>
      Since:
      11.0
    • invalidateAll

      public void invalidateAll()
      Deprecated.
      Description copied from interface: Cache
      Discards all entries in the cache.
      Specified by:
      invalidateAll in interface Cache<K,V>
    • stats

      public CacheStats stats()
      Deprecated.
      Description copied from interface: Cache
      Returns a current snapshot of this cache's cumulative statistics. All stats are initialized to zero, and are monotonically increasing over the lifetime of the cache.
      Specified by:
      stats in interface Cache<K,V>
    • asMap

      public ConcurrentMap<K,V> asMap()
      Deprecated.
      Description copied from interface: Cache
      Returns a view of the entries stored in this cache as a thread-safe map. Modifications made to the map directly affect the cache.
      Specified by:
      asMap in interface Cache<K,V>