Interface JCacheOperationSource

All Known Implementing Classes:
AbstractFallbackJCacheOperationSource, AnnotationJCacheOperationSource, DefaultJCacheOperationSource

public interface JCacheOperationSource
Interface used by JCacheInterceptor. Implementations know how to source cache operation attributes from standard JSR-107 annotations.
Since:
4.1
Author:
Stephane Nicoll, Juergen Hoeller
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    getCacheOperation(Method method, @Nullable Class<?> targetClass)
    Return the cache operations for this method, or null if the method contains no JSR-107 related metadata.
    default boolean
    hasCacheOperation(Method method, @Nullable Class<?> targetClass)
    Determine whether there is a JSR-107 cache operation for the given method.
    default boolean
    isCandidateClass(Class<?> targetClass)
    Determine whether the given class is a candidate for cache operations in the metadata format of this JCacheOperationSource.
  • Method Details

    • isCandidateClass

      default boolean isCandidateClass(Class<?> targetClass)
      Determine whether the given class is a candidate for cache operations in the metadata format of this JCacheOperationSource.

      If this method returns false, the methods on the given class will not get traversed for getCacheOperation(Method, Class) introspection. Returning false is therefore an optimization for non-affected classes, whereas true simply means that the class needs to get fully introspected for each method on the given class individually.

      Parameters:
      targetClass - the class to introspect
      Returns:
      false if the class is known to have no cache operation metadata at class or method level; true otherwise. The default implementation returns true, leading to regular introspection.
      Since:
      6.2
      See Also:
    • hasCacheOperation

      default boolean hasCacheOperation(Method method, @Nullable Class<?> targetClass)
      Determine whether there is a JSR-107 cache operation for the given method.
      Parameters:
      method - the method to introspect
      targetClass - the target class (can be null, in which case the declaring class of the method must be used)
      Since:
      6.2
      See Also:
    • getCacheOperation

      @Nullable JCacheOperation<?> getCacheOperation(Method method, @Nullable Class<?> targetClass)
      Return the cache operations for this method, or null if the method contains no JSR-107 related metadata.
      Parameters:
      method - the method to introspect
      targetClass - the target class (can be null, in which case the declaring class of the method must be used)
      Returns:
      the cache operation for this method, or null if none found