Class InMemoryCacheImpl

java.lang.Object
org.nuxeo.ecm.core.cache.AbstractCache
org.nuxeo.ecm.core.cache.InMemoryCacheImpl
All Implemented Interfaces:
Cache, CacheManagement

public class InMemoryCacheImpl extends AbstractCache
Default in memory implementation for cache management based on guava
Since:
6.0
  • Field Details

  • Constructor Details

  • Method Details

    • get

      public Serializable get(String key)
      Description copied from interface: Cache
      Get method to retrieve value from cache Must not raise exception if the key is null, but return null
      Parameters:
      key - the string key
      Returns:
      the Serializable value, return null if the key does not exist or if the key is null
    • keySet

      public Set<String> keySet()
      Description copied from interface: Cache
      Returns the set of all keys stored in the cache.
      Returns:
      the Set of all keys
    • invalidate

      public void invalidate(String key)
      Description copied from interface: Cache
      Invalidate the given key
      Parameters:
      key - , the key to remove from the cache, if null will do nothing
    • invalidateLocal

      public void invalidateLocal(String key)
      Description copied from interface: CacheManagement
      Invalidates the given key locally. Does not propagate invalidations.
      Parameters:
      key - the key to remove from the cache
    • invalidateAll

      public void invalidateAll()
      Description copied from interface: Cache
      Invalidate all key-value stored in the cache
    • invalidateLocalAll

      public void invalidateLocalAll()
      Description copied from interface: CacheManagement
      Invalidates all keys locally. Does not propagate invalidations.
    • put

      public void put(String key, Serializable value)
      Description copied from interface: Cache
      Put method to store a Serializable value
      Parameters:
      key - the string key, if null, the value will not be stored
      value - the value to store, if null, the value will not be stored
    • putLocal

      public void putLocal(String key, Serializable value)
      Description copied from interface: CacheManagement
      Stores a Serializable value into the cache locally. Does not propagate invalidations.
      Parameters:
      key - the key
      value - the value
    • hasEntry

      public boolean hasEntry(String key)
      Description copied from interface: Cache
      Check if a given key is present inside the cache. Compared to the get() method, this method must not update internal cache state and change TTL
      Parameters:
      key - the string key
      Returns:
      true if a corresponding entry exists, false otherwise
    • getSize

      public long getSize()
      Description copied from interface: CacheManagement
      Returns this cache size (approximate number of entries), or -1 if the number of entries is unknown or too expensive to compute.
      Returns:
      the approximate number of entries, or -1