クラス BarrierMessageHandler
java.lang.ObjectSE
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.handler.MessageHandlerSupport
org.springframework.integration.handler.AbstractMessageHandler
org.springframework.integration.handler.AbstractMessageProducingHandler
org.springframework.integration.handler.AbstractReplyProducingMessageHandler
org.springframework.integration.aggregator.BarrierMessageHandler
- 実装されたすべてのインターフェース:
org.reactivestreams.Subscriber<Message<?>>
、Aware
、BeanClassLoaderAware
、BeanFactoryAware
、BeanNameAware
、DisposableBean
、InitializingBean
、ApplicationContextAware
、Ordered
、ComponentSourceAware
、ExpressionCapable
、Orderable
、MessageProducer
、DiscardingMessageHandler
、HeaderPropagationAware
、MessageTriggerAction
、IntegrationPattern
、NamedComponent
、IntegrationManagement
、TrackableComponent
、MessageHandler
、reactor.core.CoreSubscriber<Message<?>>
public class BarrierMessageHandler
extends AbstractReplyProducingMessageHandler
implements MessageTriggerAction, DiscardingMessageHandler
対応する相関関係を持つメッセージが
trigger
メソッドに渡されるか、タイムアウトが発生するまでスレッドを一時停止するメッセージハンドラー。特定の相関関係(CorrelationStrategy
を呼び出した結果)を持つ 1 つのスレッドのみを一度に中断できます。受信スレッドがトリガースレッドの前に到着しない場合、トリガースレッドは到着するまで中断されるか、タイムアウトが発生します。リクエストメッセージとトリガーメッセージに別々のタイムアウトを構成できます。 デフォルトの CorrelationStrategy
は HeaderAttributeCorrelationStrategy
です。
デフォルトの出力プロセッサーは DefaultAggregatingMessageGroupProcessor
です。
- 導入:
- 4.2
- 作成者:
- Gary Russell, Artem Bilan, Michel Jung
ネストされたクラスのサマリー
クラス org.springframework.integration.handler.AbstractReplyProducingMessageHandler から継承されたネストクラス / インターフェース
AbstractReplyProducingMessageHandler.RequestHandler
インターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたネストクラス / インターフェース
IntegrationManagement.ManagementOverrides
フィールドのサマリー
クラス org.springframework.integration.handler.AbstractMessageProducingHandler から継承されたフィールド
messagingTemplate
クラス org.springframework.integration.context.IntegrationObjectSupport から継承されたフィールド
EXPRESSION_PARSER, logger
インターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたフィールド
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME
インターフェース org.springframework.core.Ordered から継承されたフィールド
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
コンストラクターの概要
コンストラクターコンストラクター説明BarrierMessageHandler
(long timeout) 提供されたタイムアウトとデフォルトの相関および出力戦略を使用してインスタンスを構築します。BarrierMessageHandler
(long requestTimeout, long triggerTimeout) 提供されたタイムアウトとデフォルトの相関および出力戦略を使用してインスタンスを構築します。BarrierMessageHandler
(long requestTimeout, long triggerTimeout, CorrelationStrategy correlationStrategy) 提供されたタイムアウトと相関戦略、およびデフォルトの出力プロセッサーを使用してインスタンスを構築します。BarrierMessageHandler
(long requestTimeout, long triggerTimeout, MessageGroupProcessor outputProcessor) 提供されたタイムアウトと出力プロセッサー、およびデフォルトの相関戦略を使用してインスタンスを構築します。BarrierMessageHandler
(long requestTimeout, long triggerTimeout, MessageGroupProcessor outputProcessor, CorrelationStrategy correlationStrategy) 提供されたタイムアウトと出力プロセッサー、およびデフォルトの相関戦略を使用してインスタンスを構築します。BarrierMessageHandler
(long timeout, CorrelationStrategy correlationStrategy) 提供されたタイムアウトと相関戦略、およびデフォルトの出力プロセッサーを使用してインスタンスを構築します。BarrierMessageHandler
(long timeout, MessageGroupProcessor outputProcessor) 提供されたタイムアウトと出力プロセッサー、およびデフォルトの相関戦略を使用してインスタンスを構築します。BarrierMessageHandler
(long timeout, MessageGroupProcessor outputProcessor, CorrelationStrategy correlationStrategy) 提供されたタイムアウトと出力プロセッサー、およびデフォルトの相関戦略を使用してインスタンスを構築します。メソッドのサマリー
修飾子と型メソッド説明protected ObjectSE
buildResult
(ObjectSE key, Message<?> requestMessage, Message<?> releaseMessage) オーバーライドして、結果として受信メッセージとリリースメッセージが返されるデフォルトのメカニズムを変更します。サブクラスはこのメソッドを実装して、コンポーネント型情報を提供できます。トリガーアクションメッセージの破棄メッセージチャネルを返します。このコンポーネントが実装するパターン型を返します。protected ObjectSE
handleRequestMessage
(Message<?> requestMessage) サブクラスはこのメソッドを実装して、リクエストメッセージを処理する必要があります。void
setDiscardChannel
(MessageChannel discardChannel) 遅れて到着したトリガーメッセージが送信されるチャネル、またはリクエストメッセージが時間内に到着しないチャネルを設定します。void
setDiscardChannelName
(StringSE discardChannelName) 遅れて到着したトリガーメッセージが送信されるチャネル、またはリクエストメッセージが時間内に到着しないチャネルの名前を設定します。void
メッセージに基づいて何らかのアクションを実行します。クラス org.springframework.integration.handler.AbstractReplyProducingMessageHandler から継承されたメソッド
doInit, doInvokeAdvisedRequestHandler, getBeanClassLoader, getRequiresReply, handleMessageInternal, hasAdviceChain, onInit, setAdviceChain, setBeanClassLoader, setRequiresReply
クラス org.springframework.integration.handler.AbstractMessageProducingHandler から継承されたメソッド
addNotPropagatedHeaders, createOutputMessage, getNotPropagatedHeaders, getOutputChannel, isAsync, messageBuilderForReply, produceOutput, resolveErrorChannel, sendErrorMessage, sendOutput, sendOutputs, setAsync, setNotPropagatedHeaders, setOutputChannel, setOutputChannelName, setSendTimeout, setupMessageProcessor, shouldCopyRequestHeaders, shouldSplitOutput, updateNotPropagatedHeaders
クラス org.springframework.integration.handler.AbstractMessageHandler から継承されたメソッド
handleMessage, onComplete, onError, onNext, onSubscribe, setObservationConvention
クラス org.springframework.integration.handler.MessageHandlerSupport から継承されたメソッド
buildSendTimer, destroy, getManagedName, getManagedType, getMetricsCaptor, getObservationRegistry, getOrder, getOverrides, isLoggingEnabled, isObserved, registerMetricsCaptor, registerObservationRegistry, sendTimer, setLoggingEnabled, setManagedName, setManagedType, setOrder, setShouldTrack, shouldTrack
クラス org.springframework.integration.context.IntegrationObjectSupport から継承されたメソッド
afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentDescription, getComponentName, getComponentSource, getConversionService, getExpression, getIntegrationProperties, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentDescription, setComponentName, setComponentSource, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toString
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSE
インターフェース reactor.core.CoreSubscriber から継承されたメソッド
currentContext
インターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたメソッド
getThisAs
インターフェース org.springframework.messaging.MessageHandler から継承されたメソッド
handleMessage
インターフェース org.springframework.integration.support.context.NamedComponent から継承されたメソッド
getBeanName, getComponentName
コンストラクターの詳細
BarrierMessageHandler
public BarrierMessageHandler(long timeout) 提供されたタイムアウトとデフォルトの相関および出力戦略を使用してインスタンスを構築します。- パラメーター:
timeout
- リクエストメッセージとトリガーメッセージの両方のミリ秒単位のタイムアウト。
BarrierMessageHandler
提供されたタイムアウトと出力プロセッサー、およびデフォルトの相関戦略を使用してインスタンスを構築します。- パラメーター:
timeout
- リクエストメッセージとトリガーメッセージの両方のミリ秒単位のタイムアウト。outputProcessor
- 出力MessageGroupProcessor
。
BarrierMessageHandler
提供されたタイムアウトと相関戦略、およびデフォルトの出力プロセッサーを使用してインスタンスを構築します。- パラメーター:
timeout
- リクエストメッセージとトリガーメッセージの両方のミリ秒単位のタイムアウト。correlationStrategy
- 相関戦略。
BarrierMessageHandler
public BarrierMessageHandler(long timeout, MessageGroupProcessor outputProcessor, CorrelationStrategy correlationStrategy) 提供されたタイムアウトと出力プロセッサー、およびデフォルトの相関戦略を使用してインスタンスを構築します。- パラメーター:
timeout
- リクエストメッセージとトリガーメッセージの両方のミリ秒単位のタイムアウト。outputProcessor
- 出力MessageGroupProcessor
。correlationStrategy
- 相関戦略。
BarrierMessageHandler
public BarrierMessageHandler(long requestTimeout, long triggerTimeout) 提供されたタイムアウトとデフォルトの相関および出力戦略を使用してインスタンスを構築します。- パラメーター:
requestTimeout
- トリガーメッセージを待機するときのミリ秒単位のタイムアウト。triggerTimeout
- リクエストメッセージを待機するときのミリ秒単位のタイムアウト。- 導入:
- 5.4
BarrierMessageHandler
public BarrierMessageHandler(long requestTimeout, long triggerTimeout, MessageGroupProcessor outputProcessor) 提供されたタイムアウトと出力プロセッサー、およびデフォルトの相関戦略を使用してインスタンスを構築します。- パラメーター:
requestTimeout
- トリガーメッセージを待機するときのミリ秒単位のタイムアウト。triggerTimeout
- リクエストメッセージを待機するときのミリ秒単位のタイムアウト。outputProcessor
- 出力MessageGroupProcessor
。- 導入:
- 5.4
BarrierMessageHandler
public BarrierMessageHandler(long requestTimeout, long triggerTimeout, CorrelationStrategy correlationStrategy) 提供されたタイムアウトと相関戦略、およびデフォルトの出力プロセッサーを使用してインスタンスを構築します。- パラメーター:
requestTimeout
- トリガーメッセージを待機するときのミリ秒単位のタイムアウト。triggerTimeout
- リクエストメッセージを待機するときのミリ秒単位のタイムアウト。correlationStrategy
- 相関戦略。- 導入:
- 5.4
BarrierMessageHandler
public BarrierMessageHandler(long requestTimeout, long triggerTimeout, MessageGroupProcessor outputProcessor, CorrelationStrategy correlationStrategy) 提供されたタイムアウトと出力プロセッサー、およびデフォルトの相関戦略を使用してインスタンスを構築します。- パラメーター:
requestTimeout
- トリガーメッセージを待機するときのミリ秒単位のタイムアウト。triggerTimeout
- リクエストメッセージを待機するときのミリ秒単位のタイムアウト。outputProcessor
- 出力MessageGroupProcessor
。correlationStrategy
- 相関戦略。- 導入:
- 5.4
メソッドの詳細
setDiscardChannelName
遅れて到着したトリガーメッセージが送信されるチャネル、またはリクエストメッセージが時間内に到着しないチャネルの名前を設定します。- パラメーター:
discardChannelName
- 廃棄チャネル。- 導入:
- 5.0
setDiscardChannel
遅れて到着したトリガーメッセージが送信されるチャネル、またはリクエストメッセージが時間内に到着しないチャネルを設定します。- パラメーター:
discardChannel
- 廃棄チャネル。- 導入:
- 5.0
getDiscardChannel
トリガーアクションメッセージの破棄メッセージチャネルを返します。- 次で指定:
- インターフェース
DiscardingMessageHandler
のgetDiscardChannel
- 戻り値:
- 破棄メッセージチャネル。
- 導入:
- 5.0
getComponentType
クラスからコピーされた説明:IntegrationObjectSupport
サブクラスはこのメソッドを実装して、コンポーネント型情報を提供できます。- 次で指定:
- インターフェース
NamedComponent
のgetComponentType
- オーバーライド:
- クラス
MessageHandlerSupport
のgetComponentType
getIntegrationPatternType
インターフェースからコピーされた説明:IntegrationPattern
このコンポーネントが実装するパターン型を返します。- 次で指定:
- インターフェース
IntegrationPattern
のgetIntegrationPatternType
- オーバーライド:
- クラス
AbstractReplyProducingMessageHandler
のgetIntegrationPatternType
- 戻り値:
- このコンポーネントが実装する
IntegrationPatternType
handleRequestMessage
クラスからコピーされた説明:AbstractReplyProducingMessageHandler
サブクラスはこのメソッドを実装して、リクエストメッセージを処理する必要があります。戻り値は、メッセージ、MessageBuilder、任意のプレーンオブジェクトです。基本クラスは、これらの開始点のいずれかからの返信メッセージの最終的な作成を処理します。戻り値が null の場合、メッセージフローはここで終了します。- 次で指定:
- クラス
AbstractReplyProducingMessageHandler
のhandleRequestMessage
- パラメーター:
requestMessage
- リクエストメッセージ。- 戻り値:
- メッセージを処理した結果、または
null
buildResult
trigger
インターフェースからコピーされた説明:MessageTriggerAction
メッセージに基づいて何らかのアクションを実行します。- 次で指定:
- インターフェース
MessageTriggerAction
のtrigger
- パラメーター:
message
- メッセージ。