public class MessageHandlerChain extends AbstractMessageProducingHandler implements CompositeMessageHandler, ManageableLifecycle
MessageHandler 実装。 最後のハンドラーを除く各ハンドラーは、MessageProducer インターフェースを実装する必要があります。最後のハンドラーは、チェーン自体に出力チャネルが構成されている場合にも必要です。ハンドラーの型について他の前提はありません。
強制されていませんが、各ハンドラーが応答メッセージを生成してその出力チャネルに送信することが期待されます。たとえば MessageFilter を使用して、チェーンの途中でメッセージをフィルタリングすることができます。null を返す MessageHandler でも同じ効果がありますが、このオプションはあまり表現力がありません。
このコンポーネントを名前空間から使用して、暗黙的に作成できるチャネルを削除することにより、構成の可読性を向上させることができます。
<chain>
<filter ref="someFilter"/>
<bean class="SomeMessageHandlerImplementation"/>
<transformer ref="someTransformer"/>
<aggregator ... />
</chain>
IntegrationManagement.ManagementOverridesmessagingTemplateEXPRESSION_PARSER, loggerHIGHEST_PRECEDENCE, LOWEST_PRECEDENCEMETER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME| コンストラクターと説明 |
|---|
MessageHandlerChain() |
| 修飾子と型 | メソッドと説明 |
|---|---|
StringSE | getComponentType() サブクラスはこのメソッドを実装して、コンポーネント型情報を提供できます。 |
ListSE<MessageHandler> | getHandlers() ハンドラーの変更不可能なリストを返します。 |
IntegrationPatternType | getIntegrationPatternType() このコンポーネントが実装するパターン型を返します。 |
protected void | handleMessageInternal(Message<?> message) |
boolean | isRunning()SmartLifecycle の実装 ( handlers へのデリゲート) |
protected void | onInit() サブクラスは、初期化ロジック用にこれを実装できます。 |
void | setHandlers(ListSE<MessageHandler> handlers) |
protected boolean | shouldCopyRequestHeaders() サブクラスはこれをオーバーライドできます。 |
void | start() |
void | stop() |
void | stop(RunnableSE callback) |
addNotPropagatedHeaders, createOutputMessage, getNotPropagatedHeaders, getOutputChannel, isAsync, messageBuilderForReply, produceOutput, resolveErrorChannel, sendErrorMessage, sendOutput, sendOutputs, setAsync, setNotPropagatedHeaders, setOutputChannel, setOutputChannelName, setSendTimeout, shouldSplitOutput, updateNotPropagatedHeadershandleMessage, onComplete, onError, onNext, onSubscribebuildSendTimer, destroy, getManagedName, getManagedType, getMetricsCaptor, getOrder, getOverrides, isLoggingEnabled, registerMetricsCaptor, sendTimer, setLoggingEnabled, setManagedName, setManagedType, setOrder, setShouldTrack, shouldTrackafterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toStringcloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, waitSE, waitSE, waitSEhandleMessagegetThisAsgetBeanName, getComponentNamepublic void setHandlers(ListSE<MessageHandler> handlers)
public ListSE<MessageHandler> getHandlers()
CompositeMessageHandlerCompositeMessageHandler の getHandlers public StringSE getComponentType()
IntegrationObjectSupportNamedComponent の getComponentType MessageHandlerSupport の getComponentType public IntegrationPatternType getIntegrationPatternType()
IntegrationPatternIntegrationPattern の getIntegrationPatternType MessageHandlerSupport の getIntegrationPatternType IntegrationPatternTypeprotected void onInit()
IntegrationObjectSupportAbstractMessageProducingHandler の onInit protected void handleMessageInternal(Message<?> message)
AbstractMessageHandler の handleMessageInternal protected boolean shouldCopyRequestHeaders()
AbstractMessageProducingHandlerAbstractMessageProducingHandler の shouldCopyRequestHeaders public final boolean isRunning()
handlers へのデリゲート)Lifecycle の isRunning ManageableLifecycle の isRunning public final void start()
Lifecycle の start ManageableLifecycle の start public final void stop()
Lifecycle の stop ManageableLifecycle の stop public final void stop(RunnableSE callback)