| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.springframework.aop.framework.ProxyConfig
org.springframework.scheduling.annotation.AsyncAnnotationBeanPostProcessor
public class AsyncAnnotationBeanPostProcessor
Bean post-processor that automatically applies asynchronous invocation
 behavior to any bean that carries the Async annotation at class or
 method-level by adding a corresponding AsyncAnnotationAdvisor to the
 exposed proxy (either an existing AOP proxy or a newly generated proxy that
 implements all of the target's interfaces).
 
The TaskExecutor responsible for the asynchronous execution may
 be provided as well as the annotation type that indicates a method should be
 invoked asynchronously. If no annotation type is specified, this post-
 processor will detect both Spring's @Async annotation as well
 as the EJB 3.1 javax.ejb.Asynchronous annotation.
Async, 
AsyncAnnotationAdvisor, 
Serialized Form| Field Summary | 
|---|
| Fields inherited from interface org.springframework.core.Ordered | 
|---|
| HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE | 
| Constructor Summary | |
|---|---|
| AsyncAnnotationBeanPostProcessor() | |
| Method Summary | |
|---|---|
|  void | afterPropertiesSet()Invoked by a BeanFactory after it has set all bean properties supplied (and satisfied BeanFactoryAware and ApplicationContextAware). | 
|  int | getOrder()Return the order value of this object, with a higher value meaning greater in terms of sorting. | 
|  Object | postProcessAfterInitialization(Object bean,
                               String beanName)Apply this BeanPostProcessor to the given new bean instance after any bean initialization callbacks (like InitializingBean's afterPropertiesSetor a custom init-method). | 
|  Object | postProcessBeforeInitialization(Object bean,
                                String beanName)Apply this BeanPostProcessor to the given new bean instance before any bean initialization callbacks (like InitializingBean's afterPropertiesSetor a custom init-method). | 
|  void | setAsyncAnnotationType(Class<? extends Annotation> asyncAnnotationType)Set the 'async' annotation type to be detected at either class or method level. | 
|  void | setBeanClassLoader(ClassLoader classLoader)Callback that supplies the bean class loaderto
 a bean instance. | 
|  void | setExecutor(Executor executor)Set the Executorto use when invoking methods asynchronously. | 
| Methods inherited from class org.springframework.aop.framework.ProxyConfig | 
|---|
| copyFrom, isExposeProxy, isFrozen, isOpaque, isOptimize, isProxyTargetClass, setExposeProxy, setFrozen, setOpaque, setOptimize, setProxyTargetClass, toString | 
| Methods inherited from class java.lang.Object | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait | 
| Constructor Detail | 
|---|
public AsyncAnnotationBeanPostProcessor()
| Method Detail | 
|---|
public void setAsyncAnnotationType(Class<? extends Annotation> asyncAnnotationType)
Async annotation and the EJB 3.1
 javax.ejb.Asynchronous annotation will be detected.
 This setter property exists so that developers can provide their own (non-Spring-specific) annotation type to indicate that a method (or all methods of a given class) should be invoked asynchronously.
asyncAnnotationType - the desired annotation typepublic void setExecutor(Executor executor)
Executor to use when invoking methods asynchronously.
public void setBeanClassLoader(ClassLoader classLoader)
BeanClassLoaderAwareclass loader to
 a bean instance.
 Invoked after the population of normal bean properties but
 before an initialization callback such as
 InitializingBean's
 InitializingBean.afterPropertiesSet()
 method or a custom init-method.
setBeanClassLoader in interface BeanClassLoaderAwareclassLoader - the owning class loader; may be null in
 which case a default ClassLoader must be used, for example
 the ClassLoader obtained via
 ClassUtils.getDefaultClassLoader()public void afterPropertiesSet()
InitializingBeanThis method allows the bean instance to perform initialization only possible when all bean properties have been set and to throw an exception in the event of misconfiguration.
afterPropertiesSet in interface InitializingBeanpublic int getOrder()
OrderedNormally starting with 0, with Integer.MAX_VALUE
 indicating the greatest value. Same order values will result
 in arbitrary positions for the affected objects.
 
Higher values can be interpreted as lower priority. As a consequence, the object with the lowest value has highest priority (somewhat analogous to Servlet "load-on-startup" values).
getOrder in interface Ordered
public Object postProcessBeforeInitialization(Object bean,
                                              String beanName)
BeanPostProcessorafterPropertiesSet
 or a custom init-method). The bean will already be populated with property values.
 The returned bean instance may be a wrapper around the original.
postProcessBeforeInitialization in interface BeanPostProcessorbean - the new bean instancebeanName - the name of the bean
null, no subsequent BeanPostProcessors will be invokedInitializingBean.afterPropertiesSet()
public Object postProcessAfterInitialization(Object bean,
                                             String beanName)
BeanPostProcessorafterPropertiesSet
 or a custom init-method). The bean will already be populated with property values.
 The returned bean instance may be a wrapper around the original.
 In case of a FactoryBean, this callback will be invoked for both the FactoryBean
 instance and the objects created by the FactoryBean (as of Spring 2.0). The
 post-processor can decide whether to apply to either the FactoryBean or created
 objects or both through corresponding bean instanceof FactoryBean checks.
 
This callback will also be invoked after a short-circuiting triggered by a
 InstantiationAwareBeanPostProcessor.postProcessBeforeInstantiation(java.lang.Class>, java.lang.String) method,
 in contrast to all other BeanPostProcessor callbacks.
postProcessAfterInitialization in interface BeanPostProcessorbean - the new bean instancebeanName - the name of the bean
null, no subsequent BeanPostProcessors will be invokedInitializingBean.afterPropertiesSet(), 
FactoryBean| 
 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||