Interface JpaCache

All Superinterfaces:
jakarta.persistence.Cache

public interface JpaCache extends jakarta.persistence.Cache
Extends JPA Cache interface with additional EclipseLink API.
Author:
James Sutherland
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    ADVANCED: Resets the entire Object cache, and the Query cache.
    void
    clear(Class cls)
    ADVANCED: Resets the cache for only the instances of the given Class type.
    void
    Clear all the query results caches.
    void
    clearQueryCache(Class entityClass)
    Clear all named query results cache associated with entity class.
    void
    Clear the named query results cache associated with the query name.
    boolean
    contains(Object object)
    Returns true if the cache contains an Object with the same id and Class type of the given object.
    void
    evict(Class classToEvict, Object id, boolean invalidateInCluster)
    Sets the object of the class and id to be invalid in the cache.
    void
    evict(Object object)
    Sets an Object to be invalid in the cache.
    void
    evict(Object object, boolean invalidateInCluster)
    Sets an Object to be invalid in the cache.
    getId(Object object)
    Returns the object's Id.
    Returns the Object from the cache map with the id and Class type.
    boolean
    isValid(Class cls, Object id)
    Returns true if the Object with the id and Class type is valid in the cache.
    boolean
    isValid(Object object)
    Returns true if the Object with the same id and Class type of the the given Object is valid in the cache.
    void
    Used to print all the Objects in the cache.
    void
    print(Class cls)
    Used to print all the Objects in the cache of the Class type.
    void
    Used to print all the currently locked cache keys in the cache.
    putObject(Object object)
    ADVANCED: Puts the given Object into the cache.
    ADVANCED: Removes the Object with the id and Class type from the cache.
    ADVANCED: Removes the Object from the cache.
    long
    Returns the remaining life of the given Object (in milliseconds).
    void
    This can be used to help debugging an Object identity problem.

    Methods inherited from interface jakarta.persistence.Cache

    contains, evict, evict, evictAll, unwrap
  • Method Details

    • clear

      void clear()
      ADVANCED: Resets the entire Object cache, and the Query cache.

      NOTE: Be careful using this method. This method blows away both this session's and its parent's caches. This includes the server cache or any other cache. This throws away any Objects that have been read in. Extreme caution should be used before doing this because Object identity will no longer be maintained for any Objects currently read in. This should only be called if the application knows that it no longer has references to Objects held in the cache.

    • clear

      void clear(Class cls)
      ADVANCED: Resets the cache for only the instances of the given Class type. For inheritance the user must make sure that they only use the root class, clearing a subclass cache is not allowed (as they share their parents cache).

      NOTE: Caution must be used in doing this to ensure that the Objects within the cache are not referenced from other Objects of other classes or from the application.

    • clearQueryCache

      void clearQueryCache()
      Clear all the query results caches.
    • clearQueryCache

      void clearQueryCache(String queryName)
      Clear the named query results cache associated with the query name.
    • clearQueryCache

      void clearQueryCache(Class entityClass)
      Clear all named query results cache associated with entity class.
    • timeToLive

      long timeToLive(Object object)
      Returns the remaining life of the given Object (in milliseconds). This method is associated with use of cache invalidation feature and returns the difference between the next expiry time of the Object and its read time. The method will return 0 for invalidated Objects.
    • isValid

      boolean isValid(Object object)
      Returns true if the Object with the same id and Class type of the the given Object is valid in the cache.
    • isValid

      boolean isValid(Class cls, Object id)
      Returns true if the Object with the id and Class type is valid in the cache.
    • print

      void print()
      Used to print all the Objects in the cache. The output of this method will be logged to this persistence unit's SessionLog at SEVERE level.
    • print

      void print(Class cls)
      Used to print all the Objects in the cache of the Class type. The output of this method will be logged to this persistence unit's SessionLog at SEVERE level.
    • printLocks

      void printLocks()
      Used to print all the currently locked cache keys in the cache. The output of this method will be logged to this persistence unit's SessionLog at SEVERE level.
    • validate

      void validate()
      This can be used to help debugging an Object identity problem. An Object identity problem is when an Object in the cache references an Object that is not in the cache. This method will validate that all cached Objects are in a correct state.
    • getObject

      Object getObject(Class cls, Object id)
      Returns the Object from the cache map with the id and Class type.
    • putObject

      Object putObject(Object object)
      ADVANCED: Puts the given Object into the cache. This is a very advanced method, and caution should be used in adding objects to the cache as other objects may have relationships to previous object, or this object may have relationships to other objects.
    • removeObject

      Object removeObject(Object object)
      ADVANCED: Removes the Object from the cache.

      NOTE: Caution should be used when calling to avoid violating Object identity. The application should only call this if its known that no references to the Object exist.

    • removeObject

      Object removeObject(Class cls, Object id)
      ADVANCED: Removes the Object with the id and Class type from the cache.

      NOTE: Caution should be used when calling to avoid violating Object identity. The application should only call this if its known that no references to the Object exist.

    • contains

      boolean contains(Object object)
      Returns true if the cache contains an Object with the same id and Class type of the given object.
    • evict

      void evict(Object object)
      Sets an Object to be invalid in the cache.
    • evict

      void evict(Object object, boolean invalidateInCluster)
      Sets an Object to be invalid in the cache. If true is passed, the object is also invalidated across cache coordination. Cache coordination must be enabled for this to have an affect.
    • evict

      void evict(Class classToEvict, Object id, boolean invalidateInCluster)
      Sets the object of the class and id to be invalid in the cache. If true is passed, the object is also invalidated across cache coordination. Cache coordination must be enabled for this to have an affect.
    • getId

      Object getId(Object object)
      Returns the object's Id.