javax.persistence

## 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:
    Java Persistence 2.0

- - ### Method Summary

    Methods
    Modifier and Type | Method and 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:
        Java Persistence 2.1

Copyright © 1996-2013, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.