クラス AbstractDispatcher

java.lang.ObjectSE
org.springframework.integration.dispatcher.AbstractDispatcher
実装されたすべてのインターフェース:
MessageDispatcher
既知の直属サブクラス
BroadcastingDispatcherPartitionedDispatcherUnicastingDispatcher

public abstract class AbstractDispatcher extends ObjectSE implements MessageDispatcher
MessageDispatcher 実装の基本クラス。

サブクラスは実際のディスパッチ戦略を実装しますが、この基本クラスは MessageHandler の登録を管理します。実装されたディスパッチ戦略はさまざまな方法でハンドルを呼び出すことができますが(ラウンドロビンとフェイルオーバーなど)、このクラスは基になるコレクションの順序を維持します。詳細については、OrderedAwareCopyOnWriteArraySet を参照してください。

作成者:
Mark Fisher, Iwein Fuld, Oleg Zhurakousky, Gary Russell, Diego Belfer, Artem Bilan, Christian Tzolov
  • フィールドの詳細

    • logger

      protected final Log logger
  • コンストラクターの詳細

    • AbstractDispatcher

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

    • setMaxSubscribers

      public void setMaxSubscribers(int maxSubscribers)
      このディスパッチャーによって許可される最大サブスクライバーを設定します。
      パラメーター:
      maxSubscribers - 許可されるサブスクライバーの最大数。
    • getHandlers

      protected SetSE<MessageHandler> getHandlers()
      このディスパッチャーのハンドラーの変更不可能な SetSE を返します。これは、サブクラスによるアクセスのために提供されています。
      戻り値:
      メッセージハンドラー。
    • addHandler

      public boolean addHandler(MessageHandler handler)
      ハンドラーを内部セットに追加します。
      次で指定:
      インターフェース MessageDispatcheraddHandler 
      パラメーター:
      handler - 追加するハンドラー。
      戻り値:
      Set.add(Object)SE の結果
    • removeHandler

      public boolean removeHandler(MessageHandler handler)
      内部ハンドラーセットからハンドラーを削除します。
      次で指定:
      インターフェース MessageDispatcherremoveHandler 
      パラメーター:
      handler - ハンドラー。
      戻り値:
      Set.remove(Object)SE の結果
    • tryOptimizedDispatch

      protected boolean tryOptimizedDispatch(Message<?> message)
    • toString

      public StringSE toString()
      オーバーライド:
      クラス ObjectSEtoString 
    • getHandlerCount

      public int getHandlerCount()
      インターフェースからコピーされた説明: MessageDispatcher
      現在のハンドラー数を返します。
      次で指定:
      インターフェース MessageDispatchergetHandlerCount 
      戻り値:
      ハンドラー数。