クラス AbstractMessageChannel

java.lang.ObjectSE
org.springframework.messaging.support.AbstractMessageChannel
実装されたすべてのインターフェース:
AwareBeanNameAwareMessageChannelInterceptableChannel
既知の直属サブクラス
AbstractSubscribableChannel

public abstract class AbstractMessageChannel extends ObjectSE implements MessageChannel, InterceptableChannel, BeanNameAware
MessageChannel 実装の抽象基本クラス。
導入:
4.0
作成者:
Rossen Stoyanchev
  • フィールドの詳細

    • logger

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

    • AbstractMessageChannel

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

    • setLogger

      public void setLogger(Log logger)
      クラス名に基づいたロガーよりも使用する代替ロガーを設定します。
      パラメーター:
      logger - 使用するロガー
      導入:
      5.1
    • getLogger

      public Log getLogger()
      現在設定されているロガーを返します。
      導入:
      5.1
    • setBeanName

      public void setBeanName(StringSE name)
      メッセージチャネルは、主にロギング目的で Bean 名を使用します。
      次で指定:
      インターフェース BeanNameAwaresetBeanName 
      パラメーター:
      name - ファクトリ内の Bean の名前。この名前は、ファクトリで使用される実際の Bean 名であり、最初に指定した名前とは異なる場合があります。特に内部 Bean 名の場合、実際の Bean 名は "#..." サフィックスを追加することで一意になります。必要に応じて、BeanFactoryUtils.originalBeanName(String) メソッドを使用して、元の Bean 名(サフィックスなし)を抽出します。
    • getBeanName

      public StringSE getBeanName()
      このメッセージチャネルの Bean 名を返します。
    • setInterceptors

      public void setInterceptors(ListSE<ChannelInterceptor> interceptors)
      インターフェースからコピーされた説明: InterceptableChannel
      既存のインターセプターをクリアするチャネルインターセプターのリストを設定します。
      次で指定:
      インターフェース InterceptableChannelsetInterceptors 
    • addInterceptor

      public void addInterceptor(ChannelInterceptor interceptor)
      インターフェースからコピーされた説明: InterceptableChannel
      リストの最後にチャネルインターセプターを追加します。
      次で指定:
      インターフェース InterceptableChanneladdInterceptor 
    • addInterceptor

      public void addInterceptor(int index, ChannelInterceptor interceptor)
      インターフェースからコピーされた説明: InterceptableChannel
      指定したインデックスにチャネルインターセプターを追加します。
      次で指定:
      インターフェース InterceptableChanneladdInterceptor 
    • getInterceptors

      public ListSE<ChannelInterceptor> getInterceptors()
      インターフェースからコピーされた説明: InterceptableChannel
      設定されたインターセプターのリストを返します。
      次で指定:
      インターフェース InterceptableChannelgetInterceptors 
    • removeInterceptor

      public boolean removeInterceptor(ChannelInterceptor interceptor)
      インターフェースからコピーされた説明: InterceptableChannel
      指定されたインターセプターを削除します。
      次で指定:
      インターフェース InterceptableChannelremoveInterceptor 
    • removeInterceptor

      public ChannelInterceptor removeInterceptor(int index)
      インターフェースからコピーされた説明: InterceptableChannel
      指定されたインデックスにあるインターセプターを削除します。
      次で指定:
      インターフェース InterceptableChannelremoveInterceptor 
    • send

      public final boolean send(Message<?> message)
      インターフェースからコピーされた説明: MessageChannel
      このチャネルに Message を送信します。メッセージが正常に送信されると、メソッドは true を返します。致命的でない理由でメッセージを送信できない場合、メソッドは false を返します。このメソッドは、回復不可能なエラーが発生した場合に RuntimeException をスローすることもあります。

      このメソッドは、実装によっては無期限にブロックされる場合があります。最大待機時間を提供するには、MessageChannel.send(Message, long) を使用します。

      次で指定:
      インターフェース MessageChannelsend 
      パラメーター:
      message - 送信するメッセージ
      戻り値:
      メッセージが送信されたかどうか
    • send

      public final boolean send(Message<?> message, long timeout)
      インターフェースからコピーされた説明: MessageChannel
      メッセージを送信し、メッセージが受け入れられるか、指定されたタイムアウト期間が経過するまでブロックします。
      次で指定:
      インターフェース MessageChannelsend 
      パラメーター:
      message - 送信するメッセージ
      timeout - ミリ秒単位のタイムアウトまたは MessageChannel.INDEFINITE_TIMEOUT
      戻り値:
      メッセージが送信された場合は true、送信の割り込みのタイムアウトが含まれていない場合は false 
    • sendInternal

      protected abstract boolean sendInternal(Message<?> message, long timeout)
    • toString

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