Interface Cache


  • public interface Cache
    Interface used to interact with the second-level cache. If a cache is not in use, the methods of this interface have no effect, except for contains, which returns false.
    Since:
    2.0
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      boolean contains​(Class cls, Object primaryKey)
      Whether the cache contains data for the given entity.
      void evict​(Class cls)
      Remove the data for entities of the specified class (and its subclasses) from the cache.
      void evict​(Class cls, Object primaryKey)
      Remove the data for the given entity from the cache.
      void evictAll()
      Clear the cache.
      <T> T unwrap​(Class<T> cls)
      Return an object of the specified type to allow access to the provider-specific API.
    • Method Detail

      • contains

        boolean contains​(Class cls,
                         Object primaryKey)
        Whether the cache contains data for the given entity.
        Parameters:
        cls - entity class
        primaryKey - primary key
        Returns:
        boolean indicating whether the entity is in the cache
      • evict

        void evict​(Class cls,
                   Object primaryKey)
        Remove the data for the given entity from the cache.
        Parameters:
        cls - entity class
        primaryKey - primary key
      • evict

        void evict​(Class cls)
        Remove the data for entities of the specified class (and its subclasses) from the cache.
        Parameters:
        cls - entity class
      • evictAll

        void evictAll()
        Clear the cache.
      • unwrap

        <T> T unwrap​(Class<T> cls)
        Return an object of the specified type to allow access to the provider-specific API. If the provider's Cache implementation does not support the specified class, the PersistenceException is thrown.
        Parameters:
        cls - the class of the object to be returned. This is normally either the underlying Cache implementation class or an interface that it implements.
        Returns:
        an instance of the specified class
        Throws:
        PersistenceException - if the provider does not support the call
        Since:
        2.1