Class AbstractListenerAnnotationBeanPostProcessor<A extends Annotation>
java.lang.Object
org.springframework.amqp.listener.AbstractListenerAnnotationBeanPostProcessor<A>
- Type Parameters:
A- the listener annotation type.
- All Implemented Interfaces:
org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanClassLoaderAware, org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.config.BeanPostProcessor, org.springframework.beans.factory.SmartInitializingSingleton, org.springframework.context.EnvironmentAware, org.springframework.core.Ordered
public abstract class AbstractListenerAnnotationBeanPostProcessor<A extends Annotation>
extends Object
implements org.springframework.beans.factory.config.BeanPostProcessor, org.springframework.core.Ordered, org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.BeanClassLoaderAware, org.springframework.context.EnvironmentAware, org.springframework.beans.factory.SmartInitializingSingleton
The
BeanPostProcessor base for listener annotation parsers.- Since:
- 4.1
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final org.springframework.core.convert.ConversionServiceprotected final org.apache.commons.logging.Logprotected final ConcurrentMap<Class<?>, AbstractListenerAnnotationBeanPostProcessor.TypeMetadata<A>> Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidprotected abstract AbstractListenerAnnotationBeanPostProcessor.TypeMetadata<A> buildMetadata(Class<?> clazz) protected static <A extends Annotation>
AbstractListenerAnnotationBeanPostProcessor.TypeMetadata<A> buildMetadata(Class<?> targetClass, Class<A> listenerAnnotation, @Nullable Class<? extends Annotation> handlerAnnotation) protected static MethodcheckProxy(Method methodArg, Object bean) protected abstract voiddoProcessAmqpListener(A listenerAnnotation, Method method, Object bean, String beanName) protected ClassLoaderprotected org.springframework.beans.factory.BeanFactoryintgetOrder()protected static StringnoBeanFoundMessage(Object target, String listenerBeanName, String requestedBeanName, Class<?> expectedClass) postProcessAfterInitialization(Object bean, String beanName) protected abstract voidprocessMultiMethodListeners(List<A> classLevelListeners, List<Method> multiMethods, Object bean, String beanName) protected @Nullable ObjectresolveExpression(String value) protected booleanresolveExpressionAsBoolean(String value) protected booleanresolveExpressionAsBoolean(String value, boolean defaultValue) protected @Nullable StringresolveExpressionAsString(String value, String attribute) protected @Nullable StringresolveExpressionAsStringOrInteger(String value, String attribute) protected <B> @Nullable BresolveExpressionToBean(String attributeValue, String attributeName, Object annotationTarget, String beanName, Class<B> beanType) protected @Nullable IntegerresolveExpressionToInteger(String value, String attribute) voidsetBeanClassLoader(ClassLoader classLoader) voidsetBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory) voidsetEnvironment(org.springframework.core.env.Environment environment) protected static DurationtoDuration(String value) protected static DurationtoDuration(String value, TimeUnit timeUnit) Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.springframework.beans.factory.config.BeanPostProcessor
postProcessBeforeInitialization
-
Field Details
-
CONVERSION_SERVICE
protected static final org.springframework.core.convert.ConversionService CONVERSION_SERVICE -
logger
protected final org.apache.commons.logging.Log logger -
typeCache
protected final ConcurrentMap<Class<?>, AbstractListenerAnnotationBeanPostProcessor.TypeMetadata<A extends Annotation>> typeCache
-
-
Constructor Details
-
AbstractListenerAnnotationBeanPostProcessor
public AbstractListenerAnnotationBeanPostProcessor()
-
-
Method Details
-
getOrder
public int getOrder()- Specified by:
getOrderin interfaceorg.springframework.core.Ordered
-
setEnvironment
public void setEnvironment(org.springframework.core.env.Environment environment) - Specified by:
setEnvironmentin interfaceorg.springframework.context.EnvironmentAware
-
setBeanFactory
public void setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory) - Specified by:
setBeanFactoryin interfaceorg.springframework.beans.factory.BeanFactoryAware
-
getBeanFactory
protected org.springframework.beans.factory.BeanFactory getBeanFactory() -
setBeanClassLoader
- Specified by:
setBeanClassLoaderin interfaceorg.springframework.beans.factory.BeanClassLoaderAware
-
getBeanClassLoader
-
afterSingletonsInstantiated
public void afterSingletonsInstantiated()- Specified by:
afterSingletonsInstantiatedin interfaceorg.springframework.beans.factory.SmartInitializingSingleton
-
postProcessAfterInitialization
-
buildMetadata
protected abstract AbstractListenerAnnotationBeanPostProcessor.TypeMetadata<A> buildMetadata(Class<?> clazz) -
doProcessAmqpListener
-
processMultiMethodListeners
-
checkProxy
-
noBeanFoundMessage
-
resolveExpressionAsBoolean
-
resolveExpressionAsBoolean
-
resolveExpressionAsString
-
resolveExpressionAsStringOrInteger
-
resolveExpressionToInteger
-
resolveExpressionToBean
-
resolveExpression
-
toDuration
-
toDuration
-
buildMetadata
protected static <A extends Annotation> AbstractListenerAnnotationBeanPostProcessor.TypeMetadata<A> buildMetadata(Class<?> targetClass, Class<A> listenerAnnotation, @Nullable Class<? extends Annotation> handlerAnnotation)
-