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 org.springframework.cache.interceptor.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 org.springframework.cache.interceptor.CacheResolver
getCacheResolver
(javax.cache.annotation.CacheResolverFactory factory, javax.cache.annotation.CacheMethodDetails<?> details) protected abstract org.springframework.cache.interceptor.CacheResolver
Return the defaultCacheResolver
if none is set.protected abstract org.springframework.cache.interceptor.CacheResolver
Return the default exceptionCacheResolver
if none is set.protected abstract org.springframework.cache.interceptor.KeyGenerator
Return the defaultKeyGenerator
if none is set.protected org.springframework.cache.interceptor.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
protected org.springframework.cache.jcache.interceptor.CacheResultOperation createCacheResultOperation(Method method, @Nullable javax.cache.annotation.CacheDefaults defaults, javax.cache.annotation.CacheResult ann) -
createCachePutOperation
protected org.springframework.cache.jcache.interceptor.CachePutOperation createCachePutOperation(Method method, @Nullable javax.cache.annotation.CacheDefaults defaults, javax.cache.annotation.CachePut ann) -
createCacheRemoveOperation
protected org.springframework.cache.jcache.interceptor.CacheRemoveOperation createCacheRemoveOperation(Method method, @Nullable javax.cache.annotation.CacheDefaults defaults, javax.cache.annotation.CacheRemove ann) -
createCacheRemoveAllOperation
protected org.springframework.cache.jcache.interceptor.CacheRemoveAllOperation createCacheRemoveAllOperation(Method method, @Nullable javax.cache.annotation.CacheDefaults defaults, javax.cache.annotation.CacheRemoveAll ann) -
getCacheResolver
protected org.springframework.cache.interceptor.CacheResolver getCacheResolver(@Nullable javax.cache.annotation.CacheResolverFactory factory, javax.cache.annotation.CacheMethodDetails<?> details) -
getExceptionCacheResolver
protected org.springframework.cache.interceptor.CacheResolver getExceptionCacheResolver(@Nullable javax.cache.annotation.CacheResolverFactory factory, javax.cache.annotation.CacheMethodDetails<javax.cache.annotation.CacheResult> details) -
determineCacheResolverFactory
@Nullable protected javax.cache.annotation.CacheResolverFactory determineCacheResolverFactory(@Nullable javax.cache.annotation.CacheDefaults defaults, Class<? extends javax.cache.annotation.CacheResolverFactory> candidate) -
determineKeyGenerator
protected org.springframework.cache.interceptor.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
protected abstract org.springframework.cache.interceptor.CacheResolver getDefaultCacheResolver()Return the defaultCacheResolver
if none is set. -
getDefaultExceptionCacheResolver
protected abstract org.springframework.cache.interceptor.CacheResolver getDefaultExceptionCacheResolver()Return the default exceptionCacheResolver
if none is set. -
getDefaultKeyGenerator
protected abstract org.springframework.cache.interceptor.KeyGenerator getDefaultKeyGenerator()Return the defaultKeyGenerator
if none is set.
-