public class MqttPahoMessageHandler extends AbstractMqttMessageHandler implements org.eclipse.paho.client.mqttv3.MqttCallback, org.springframework.context.ApplicationEventPublisherAware
IntegrationManagement.ManagementOverrides| Modifier and Type | Field and Description |
|---|---|
static long |
DEFAULT_COMPLETION_TIMEOUT |
EXPRESSION_PARSER, loggerMETER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME| Constructor and Description |
|---|
MqttPahoMessageHandler(java.lang.String clientId,
MqttPahoClientFactory clientFactory)
Use this constructor if the server URI(s) are provided by the
MqttConnectOptions.getServerURIs()
provided by the MqttPahoClientFactory. |
MqttPahoMessageHandler(java.lang.String url,
java.lang.String clientId)
Use this URL when you don't need additional
MqttConnectOptions. |
MqttPahoMessageHandler(java.lang.String url,
java.lang.String clientId,
MqttPahoClientFactory clientFactory)
Use this constructor for a single url (although it may be overridden
if the server URI(s) are provided by the
MqttConnectOptions.getServerURIs()
provided by the MqttPahoClientFactory). |
| Modifier and Type | Method and Description |
|---|---|
void |
connectionLost(java.lang.Throwable cause) |
void |
deliveryComplete(org.eclipse.paho.client.mqttv3.IMqttDeliveryToken token) |
protected void |
doStart() |
protected void |
doStop() |
void |
messageArrived(java.lang.String topic,
org.eclipse.paho.client.mqttv3.MqttMessage message) |
protected void |
onInit()
Subclasses may implement this for initialization logic.
|
protected void |
publish(java.lang.String topic,
java.lang.Object mqttMessage,
org.springframework.messaging.Message<?> message) |
void |
setApplicationEventPublisher(org.springframework.context.ApplicationEventPublisher applicationEventPublisher) |
void |
setAsync(boolean async)
Set to true if you don't want to block when sending messages.
|
void |
setAsyncEvents(boolean asyncEvents)
When
setAsync(boolean) is true, setting this to true enables
publication of MqttMessageSentEvent and MqttMessageDeliveredEvent
to be emitted. |
void |
setCompletionTimeout(long completionTimeout)
Set the completion timeout for async operations.
|
getClientId, getClientInstance, getComponentType, getConverter, getUrl, handleMessageInternal, incrementClientInstance, isRunning, setConverter, setDefaultQos, setDefaultRetained, setDefaultTopic, setQosExpression, setQosExpressionString, setRetainedExpression, setRetainedExpressionString, setTopicExpression, setTopicExpressionString, start, stopconfigureMetrics, destroy, getActiveCount, getActiveCountLong, getDuration, getErrorCount, getErrorCountLong, getHandleCount, getHandleCountLong, getManagedName, getManagedType, getMaxDuration, getMeanDuration, getMinDuration, getOrder, getOverrides, getStandardDeviationDuration, handleMessage, isCountsEnabled, isLoggingEnabled, isStatsEnabled, onComplete, onError, onNext, onSubscribe, registerMetricsCaptor, reset, setCountsEnabled, setLoggingEnabled, setManagedName, setManagedType, setOrder, setShouldTrack, setStatsEnabledafterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanFactory, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetComponentNamepublic static final long DEFAULT_COMPLETION_TIMEOUT
public MqttPahoMessageHandler(java.lang.String url,
java.lang.String clientId,
MqttPahoClientFactory clientFactory)
MqttConnectOptions.getServerURIs()
provided by the MqttPahoClientFactory).url - the URL.clientId - The client id.clientFactory - The client factory.public MqttPahoMessageHandler(java.lang.String clientId,
MqttPahoClientFactory clientFactory)
MqttConnectOptions.getServerURIs()
provided by the MqttPahoClientFactory.clientId - The client id.clientFactory - The client factory.public MqttPahoMessageHandler(java.lang.String url,
java.lang.String clientId)
MqttConnectOptions.url - The URL.clientId - The client id.public void setAsync(boolean async)
async - true for async.public void setAsyncEvents(boolean asyncEvents)
setAsync(boolean) is true, setting this to true enables
publication of MqttMessageSentEvent and MqttMessageDeliveredEvent
to be emitted. Default false.asyncEvents - the asyncEvents.public void setCompletionTimeout(long completionTimeout)
completionTimeout - The timeout.public void setApplicationEventPublisher(org.springframework.context.ApplicationEventPublisher applicationEventPublisher)
setApplicationEventPublisher in interface org.springframework.context.ApplicationEventPublisherAwareprotected void onInit()
IntegrationObjectSupportonInit in class AbstractMqttMessageHandlerprotected void doStart()
doStart in class AbstractMqttMessageHandlerprotected void doStop()
doStop in class AbstractMqttMessageHandlerprotected void publish(java.lang.String topic,
java.lang.Object mqttMessage,
org.springframework.messaging.Message<?> message)
throws java.lang.Exception
publish in class AbstractMqttMessageHandlerjava.lang.Exceptionpublic void connectionLost(java.lang.Throwable cause)
connectionLost in interface org.eclipse.paho.client.mqttv3.MqttCallbackpublic void messageArrived(java.lang.String topic,
org.eclipse.paho.client.mqttv3.MqttMessage message)
messageArrived in interface org.eclipse.paho.client.mqttv3.MqttCallbackpublic void deliveryComplete(org.eclipse.paho.client.mqttv3.IMqttDeliveryToken token)
deliveryComplete in interface org.eclipse.paho.client.mqttv3.MqttCallback