public class MessagingAnnotationPostProcessor
extends java.lang.Object
implements org.springframework.beans.factory.config.BeanPostProcessor, org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.InitializingBean
BeanPostProcessor implementation that processes method-level
messaging annotations such as @Transformer, @Splitter, @Router, and @Filter.| Modifier and Type | Field and Description |
|---|---|
protected org.apache.commons.logging.Log |
logger |
| Constructor and Description |
|---|
MessagingAnnotationPostProcessor() |
| Modifier and Type | Method and Description |
|---|---|
<A extends java.lang.annotation.Annotation> |
addMessagingAnnotationPostProcessor(java.lang.Class<A> annotation,
MethodAnnotationPostProcessor<A> postProcessor) |
void |
afterPropertiesSet() |
protected java.lang.String |
generateBeanName(java.lang.String originalBeanName,
java.lang.reflect.Method method,
java.lang.Class<? extends java.lang.annotation.Annotation> annotationType) |
protected java.util.List<java.lang.annotation.Annotation> |
getAnnotationChain(java.lang.reflect.Method method,
java.lang.Class<? extends java.lang.annotation.Annotation> annotationType) |
protected org.springframework.beans.factory.config.ConfigurableListableBeanFactory |
getBeanFactory() |
protected java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,MethodAnnotationPostProcessor<?>> |
getPostProcessors() |
java.lang.Object |
postProcessAfterInitialization(java.lang.Object bean,
java.lang.String beanName) |
java.lang.Object |
postProcessBeforeInitialization(java.lang.Object bean,
java.lang.String beanName) |
protected void |
processAnnotationTypeOnMethod(java.lang.Object bean,
java.lang.String beanName,
java.lang.reflect.Method method,
java.lang.Class<? extends java.lang.annotation.Annotation> annotationType,
java.util.List<java.lang.annotation.Annotation> annotations) |
protected boolean |
recursiveFindAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType,
java.lang.annotation.Annotation ann,
java.util.List<java.lang.annotation.Annotation> annotationChain,
java.util.Set<java.lang.annotation.Annotation> visited) |
void |
setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory) |
protected java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,MethodAnnotationPostProcessor<?>> |
setupCustomPostProcessors() |
public void setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory)
setBeanFactory in interface org.springframework.beans.factory.BeanFactoryAwareprotected org.springframework.beans.factory.config.ConfigurableListableBeanFactory getBeanFactory()
public void afterPropertiesSet()
afterPropertiesSet in interface org.springframework.beans.factory.InitializingBeanprotected java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,MethodAnnotationPostProcessor<?>> setupCustomPostProcessors()
public <A extends java.lang.annotation.Annotation> void addMessagingAnnotationPostProcessor(java.lang.Class<A> annotation,
MethodAnnotationPostProcessor<A> postProcessor)
public java.lang.Object postProcessBeforeInitialization(java.lang.Object bean,
java.lang.String beanName)
throws org.springframework.beans.BeansException
postProcessBeforeInitialization in interface org.springframework.beans.factory.config.BeanPostProcessororg.springframework.beans.BeansExceptionpublic java.lang.Object postProcessAfterInitialization(java.lang.Object bean,
java.lang.String beanName)
throws org.springframework.beans.BeansException
postProcessAfterInitialization in interface org.springframework.beans.factory.config.BeanPostProcessororg.springframework.beans.BeansExceptionprotected void processAnnotationTypeOnMethod(java.lang.Object bean,
java.lang.String beanName,
java.lang.reflect.Method method,
java.lang.Class<? extends java.lang.annotation.Annotation> annotationType,
java.util.List<java.lang.annotation.Annotation> annotations)
protected java.util.List<java.lang.annotation.Annotation> getAnnotationChain(java.lang.reflect.Method method,
java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
method - the method.annotationType - the annotation type.protected boolean recursiveFindAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType,
java.lang.annotation.Annotation ann,
java.util.List<java.lang.annotation.Annotation> annotationChain,
java.util.Set<java.lang.annotation.Annotation> visited)
protected java.lang.String generateBeanName(java.lang.String originalBeanName,
java.lang.reflect.Method method,
java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
protected java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>,MethodAnnotationPostProcessor<?>> getPostProcessors()