クラス RecipientListRouter

実装されたすべてのインターフェース:
org.reactivestreams.Subscriber<Message<?>>AwareBeanFactoryAwareBeanNameAwareDisposableBeanInitializingBeanApplicationContextAwareOrderedExpressionCapableOrderableIntegrationPatternMessageRouterRecipientListRouterManagementNamedComponentIntegrationManagementTrackableComponentMessageHandlerreactor.core.CoreSubscriber<Message<?>>

public class RecipientListRouter extends AbstractMessageRouter implements RecipientListRouterManagement
 
 <recipient-list-router id="simpleRouter" input-channel="routingChannelA">
     <recipient channel="channel1"/>
     <recipient channel="channel2"/>
 </recipient-list-router>
 
 

受信者チャネルのリストにメッセージを送信するメッセージルーター。受信者は、setChannels(List) メソッドを介して MessageChannel インスタンスの静的リストとして提供できます。動的な動作の場合は、setRecipients(List) メソッドを介して値を提供できます。

動的受信者リストのより高度なプログラムによる制御については、代わりに @Router アノテーションを使用するか、AbstractMappingMessageRouter を継承することを検討してください。

標準の <router... /> とは異なり、このハンドラーは受信者として構成されているすべてのチャネルに送信しようとします。エンドポイントに対するパブリッシュサブスクライブチャネルとは、チャネルに対するものです。

このクラスの使用は、メッセージを複数のハンドラーに送信するのではなく、複数のチャネルで送信することが不可欠な場合にのみ意味があります。後者がパブリッシュサブスクライブチャネルを使用するオプションである場合は、より柔軟なソリューションです。

作成者:
Mark Fisher, Oleg Zhurakousky, Artem Bilan, Liujiong, Gary Russell