public class MqttPahoMessageHandler extends AbstractMqttMessageHandler implements org.eclipse.paho.client.mqttv3.MqttCallback, ApplicationEventPublisherAware
IntegrationManagement.ManagementOverrides| Modifier and Type | Field and Description |
|---|---|
static long |
DEFAULT_COMPLETION_TIMEOUT |
EXPRESSION_PARSER, loggerMETER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAMEHIGHEST_PRECEDENCE, LOWEST_PRECEDENCE| Constructor and Description |
|---|
MqttPahoMessageHandler(String clientId,
MqttPahoClientFactory clientFactory)
Use this constructor if the server URI(s) are provided by the
MqttConnectOptions.getServerURIs()
provided by the MqttPahoClientFactory. |
MqttPahoMessageHandler(String url,
String clientId)
Use this URL when you don't need additional
MqttConnectOptions. |
MqttPahoMessageHandler(String url,
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(Throwable cause) |
void |
deliveryComplete(org.eclipse.paho.client.mqttv3.IMqttDeliveryToken token) |
protected void |
doStart() |
protected void |
doStop() |
void |
messageArrived(String topic,
org.eclipse.paho.client.mqttv3.MqttMessage message) |
protected void |
onInit()
Subclasses may implement this for initialization logic.
|
protected void |
publish(String topic,
Object mqttMessage,
Message<?> message) |
void |
setApplicationEventPublisher(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, getBeanName, 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, waiterrorCount, handleCountgetBeanName, getComponentNamepublic static final long DEFAULT_COMPLETION_TIMEOUT
public MqttPahoMessageHandler(String url, String clientId, MqttPahoClientFactory clientFactory)
MqttConnectOptions.getServerURIs()
provided by the MqttPahoClientFactory).url - the URL.clientId - The client id.clientFactory - The client factory.public MqttPahoMessageHandler(String clientId, MqttPahoClientFactory clientFactory)
MqttConnectOptions.getServerURIs()
provided by the MqttPahoClientFactory.clientId - The client id.clientFactory - The client factory.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(ApplicationEventPublisher applicationEventPublisher)
setApplicationEventPublisher in interface ApplicationEventPublisherAwareprotected void onInit()
IntegrationObjectSupportonInit in class AbstractMqttMessageHandlerprotected void doStart()
doStart in class AbstractMqttMessageHandlerprotected void doStop()
doStop in class AbstractMqttMessageHandlerprotected void publish(String topic, Object mqttMessage, Message<?> message)
publish in class AbstractMqttMessageHandlerpublic void connectionLost(Throwable cause)
connectionLost in interface org.eclipse.paho.client.mqttv3.MqttCallbackpublic void messageArrived(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