public abstract class AbstractMqttMessageHandler
extends org.springframework.integration.handler.AbstractMessageHandler
implements org.springframework.context.Lifecycle
EXPRESSION_PARSER, logger| Constructor and Description |
|---|
AbstractMqttMessageHandler(java.lang.String url,
java.lang.String clientId) |
| Modifier and Type | Method and Description |
|---|---|
protected abstract void |
doStart() |
protected abstract void |
doStop() |
java.lang.String |
getClientId() |
int |
getClientInstance()
Incremented each time the client is connected.
|
java.lang.String |
getComponentType() |
protected org.springframework.messaging.converter.MessageConverter |
getConverter() |
protected java.lang.String |
getUrl() |
protected void |
handleMessageInternal(org.springframework.messaging.Message<?> message) |
protected void |
incrementClientInstance() |
boolean |
isRunning() |
protected void |
onInit() |
protected abstract void |
publish(java.lang.String topic,
java.lang.Object mqttMessage,
org.springframework.messaging.Message<?> message) |
void |
setConverter(org.springframework.messaging.converter.MessageConverter converter)
Set the message converter to use; if this is provided, the adapter qos and retained
settings are ignored.
|
void |
setDefaultQos(int defaultQos)
Set the qos for messages if the
qosExpression
evaluates to null. |
void |
setDefaultRetained(boolean defaultRetained)
Set the retained boolean for messages if the
retainedExpression evaluates to null. |
void |
setDefaultTopic(java.lang.String defaultTopic)
Set the topic to which the message will be published if the
topicExpression evaluates to `null`. |
void |
setQosExpression(org.springframework.expression.Expression qosExpression)
Set the qos expression; default "headers['mqtt_qos']".
|
void |
setQosExpressionString(java.lang.String qosExpression)
Set the qos expression; default "headers['mqtt_qos']".
|
void |
setRetainedExpression(org.springframework.expression.Expression retainedExpression)
Set the retained expression; default "headers['mqtt_retained']".
|
void |
setRetainedExpressionString(java.lang.String retainedExpression)
Set the retained expression; default "headers['mqtt_retained']".
|
void |
setTopicExpression(org.springframework.expression.Expression topicExpression)
Set the topic expression; default "headers['mqtt_topic']".
|
void |
setTopicExpressionString(java.lang.String topicExpression)
Set the topic expression; default "headers['mqtt_topic']".
|
void |
start() |
void |
stop() |
configureMetrics, 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, 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, waitpublic AbstractMqttMessageHandler(java.lang.String url,
java.lang.String clientId)
public void setDefaultTopic(java.lang.String defaultTopic)
topicExpression evaluates to `null`.defaultTopic - the default topic.public void setTopicExpression(org.springframework.expression.Expression topicExpression)
topicExpression - the expression.public void setTopicExpressionString(java.lang.String topicExpression)
topicExpression - the expression.public void setDefaultQos(int defaultQos)
qosExpression
evaluates to null. Only applies if a message converter is not provided.defaultQos - the default qos.setConverter(MessageConverter)public void setQosExpression(org.springframework.expression.Expression qosExpression)
qosExpression - the expression.setConverter(MessageConverter)public void setQosExpressionString(java.lang.String qosExpression)
qosExpression - the expression.setConverter(MessageConverter)public void setDefaultRetained(boolean defaultRetained)
retainedExpression evaluates to null.
Only applies if a message converter is not provided.defaultRetained - the default defaultRetained.setConverter(MessageConverter)public void setRetainedExpression(org.springframework.expression.Expression retainedExpression)
retainedExpression - the expression.setConverter(MessageConverter)public void setRetainedExpressionString(java.lang.String retainedExpression)
retainedExpression - the expression.setConverter(MessageConverter)public void setConverter(org.springframework.messaging.converter.MessageConverter converter)
converter - the converter.protected org.springframework.messaging.converter.MessageConverter getConverter()
protected java.lang.String getUrl()
public java.lang.String getClientId()
public int getClientInstance()
public java.lang.String getComponentType()
getComponentType in interface org.springframework.integration.support.context.NamedComponentgetComponentType in class org.springframework.integration.handler.AbstractMessageHandlerprotected void incrementClientInstance()
protected void onInit()
throws java.lang.Exception
onInit in class org.springframework.integration.handler.AbstractMessageHandlerjava.lang.Exceptionpublic final void start()
start in interface org.springframework.context.Lifecycleprotected abstract void doStart()
public final void stop()
stop in interface org.springframework.context.Lifecycleprotected abstract void doStop()
public boolean isRunning()
isRunning in interface org.springframework.context.Lifecycleprotected void handleMessageInternal(org.springframework.messaging.Message<?> message)
throws java.lang.Exception
handleMessageInternal in class org.springframework.integration.handler.AbstractMessageHandlerjava.lang.Exceptionprotected abstract void publish(java.lang.String topic,
java.lang.Object mqttMessage,
org.springframework.messaging.Message<?> message)
throws java.lang.Exception
java.lang.Exception