org.springframework.cache.jcache

## Class JCacheCache

- java.lang.Object
- - org.springframework.cache.jcache.JCacheCache

- All Implemented Interfaces:
    Cache

      public class JCacheCache
      extends Object
      implements Cache

  `Cache` implementation on top of a `Cache` instance.
  Since:
    3.2
  Author:
    Juergen Hoeller

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.springframework.cache.Cache

      `Cache.ValueWrapper`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JCacheCache(javax.cache.Cache<?,?> jcache)` Create an `JCacheCache` instance.
    `JCacheCache(javax.cache.Cache<?,?> jcache, boolean allowNullValues)` Create an `JCacheCache` instance.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `clear()` Remove all mappings from the cache.
    `void` | `evict(Object key)` Evict the mapping for this key from this cache if it is present.
    `protected Object` | `fromStoreValue(Object storeValue)` Convert the given value from the internal store to a user value returned from the get method (adapting `null`).
    `Cache.ValueWrapper` | `get(Object key)` Return the value to which this cache maps the specified key.
    `String` | `getName()` Return the cache name.
    `javax.cache.Cache<?,?>` | `getNativeCache()` Return the the underlying native cache provider.
    `boolean` | `isAllowNullValues()`
    `void` | `put(Object key, Object value)` Associate the specified value with the specified key in this cache.
    `protected Object` | `toStoreValue(Object userValue)` Convert the given user value, as passed into the put method, to a value in the internal store (adapting `null`).

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### JCacheCache

          public JCacheCache(javax.cache.Cache<?,?> jcache)

      Create an `JCacheCache` instance.
      Parameters:
        `jcache` - backing JCache Cache instance

    - #### JCacheCache

          public JCacheCache(javax.cache.Cache<?,?> jcache,
                     boolean allowNullValues)

      Create an `JCacheCache` instance.
      Parameters:
        `jcache` - backing JCache Cache instance
        `allowNullValues` - whether to accept and convert null values for this cache

  - ### Method Detail

    - #### getName

          public String getName()

      Description copied from interface: `Cache`
      Return the cache name.
      Specified by:
        `getName` in interface `Cache`

    - #### getNativeCache

          public javax.cache.Cache<?,?> getNativeCache()

      Description copied from interface: `Cache`
      Return the the underlying native cache provider.
      Specified by:
        `getNativeCache` in interface `Cache`

    - #### isAllowNullValues

          public boolean isAllowNullValues()

    - #### get

          public Cache.ValueWrapper get(Object key)

      Description copied from interface: `Cache`
      Return the value to which this cache maps the specified key. Returns `null` if the cache contains no mapping for this key.
      Specified by:
        `get` in interface `Cache`
      Parameters:
        `key` - key whose associated value is to be returned.
      Returns:
        the value to which this cache maps the specified key, or `null` if the cache contains no mapping for this key

    - #### put

          public void put(Object key,
                 Object value)

      Description copied from interface: `Cache`
      Associate the specified value with the specified key in this cache.

      If the cache previously contained a mapping for this key, the old value is replaced by the specified value.

      Specified by:
        `put` in interface `Cache`
      Parameters:
        `key` - the key with which the specified value is to be associated
        `value` - the value to be associated with the specified key

    - #### evict

          public void evict(Object key)

      Description copied from interface: `Cache`
      Evict the mapping for this key from this cache if it is present.
      Specified by:
        `evict` in interface `Cache`
      Parameters:
        `key` - the key whose mapping is to be removed from the cache

    - #### clear

          public void clear()

      Description copied from interface: `Cache`
      Remove all mappings from the cache.
      Specified by:
        `clear` in interface `Cache`

    - #### fromStoreValue

          protected Object fromStoreValue(Object storeValue)

      Convert the given value from the internal store to a user value returned from the get method (adapting `null`).
      Parameters:
        `storeValue` - the store value
      Returns:
        the value to return to the user

    - #### toStoreValue

          protected Object toStoreValue(Object userValue)

      Convert the given user value, as passed into the put method, to a value in the internal store (adapting `null`).
      Parameters:
        `userValue` - the given user value
      Returns:
        the value to store