クラス RabbitListenerAnnotationBeanPostProcessor
java.lang.ObjectSE
org.springframework.amqp.rabbit.annotation.RabbitListenerAnnotationBeanPostProcessor
- 実装されたすべてのインターフェース:
Aware
、BeanClassLoaderAware
、BeanFactoryAware
、BeanPostProcessor
、SmartInitializingSingleton
、EnvironmentAware
、Ordered
public class RabbitListenerAnnotationBeanPostProcessor
extends ObjectSE
implements BeanPostProcessor, Ordered, BeanFactoryAware, BeanClassLoaderAware, EnvironmentAware, SmartInitializingSingleton
RabbitListener
でアノテーションが付けられたメソッドを登録する Bean ポストプロセッサーは、アノテーションのパラメーターに従って RabbitListenerContainerFactory
によってカバーに作成された AMQP メッセージリスナーコンテナーによって呼び出されます。 アノテーション付きメソッドは、RabbitListener
で定義されている柔軟な引数を使用できます。
このポストプロセッサーは、Spring の <rabbit:annotation-driven>
XML 要素によって、また EnableRabbit
アノテーションによって自動的に登録されます。
コンテナー内の RabbitListenerConfigurer
インスタンスを自動検出し、使用するレジストリ、デフォルトのコンテナーファクトリ、エンドポイント登録のきめ細かい制御を可能にします。完全な使用箇所の詳細については、EnableRabbit
Javadoc を参照してください。
- 導入:
- 1.4
- 作成者:
- Stephane Nicoll, Juergen Hoeller, Gary Russell, Alex Panchenko, Artem Bilan
- 関連事項:
フィールドサマリー
フィールド修飾子と型フィールド説明static final StringSE
デフォルトのRabbitListenerContainerFactory
の Bean 名。static final StringSE
インターフェース org.springframework.core.Ordered から継承されたフィールド
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
コンストラクターのサマリー
コンストラクターメソッドのサマリー
修飾子と型メソッド説明void
protected void
int
getOrder()
protected StringSE
noBeanFoundMessage
(ObjectSE target, StringSE listenerBeanName, StringSE requestedBeanName, ClassSE<?> expectedClass) postProcessAfterInitialization
(ObjectSE bean, StringSE beanName) postProcessBeforeInitialization
(ObjectSE bean, StringSE beanName) protected CollectionSE<Declarable>
processAmqpListener
(RabbitListener rabbitListener, MethodSE method, ObjectSE bean, StringSE beanName) protected CollectionSE<Declarable>
processListener
(MethodRabbitListenerEndpoint endpoint, RabbitListener rabbitListener, ObjectSE bean, ObjectSE target, StringSE beanName) protected StringSE
resolveExpressionAsString
(StringSE value, StringSE attribute) void
setBeanClassLoader
(ClassLoaderSE classLoader) void
setBeanFactory
(BeanFactory beanFactory) BeanFactory
を使用可能にすることはオプションです。設定しない場合、RabbitListenerConfigurer
Bean は自動検出されず、endpoint registry
を明示的に構成する必要があります。void
setCharset
(CharsetSE charset) byte[] から String メソッドへの引数変換の文字セットを設定します。void
setContainerFactoryBeanName
(StringSE containerFactoryBeanName) デフォルトで使用するRabbitListenerContainerFactory
の名前を設定します。void
setEndpointRegistry
(RabbitListenerEndpointRegistry endpointRegistry) 作成したエンドポイントを保持し、関連するリスナーコンテナーのライフサイクルを管理するRabbitListenerEndpointRegistry
を設定します。void
setEnvironment
(Environment environment) void
setMessageHandlerMethodFactory
(MessageHandlerMethodFactory messageHandlerMethodFactory) MessageHandlerMethodFactory
を使用して、このプロセッサーによって検出されたエンドポイントを処理するメッセージリスナーを構成するように設定します。
フィールドの詳細
DEFAULT_RABBIT_LISTENER_CONTAINER_FACTORY_BEAN_NAME
デフォルトのRabbitListenerContainerFactory
の Bean 名。- 関連事項:
RABBIT_EMPTY_STRING_ARGUMENTS_PROPERTY
- 関連事項:
コンストラクターの詳細
RabbitListenerAnnotationBeanPostProcessor
public RabbitListenerAnnotationBeanPostProcessor()
メソッドの詳細
getOrder
public int getOrder()setEndpointRegistry
作成したエンドポイントを保持し、関連するリスナーコンテナーのライフサイクルを管理するRabbitListenerEndpointRegistry
を設定します。- パラメーター:
endpointRegistry
- 設定するRabbitListenerEndpointRegistry
setContainerFactoryBeanName
デフォルトで使用するRabbitListenerContainerFactory
の名前を設定します。何も指定されていない場合は、"rabbitListenerContainerFactory" が定義されているものとみなされます。
- パラメーター:
containerFactoryBeanName
-RabbitListenerContainerFactory
Bean 名。
setMessageHandlerMethodFactory
MessageHandlerMethodFactory
を使用して、このプロセッサーによって検出されたエンドポイントを処理するメッセージリスナーを構成するように設定します。デフォルトでは
DefaultMessageHandlerMethodFactory
が使用され、追加のメソッド引数をサポートするように、または変換と検証のサポートをカスタマイズするようにさらに構成できます。詳細については、DefaultMessageHandlerMethodFactory
Javadoc を参照してください。- パラメーター:
messageHandlerMethodFactory
-MessageHandlerMethodFactory
インスタンス。
setBeanFactory
BeanFactory
を使用可能にすることはオプションです。設定しない場合、RabbitListenerConfigurer
Bean は自動検出されず、endpoint registry
を明示的に構成する必要があります。- 次で指定:
- インターフェース
BeanFactoryAware
のsetBeanFactory
- パラメーター:
beanFactory
- 使用するBeanFactory
。
setBeanClassLoader
- 次で指定:
- インターフェース
BeanClassLoaderAware
のsetBeanClassLoader
setEnvironment
- 次で指定:
- インターフェース
EnvironmentAware
のsetEnvironment
setCharset
byte[] から String メソッドへの引数変換の文字セットを設定します。- パラメーター:
charset
- 文字セット (デフォルトは UTF-8)。- 導入:
- 2.2
afterSingletonsInstantiated
public void afterSingletonsInstantiated()- 次で指定:
- インターフェース
SmartInitializingSingleton
のafterSingletonsInstantiated
postProcessBeforeInitialization
public ObjectSE postProcessBeforeInitialization(ObjectSE bean, StringSE beanName) throws BeansException - 次で指定:
- インターフェース
BeanPostProcessor
のpostProcessBeforeInitialization
- 例外:
BeansException
postProcessAfterInitialization
public ObjectSE postProcessAfterInitialization(ObjectSE bean, StringSE beanName) throws BeansException - 次で指定:
- インターフェース
BeanPostProcessor
のpostProcessAfterInitialization
- 例外:
BeansException
processAmqpListener
protected CollectionSE<Declarable> processAmqpListener(RabbitListener rabbitListener, MethodSE method, ObjectSE bean, StringSE beanName) processListener
protected CollectionSE<Declarable> processListener(MethodRabbitListenerEndpoint endpoint, RabbitListener rabbitListener, ObjectSE bean, ObjectSE target, StringSE beanName) assertBeanFactory
protected void assertBeanFactory()noBeanFoundMessage
resolveExpressionAsString