public class MqttPahoMessageHandler extends AbstractMqttMessageHandler implements org.eclipse.paho.client.mqttv3.MqttCallback, MqttPahoComponent, ApplicationEventPublisherAware
MqttIntegrationEvent
を使用する場合は、MqttPahoComponent handler = event.getSourceAsType()
を使用して参照を取得し、Bean 名と MqttConnectOptions
を取得できるようにします。この手法により、同じイベントリスナー内の受信エンドポイントと送信エンドポイントの両方からのイベントを利用できます。IntegrationManagement.ManagementOverrides
修飾子と型 | フィールドと説明 |
---|---|
static long | DEFAULT_COMPLETION_TIMEOUT ミリ秒単位のデフォルトの完了タイムアウト。 |
static long | DISCONNECT_COMPLETION_TIMEOUT ミリ秒単位のデフォルトの切断完了タイムアウト。 |
EXPRESSION_PARSER, logger
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME
コンストラクターと説明 |
---|
MqttPahoMessageHandler(StringSE clientId, MqttPahoClientFactory clientFactory) サーバー URI が MqttPahoClientFactory によって提供される MqttConnectOptions.getServerURIs() によって提供される場合、このコンストラクターを使用します。 |
MqttPahoMessageHandler(StringSE url, StringSE clientId) 追加の MqttConnectOptions が必要ない場合は、このコンストラクターを使用します。 |
MqttPahoMessageHandler(StringSE url, StringSE clientId, MqttPahoClientFactory clientFactory) 単一の URL に対してこのコンストラクターを使用します(ただし、サーバー URI が MqttPahoClientFactory によって提供される MqttConnectOptions.getServerURIs() によって提供される場合はオーバーライドされる場合があります)。 |
修飾子と型 | メソッドと説明 |
---|---|
void | connectionLost(ThrowableSE cause) |
void | deliveryComplete(org.eclipse.paho.client.mqttv3.IMqttDeliveryToken token) |
protected void | doStart() |
protected void | doStop() |
org.eclipse.paho.client.mqttv3.MqttConnectOptions | getConnectionInfo() 接続に関する情報を返します。 |
void | messageArrived(StringSE topic, org.eclipse.paho.client.mqttv3.MqttMessage message) |
protected void | onInit() サブクラスは、初期化ロジック用にこれを実装できます。 |
protected void | publish(StringSE topic, ObjectSE mqttMessage, Message<?> message) |
void | setApplicationEventPublisher(ApplicationEventPublisher applicationEventPublisher) |
void | setAsync(boolean async) メッセージを送信するときにブロックしない場合は、true に設定します。 |
void | setAsyncEvents(boolean asyncEvents) setAsync(boolean) が true の場合、これを true に設定すると、MqttMessageSentEvent および MqttMessageDeliveredEvent の発行が発行されます。 |
void | setCompletionTimeout(long completionTimeout) 非同期操作の完了タイムアウトを設定します。 |
void | setDisconnectCompletionTimeout(long completionTimeout) 切断時の完了タイムアウトを設定します。 |
getClientId, getClientInstance, getComponentType, getConverter, getUrl, handleMessageInternal, incrementClientInstance, isRunning, setConverter, setDefaultQos, setDefaultRetained, setDefaultTopic, setQosExpression, setQosExpressionString, setRetainedExpression, setRetainedExpressionString, setTopicExpression, setTopicExpressionString, start, stop
handleMessage, onComplete, onError, onNext, onSubscribe
buildSendTimer, destroy, getIntegrationPatternType, getManagedName, getManagedType, getMetricsCaptor, getOrder, getOverrides, isLoggingEnabled, registerMetricsCaptor, sendTimer, setLoggingEnabled, setManagedName, setManagedType, setOrder, setShouldTrack, shouldTrack
afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toString
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, waitSE, waitSE, waitSE
getBeanName
setBeanName
getThisAs
getBeanName, getComponentName
public static final long DEFAULT_COMPLETION_TIMEOUT
public static final long DISCONNECT_COMPLETION_TIMEOUT
public MqttPahoMessageHandler(StringSE url, StringSE clientId, MqttPahoClientFactory clientFactory)
MqttPahoClientFactory
によって提供される MqttConnectOptions.getServerURIs()
によって提供される場合はオーバーライドされる場合があります)。url
- URL。clientId
- クライアント ID。clientFactory
- クライアントファクトリ。public MqttPahoMessageHandler(StringSE clientId, MqttPahoClientFactory clientFactory)
MqttPahoClientFactory
によって提供される MqttConnectOptions.getServerURIs()
によって提供される場合、このコンストラクターを使用します。clientId
- クライアント ID。clientFactory
- クライアントファクトリ。public void setAsync(boolean async)
async
- 非同期の場合は true。public void setAsyncEvents(boolean asyncEvents)
setAsync(boolean)
が true の場合、これを true に設定すると、MqttMessageSentEvent
および MqttMessageDeliveredEvent
の発行が発行されます。デフォルトは false。asyncEvents
- asyncEvents。public void setCompletionTimeout(long completionTimeout)
completionTimeout
- タイムアウト。public void setDisconnectCompletionTimeout(long completionTimeout)
completionTimeout
- タイムアウト。public void setApplicationEventPublisher(ApplicationEventPublisher applicationEventPublisher)
ApplicationEventPublisherAware
の setApplicationEventPublisher
public org.eclipse.paho.client.mqttv3.MqttConnectOptions getConnectionInfo()
MqttComponent
MqttComponent<org.eclipse.paho.client.mqttv3.MqttConnectOptions>
の getConnectionInfo
MqttPahoComponent
の getConnectionInfo
protected void onInit()
IntegrationObjectSupport
AbstractMqttMessageHandler
の onInit
protected void doStart()
AbstractMqttMessageHandler
の doStart
protected void doStop()
AbstractMqttMessageHandler
の doStop
protected void publish(StringSE topic, ObjectSE mqttMessage, Message<?> message)
AbstractMqttMessageHandler
の publish
public void connectionLost(ThrowableSE cause)
org.eclipse.paho.client.mqttv3.MqttCallback
の connectionLost
public void messageArrived(StringSE topic, org.eclipse.paho.client.mqttv3.MqttMessage message)
org.eclipse.paho.client.mqttv3.MqttCallback
の messageArrived
public void deliveryComplete(org.eclipse.paho.client.mqttv3.IMqttDeliveryToken token)
org.eclipse.paho.client.mqttv3.MqttCallback
の deliveryComplete