クラス ThreadStatePropagationChannelInterceptor<S>

java.lang.ObjectSE
org.springframework.integration.channel.interceptor.ThreadStatePropagationChannelInterceptor<S>
型パラメーター:
S - 伝播された状態オブジェクト型。
実装済みのインターフェース一覧:
ChannelInterceptor, ExecutorChannelInterceptor

public abstract class ThreadStatePropagationChannelInterceptor<S> extends ObjectSE implements ExecutorChannelInterceptor
あるメッセージフローのスレッドから、フローに含まれる MessageChannel を介した別のスレッドへの ThreadSE(任意の? )状態の伝播を担当する ExecutorChannelInterceptor 実装。

伝播は、送信するメッセージと伝播する状態を保持する内部 Message 拡張機能を使用して preSend(Message, MessageChannel) 実装から実行されます。

伝搬状態コンテキストの抽出と作成は、PollableChannel の場合は postReceive(Message, MessageChannel) 実装から、AbstractExecutorChannelExecutorSubscribableChannel の場合は beforeHandle(Message, MessageChannel, MessageHandler) から実行されます。

重要。送信するメッセージを変更するインターセプター(MessageBuilder.withPayload(...)...build() など)は、状態をドロップして伝播する可能性があります。このようなインターセプターの組み合わせは適切に修正する必要があります。ほとんどの場合、インターセプターの並べ替えで課題を解決できます。

導入:
4.2
作成者:
Artem Bilan, Gary Russell