クラス AbstractMessageRouter

実装されたすべてのインターフェース:
org.reactivestreams.Subscriber<Message<?>>AwareBeanFactoryAwareBeanNameAwareDisposableBeanInitializingBeanApplicationContextAwareOrderedExpressionCapableOrderableIntegrationPatternMessageRouterNamedComponentIntegrationManagementTrackableComponentMessageHandlerreactor.core.CoreSubscriber<Message<?>>
既知の直属サブクラス
AbstractMappingMessageRouterRecipientListRouter

@ManagedResource @IntegrationManagedResource public abstract class AbstractMessageRouter extends AbstractMessageHandler implements MessageRouter
すべてのメッセージルーターの基本クラス。
作成者:
Mark Fisher, Oleg Zhurakousky, Gunnar Hillert, Soby Chacko, Stefan Ferstl, Artem Bilan, Christian Tzolov
  • コンストラクターの詳細

    • AbstractMessageRouter

      public AbstractMessageRouter()
  • メソッドの詳細

    • setDefaultOutputChannel

      public void setDefaultOutputChannel(MessageChannel defaultOutputChannel)
      チャネル解決がチャネルを返さない場合にメッセージを送信するデフォルトのチャネルを設定します。デフォルトのチャネルが提供されておらず、チャネル解決がチャネルを返さない場合、ルータは MessageDeliveryException をスローします。

      代わりにメッセージを無視(ドロップ)する必要がある場合は、NullChannel を指定してください。

      パラメーター:
      defaultOutputChannel - デフォルトの出力チャネル。
    • getDefaultOutputChannel

      public MessageChannel getDefaultOutputChannel()
      デフォルトの出力チャネルを取得します。
      次で指定:
      インターフェース MessageRoutergetDefaultOutputChannel 
      戻り値:
      チャンネル。
      導入:
      4.3
    • setDefaultOutputChannelName

      public void setDefaultOutputChannelName(StringSE defaultOutputChannelName)
    • setSendTimeout

      public void setSendTimeout(long timeout)
      解決されたチャネルにメッセージを送信するためのタイムアウトを設定します。デフォルトでは、30 秒のタイムアウトになります。
      パラメーター:
      timeout - タイムアウト。
      導入:
      4.3
    • setIgnoreSendFailures

      public void setIgnoreSendFailures(boolean ignoreSendFailures)
      1 人以上の受信者の送信失敗を無視するかどうかを指定します。デフォルトでは、これは false で、送信が失敗するたびに例外がスローされることを意味します。これをオーバーライドして例外を抑制するには、値を true に設定します。
      パラメーター:
      ignoreSendFailures - 送信エラーを無視する場合は true。
    • setApplySequence

      public void setApplySequence(boolean applySequence)
      受信者チャネルに送信する前に、シーケンス番号とサイズのヘッダーをメッセージに適用するかどうかを指定します。デフォルトでは、この値は false であり、シーケンスヘッダーは適用されません。Aggregator ダウンストリームをデフォルトの相関および完了戦略で使用することを計画している場合は、このフラグを true に設定する必要があります。
      パラメーター:
      applySequence - シーケンス情報を適用する場合は true。
    • getComponentType

      public StringSE getComponentType()
      クラスからコピーされた説明: IntegrationObjectSupport
      サブクラスはこのメソッドを実装して、コンポーネント型情報を提供できます。
      次で指定:
      インターフェース NamedComponentgetComponentType 
      オーバーライド:
      クラス MessageHandlerSupportgetComponentType 
    • getIntegrationPatternType

      public IntegrationPatternType getIntegrationPatternType()
      インターフェースからコピーされた説明: IntegrationPattern
      このコンポーネントが実装するパターン型を返します。
      次で指定:
      インターフェース IntegrationPatterngetIntegrationPatternType 
      オーバーライド:
      クラス MessageHandlerSupportgetIntegrationPatternType 
      戻り値:
      このコンポーネントが実装する IntegrationPatternType
    • getMessagingTemplate

      protected MessagingTemplate getMessagingTemplate()
      サブクラスに MessagingTemplate アクセスを提供します。
      戻り値:
      メッセージングテンプレート。
    • getRequiredConversionService

      protected ConversionService getRequiredConversionService()
    • onInit

      protected void onInit()
      クラスからコピーされた説明: IntegrationObjectSupport
      サブクラスは、初期化ロジック用にこれを実装できます。
      オーバーライド:
      クラス IntegrationObjectSupportonInit 
    • determineTargetChannels

      protected abstract CollectionSE<MessageChannel> determineTargetChannels(Message<?> message)
      サブクラスはこのメソッドを実装して、指定されたメッセージのルーティング先となる 0 個以上の MessageChannels のコレクションを返す必要があります。
      パラメーター:
      message - メッセージ。
      戻り値:
      メッセージチャネルのコレクション。
    • handleMessageInternal

      protected void handleMessageInternal(Message<?> message)
      次で指定:
      クラス AbstractMessageHandlerhandleMessageInternal