public class AnnotationAsyncExecutionInterceptor extends AsyncExecutionInterceptor
AsyncExecutionInterceptor that delegates method execution to
an Executor based on the Async annotation. Specifically designed to
support use of Async.value() executor qualification mechanism introduced in
Spring 3.1.2. Supports detecting qualifier metadata via @Async at the method or
declaring class level. See getExecutorQualifier(Method) for details.Async,
AsyncAnnotationAdvisorHIGHEST_PRECEDENCE, LOWEST_PRECEDENCE| Constructor and Description |
|---|
AnnotationAsyncExecutionInterceptor(Executor defaultExecutor)
Create a new
AnnotationAsyncExecutionInterceptor with the given executor. |
| Modifier and Type | Method and Description |
|---|---|
protected String |
getExecutorQualifier(Method method)
Return the qualifier or bean name of the executor to be used when executing the
given method, specified via
Async.value() at the method or declaring
class level. |
getOrder, invokedetermineAsyncExecutor, setBeanFactory, setExecutorpublic AnnotationAsyncExecutionInterceptor(Executor defaultExecutor)
AnnotationAsyncExecutionInterceptor with the given executor.defaultExecutor - the executor to be used by default if no more specific
executor has been qualified at the method level using Async.value()protected String getExecutorQualifier(Method method)
Async.value() at the method or declaring
class level. If @Async is specified at both the method and class level, the
method's #value takes precedence (even if empty string, indicating that
the default executor should be used preferentially).getExecutorQualifier in class AsyncExecutionInterceptormethod - the method to inspect for executor qualifier metadataAsyncExecutionAspectSupport.determineAsyncExecutor(Method)