Package io.micronaut.cache.jcache
Class JCacheSyncCache
- java.lang.Object
-
- io.micronaut.cache.jcache.JCacheSyncCache
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
JCacheSyncCache(javax.cache.Cache<?,?> nativeCache, io.micronaut.core.convert.ConversionService<?> conversionService, java.util.concurrent.ExecutorService ioExecutor)
Default constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> java.util.Optional<T>
get(java.lang.Object key, io.micronaut.core.type.Argument<T> requiredType)
Resolve the given value for the given key.<T> T
get(java.lang.Object key, io.micronaut.core.type.Argument<T> requiredType, java.util.function.Supplier<T> supplier)
Resolve the given value for the given key.java.util.concurrent.ExecutorService
getExecutorService()
java.lang.String
getName()
javax.cache.Cache<?,?>
getNativeCache()
void
invalidate(java.lang.Object key)
Invalidate the value for the given key.void
invalidateAll()
Invalidate all cached values within this cache.void
put(java.lang.Object key, java.lang.Object value)
Cache the specified value using the specified key.<T> java.util.Optional<T>
putIfAbsent(java.lang.Object key, T value)
Cache the specified value using the specified key if it is not already present.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.micronaut.cache.Cache
getCacheInfo
-
Methods inherited from interface io.micronaut.cache.SyncCache
async, get, get, putIfAbsent
-
-
-
-
Constructor Detail
-
JCacheSyncCache
protected JCacheSyncCache(@NonNull javax.cache.Cache<?,?> nativeCache, io.micronaut.core.convert.ConversionService<?> conversionService, java.util.concurrent.ExecutorService ioExecutor)
Default constructor.- Parameters:
nativeCache
- The native cacheconversionService
- The conversion serviceioExecutor
- The IO executor
-
-
Method Detail
-
getExecutorService
public java.util.concurrent.ExecutorService getExecutorService()
- Specified by:
getExecutorService
in interfaceSyncCache<javax.cache.Cache>
- Returns:
- The executor service used to construct the default asynchronous cache.
-
get
public <T> java.util.Optional<T> get(java.lang.Object key, io.micronaut.core.type.Argument<T> requiredType)
Description copied from interface:SyncCache
Resolve the given value for the given key.
-
get
public <T> T get(@NonNull java.lang.Object key, @NonNull io.micronaut.core.type.Argument<T> requiredType, @NonNull java.util.function.Supplier<T> supplier)
Description copied from interface:SyncCache
Resolve the given value for the given key. If the value is not found the specifiedSupplier
will be invoked and the return value cached.- Specified by:
get
in interfaceSyncCache<javax.cache.Cache>
- Type Parameters:
T
- The concrete type- Parameters:
key
- The cache keyrequiredType
- The required typesupplier
- The supplier that should be invoked if the value is not found- Returns:
- An optional containing the value if it exists and is able to be converted to the specified type
-
putIfAbsent
@NonNull public <T> java.util.Optional<T> putIfAbsent(@NonNull java.lang.Object key, @NonNull T value)
Description copied from interface:SyncCache
Cache the specified value using the specified key if it is not already present.
- Specified by:
putIfAbsent
in interfaceSyncCache<javax.cache.Cache>
- Type Parameters:
T
- The concrete type- Parameters:
key
- the key with which the specified value is to be associatedvalue
- the value to be associated with the specified key- Returns:
- An optional of the existing value or
Optional.empty()
if the specified value parameter was cached
-
put
public void put(java.lang.Object key, java.lang.Object value)
Description copied from interface:SyncCache
Cache the specified value using the specified key.
-
invalidate
public void invalidate(java.lang.Object key)
Description copied from interface:SyncCache
Invalidate the value for the given key.- Specified by:
invalidate
in interfaceSyncCache<javax.cache.Cache>
- Parameters:
key
- The key to invalid
-
invalidateAll
public void invalidateAll()
Description copied from interface:SyncCache
Invalidate all cached values within this cache.- Specified by:
invalidateAll
in interfaceSyncCache<javax.cache.Cache>
-
getName
public java.lang.String getName()
-
getNativeCache
public javax.cache.Cache<?,?> getNativeCache()
- Specified by:
getNativeCache
in interfaceCache<javax.cache.Cache>
- Returns:
- The native cache implementation
-
-