Interface CacheInvocationContext<A extends Annotation>
- Type Parameters:
A- The type of annotation this context information is for. One ofCacheResult,CachePut,CacheRemove, orCacheRemoveAll.
- All Superinterfaces:
CacheMethodDetails<A>
- All Known Subinterfaces:
CacheKeyInvocationContext<A>
Runtime information about an intercepted method invocation for a method
annotated with
CacheResult, CachePut, CacheRemove,
or CacheRemoveAll
Used with CacheResolver.resolveCache(CacheInvocationContext) to
determine the Cache to use at runtime for the method
invocation.
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionReturns a clone of the array of all method parameters.<T> TReturn an object of the specified type to allow access to the provider-specific API.Methods inherited from interface CacheMethodDetails
getAnnotations, getCacheAnnotation, getCacheName, getMethod
-
Method Details
-
getTarget
Object getTarget()- Returns:
- The object the intercepted method was invoked on.
-
getAllParameters
CacheInvocationParameter[] getAllParameters()Returns a clone of the array of all method parameters.- Returns:
- An array of all parameters for the annotated method
-
unwrap
Return an object of the specified type to allow access to the provider-specific API. If the provider's implementation does not support the specified class, theIllegalArgumentExceptionis thrown.- Type Parameters:
T- The type of the expected underlyingCacheimplementation.- Parameters:
cls- the class of the object to be returned. This is normally either the underlying implementation class or an interface that it implements.- Returns:
- an instance of the specified class
- Throws:
IllegalArgumentException- if the provider doesn't support the specified class.
-