クラス AbstractMqttMessageHandler<T,C>

型パラメーター:
T - MQTT クライアントの種類
C - MQTT 接続オプション型 (v5 または v3)
実装されたすべてのインターフェース:
org.reactivestreams.Subscriber<Message<?>>AwareBeanFactoryAwareBeanNameAwareDisposableBeanInitializingBeanApplicationContextAwareApplicationEventPublisherAwareLifecycleOrderedExpressionCapableOrderableIntegrationPatternNamedComponentIntegrationManagementManageableLifecycleTrackableComponentMessageHandlerreactor.core.CoreSubscriber<Message<?>>
既知の直属サブクラス
MqttPahoMessageHandlerMqttv5PahoMessageHandler

public abstract class AbstractMqttMessageHandler<T,C> extends AbstractMessageHandler implements ManageableLifecycle, ApplicationEventPublisherAware
MQTT 送信・チャネルアダプターの抽象クラス。
導入:
4.0
作成者:
Gary Russell, Artem Bilan, Artem Vozhdayenko
  • フィールドの詳細

    • DISCONNECT_COMPLETION_TIMEOUT

      public static final long DISCONNECT_COMPLETION_TIMEOUT
      ミリ秒単位のデフォルトの切断完了タイムアウト。
      関連事項:
    • DEFAULT_COMPLETION_TIMEOUT

      public static final long DEFAULT_COMPLETION_TIMEOUT
      ミリ秒単位のデフォルトの補完タイムアウト。
      関連事項:
    • lock

      protected final LockSE lock
  • コンストラクターの詳細

    • AbstractMqttMessageHandler

      public AbstractMqttMessageHandler(@Nullable StringSE url, StringSE clientId)
    • AbstractMqttMessageHandler

      public AbstractMqttMessageHandler(ClientManager<T,C> clientManager)
  • メソッドの詳細

    • setApplicationEventPublisher

      public void setApplicationEventPublisher(ApplicationEventPublisher applicationEventPublisher)
      次で指定:
      インターフェース ApplicationEventPublisherAwaresetApplicationEventPublisher 
    • getApplicationEventPublisher

      protected ApplicationEventPublisher getApplicationEventPublisher()
    • setDefaultTopic

      public void setDefaultTopic(StringSE defaultTopic)
      topicExpression が `null` と評価された場合にメッセージが公開されるトピックを設定します。
      パラメーター:
      defaultTopic - デフォルトのトピック。
    • getDefaultTopic

      protected StringSE getDefaultTopic()
    • setTopicExpression

      public void setTopicExpression(Expression topicExpression)
      トピック式を設定します。デフォルトは "headers ['mqtt_topic' ]" です。
      パラメーター:
      topicExpression - 表現。
      導入:
      5.0
    • setTopicExpressionString

      public void setTopicExpressionString(StringSE topicExpression)
      トピック式を設定します。デフォルトは "headers ['mqtt_topic' ]" です。
      パラメーター:
      topicExpression - 表現。
      導入:
      5.0
    • getTopicProcessor

      protected MessageProcessor<StringSE> getTopicProcessor()
    • setDefaultQos

      public void setDefaultQos(int defaultQos)
      qosExpression が null と評価される場合、メッセージの qos を設定します。メッセージコンバーターが提供されていない場合にのみ適用されます。
      パラメーター:
      defaultQos - デフォルトの QoS。
      関連事項:
    • getDefaultQos

      protected int getDefaultQos()
    • setQosExpression

      public void setQosExpression(Expression qosExpression)
      qos 式を設定します。デフォルトは "headers ['mqtt_qos' ]" です。メッセージコンバーターが提供されていない場合にのみ適用されます。
      パラメーター:
      qosExpression - 表現。
      導入:
      5.0
      関連事項:
    • setQosExpressionString

      public void setQosExpressionString(StringSE qosExpression)
      qos 式を設定します。デフォルトは "headers ['mqtt_qos' ]" です。メッセージコンバーターが提供されていない場合にのみ適用されます。
      パラメーター:
      qosExpression - 表現。
      導入:
      5.0
      関連事項:
    • getQosProcessor

      protected MessageProcessor<IntegerSE> getQosProcessor()
    • setDefaultRetained

      public void setDefaultRetained(boolean defaultRetained)
      retainedExpression が null と評価された場合、メッセージの保持ブール値を設定します。メッセージコンバーターが提供されていない場合にのみ適用されます。
      パラメーター:
      defaultRetained - デフォルトの defaultRetained。
      関連事項:
    • getDefaultRetained

      protected boolean getDefaultRetained()
    • setRetainedExpression

      public void setRetainedExpression(Expression retainedExpression)
      保持された式を設定します。デフォルトは "headers ['mqtt_retained' ]" です。メッセージコンバーターが提供されていない場合にのみ適用されます。
      パラメーター:
      retainedExpression - 表現。
      導入:
      5.0
      関連事項:
    • setRetainedExpressionString

      public void setRetainedExpressionString(StringSE retainedExpression)
      保持された式を設定します。デフォルトは "headers ['mqtt_retained' ]" です。メッセージコンバーターが提供されていない場合にのみ適用されます。
      パラメーター:
      retainedExpression - 表現。
      導入:
      5.0
      関連事項:
    • getRetainedProcessor

      protected MessageProcessor<BooleanSE> getRetainedProcessor()
    • setConverter

      public void setConverter(MessageConverter converter)
      使用するメッセージコンバーターを設定します。これが指定されている場合、アダプターの QoS および保持されている設定は無視されます。
      パラメーター:
      converter - コンバーター。
    • getConverter

      protected MessageConverter getConverter()
    • getUrl

      @Nullable protected StringSE getUrl()
    • getClientId

      @Nullable public StringSE getClientId()
    • getClientInstance

      public int getClientInstance()
      クライアントが接続されるたびに増加します。
      戻り値:
      インスタンス。
      導入:
      4.1
    • getComponentType

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

      protected void incrementClientInstance()
    • setCompletionTimeout

      public void setCompletionTimeout(long completionTimeout)
      非同期操作の補完タイムアウトを設定します。名前空間を使用して設定できません。デフォルトの 30000L ミリ秒。
      パラメーター:
      completionTimeout - タイムアウト。
      導入:
      4.1
    • getCompletionTimeout

      protected long getCompletionTimeout()
    • setDisconnectCompletionTimeout

      public void setDisconnectCompletionTimeout(long completionTimeout)
      切断時の補完タイムアウトを設定します。名前空間を使用して設定することはできません。デフォルトの 5000L ミリ秒。
      パラメーター:
      completionTimeout - タイムアウト。
      導入:
      5.1.10
    • getDisconnectCompletionTimeout

      protected long getDisconnectCompletionTimeout()
    • getClientManager

      @Nullable protected ClientManager<T,C> getClientManager()
    • onInit

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

      public final void start()
      次で指定:
      インターフェース Lifecyclestart 
      次で指定:
      インターフェース ManageableLifecyclestart 
    • doStart

      protected abstract void doStart()
    • stop

      public final void stop()
      次で指定:
      インターフェース Lifecyclestop 
      次で指定:
      インターフェース ManageableLifecyclestop 
    • doStop

      protected abstract void doStop()
    • isRunning

      public boolean isRunning()
      次で指定:
      インターフェース LifecycleisRunning 
      次で指定:
      インターフェース ManageableLifecycleisRunning 
    • handleMessageInternal

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

      protected abstract void publish(StringSE topic, ObjectSE mqttMessage, Message<?> message)