Class AnnotationJCacheOperationSource
java.lang.Object
org.springframework.cache.jcache.interceptor.AbstractFallbackJCacheOperationSource
org.springframework.cache.jcache.interceptor.AnnotationJCacheOperationSource
- All Implemented Interfaces:
JCacheOperationSource
- Direct Known Subclasses:
DefaultJCacheOperationSource
Implementation of the
JCacheOperationSource
interface that reads
the JSR-107 CacheResult
, CachePut
, CacheRemove
and
CacheRemoveAll
annotations.- Since:
- 4.1
- Author:
- Stephane Nicoll
-
Field Summary
Fields inherited from class org.springframework.cache.jcache.interceptor.AbstractFallbackJCacheOperationSource
logger
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected org.springframework.cache.jcache.interceptor.CachePutOperation
createCachePutOperation
(Method method, javax.cache.annotation.CacheDefaults defaults, javax.cache.annotation.CachePut ann) protected org.springframework.cache.jcache.interceptor.CacheRemoveAllOperation
createCacheRemoveAllOperation
(Method method, javax.cache.annotation.CacheDefaults defaults, javax.cache.annotation.CacheRemoveAll ann) protected org.springframework.cache.jcache.interceptor.CacheRemoveOperation
createCacheRemoveOperation
(Method method, javax.cache.annotation.CacheDefaults defaults, javax.cache.annotation.CacheRemove ann) protected org.springframework.cache.jcache.interceptor.CacheResultOperation
createCacheResultOperation
(Method method, javax.cache.annotation.CacheDefaults defaults, javax.cache.annotation.CacheResult ann) protected String
determineCacheName
(Method method, javax.cache.annotation.CacheDefaults defaults, String candidate) protected javax.cache.annotation.CacheResolverFactory
determineCacheResolverFactory
(javax.cache.annotation.CacheDefaults defaults, Class<? extends javax.cache.annotation.CacheResolverFactory> candidate) protected KeyGenerator
determineKeyGenerator
(javax.cache.annotation.CacheDefaults defaults, Class<? extends javax.cache.annotation.CacheKeyGenerator> candidate) protected JCacheOperation<?>
findCacheOperation
(Method method, Class<?> targetType) Subclasses need to implement this to return the caching operation for the given method, if any.protected String
generateDefaultCacheName
(Method method) Generate a default cache name for the specifiedMethod
.protected abstract <T> T
Locate or create an instance of the specified cache strategytype
.protected javax.cache.annotation.CacheDefaults
getCacheDefaults
(Method method, Class<?> targetType) protected CacheResolver
getCacheResolver
(javax.cache.annotation.CacheResolverFactory factory, javax.cache.annotation.CacheMethodDetails<?> details) protected abstract CacheResolver
Return the defaultCacheResolver
if none is set.protected abstract CacheResolver
Return the default exceptionCacheResolver
if none is set.protected abstract KeyGenerator
Return the defaultKeyGenerator
if none is set.protected CacheResolver
getExceptionCacheResolver
(javax.cache.annotation.CacheResolverFactory factory, javax.cache.annotation.CacheMethodDetails<javax.cache.annotation.CacheResult> details) Methods inherited from class org.springframework.cache.jcache.interceptor.AbstractFallbackJCacheOperationSource
allowPublicMethodsOnly, getCacheOperation
-
Constructor Details
-
AnnotationJCacheOperationSource
public AnnotationJCacheOperationSource()
-
-
Method Details
-
findCacheOperation
Description copied from class:AbstractFallbackJCacheOperationSource
Subclasses need to implement this to return the caching operation for the given method, if any.- Specified by:
findCacheOperation
in classAbstractFallbackJCacheOperationSource
- Parameters:
method
- the method to retrieve the operation fortargetType
- the target class- Returns:
- the cache operation associated with this method
(or
null
if none)
-
getCacheDefaults
-
createCacheResultOperation
-
createCachePutOperation
-
createCacheRemoveOperation
-
createCacheRemoveAllOperation
-
getCacheResolver
protected CacheResolver getCacheResolver(@Nullable javax.cache.annotation.CacheResolverFactory factory, javax.cache.annotation.CacheMethodDetails<?> details) -
getExceptionCacheResolver
protected CacheResolver getExceptionCacheResolver(@Nullable javax.cache.annotation.CacheResolverFactory factory, javax.cache.annotation.CacheMethodDetails<javax.cache.annotation.CacheResult> details) -
determineCacheResolverFactory
-
determineKeyGenerator
protected KeyGenerator determineKeyGenerator(@Nullable javax.cache.annotation.CacheDefaults defaults, Class<? extends javax.cache.annotation.CacheKeyGenerator> candidate) -
determineCacheName
-
generateDefaultCacheName
Generate a default cache name for the specifiedMethod
.- Parameters:
method
- the annotated method- Returns:
- the default cache name, according to JSR-107
-
getBean
Locate or create an instance of the specified cache strategytype
.- Parameters:
type
- the type of the bean to manage- Returns:
- the required bean
-
getDefaultCacheResolver
Return the defaultCacheResolver
if none is set. -
getDefaultExceptionCacheResolver
Return the default exceptionCacheResolver
if none is set. -
getDefaultKeyGenerator
Return the defaultKeyGenerator
if none is set.
-