This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-spring-boot.git
The following commit(s) were added to refs/heads/main by this push:
new 2a7ce3b390b CAMEL-21589: Enable manual acks mqtt5
2a7ce3b390b is described below
commit 2a7ce3b390bf1f3e44565f263541c3c7949406ec
Author: Claus Ibsen <[email protected]>
AuthorDate: Wed Jan 8 09:31:46 2025 +0100
CAMEL-21589: Enable manual acks mqtt5
---
.../springboot/catalog/components/paho-mqtt5.json | 50 +++++++++++-----------
.../src/main/docs/paho-mqtt5.json | 7 +++
.../PahoMqtt5ComponentConfiguration.java | 18 ++++++++
3 files changed, 51 insertions(+), 24 deletions(-)
diff --git
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/paho-mqtt5.json
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/paho-mqtt5.json
index 5668947f84d..8b1991bc590 100644
---
a/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/paho-mqtt5.json
+++
b/catalog/camel-catalog-provider-springboot/src/main/resources/org/apache/camel/springboot/catalog/components/paho-mqtt5.json
@@ -45,17 +45,18 @@
"willRetained": { "index": 18, "kind": "property", "displayName": "Will
Retained", "group": "common", "label": "", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the Last Will and
Testament (LWT) for the connection. In the event that this client u [...]
"willTopic": { "index": 19, "kind": "property", "displayName": "Will
Topic", "group": "common", "label": "", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "autowired": false,
"secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the Last Will and
Testament (LWT) for the connection. In the event that this client unexpectedly
loses its [...]
"bridgeErrorHandler": { "index": 20, "kind": "property", "displayName":
"Bridge Error Handler", "group": "consumer", "label": "consumer", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Allows for bridging the consumer to the Camel routing Error Handler, which
mean any exceptions (if possible) occurred while the Camel consumer is trying
to pickup incoming messages, or the lik [...]
- "lazyStartProducer": { "index": 21, "kind": "property", "displayName":
"Lazy Start Producer", "group": "producer", "label": "producer", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Whether the producer should be started lazy (on the first message). By
starting lazy you can use this to allow CamelContext and routes to startup in
situations where a producer may otherwise fai [...]
- "autowiredEnabled": { "index": 22, "kind": "property", "displayName":
"Autowired Enabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": true, "description":
"Whether autowiring is enabled. This is used for automatic autowiring options
(the option must be marked as autowired) by looking up in the registry to find
if there is a single instance of matching [...]
- "client": { "index": 23, "kind": "property", "displayName": "Client",
"group": "advanced", "label": "advanced", "required": false, "type": "object",
"javaType": "org.eclipse.paho.mqttv5.client.MqttClient", "deprecated": false,
"autowired": false, "secret": false, "description": "To use a shared Paho
client" },
- "customWebSocketHeaders": { "index": 24, "kind": "property",
"displayName": "Custom Web Socket Headers", "group": "advanced", "label":
"advanced", "required": false, "type": "object", "javaType":
"java.util.Map<java.lang.String, java.lang.String>", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the Custom
WebSocket Headers for th [...]
- "executorServiceTimeout": { "index": 25, "kind": "property",
"displayName": "Executor Service Timeout", "group": "advanced", "label":
"advanced", "required": false, "type": "integer", "javaType": "int",
"deprecated": false, "autowired": false, "secret": false, "defaultValue": 1,
"configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Set the time in seconds
that the executor service should wait when [...]
- "httpsHostnameVerificationEnabled": { "index": 26, "kind": "property",
"displayName": "Https Hostname Verification Enabled", "group": "security",
"label": "security", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": true, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Whether SSL
HostnameVerifier is enabled [...]
- "password": { "index": 27, "kind": "property", "displayName": "Password",
"group": "security", "label": "security", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": true, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Password to be used for
authentication against the MQTT broker" },
- "socketFactory": { "index": 28, "kind": "property", "displayName": "Socket
Factory", "group": "security", "label": "security", "required": false, "type":
"object", "javaType": "javax.net.SocketFactory", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the SocketFactory
to use. This allows an application to apply its own policies ar [...]
- "sslClientProps": { "index": 29, "kind": "property", "displayName": "Ssl
Client Props", "group": "security", "label": "security", "required": false,
"type": "object", "javaType": "java.util.Properties", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the SSL properties
for the connection. Note that these properties are only valid [...]
- "sslHostnameVerifier": { "index": 30, "kind": "property", "displayName":
"Ssl Hostname Verifier", "group": "security", "label": "security", "required":
false, "type": "object", "javaType": "javax.net.ssl.HostnameVerifier",
"deprecated": false, "autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the
HostnameVerifier for the SSL connection. Note that it wil [...]
- "userName": { "index": 31, "kind": "property", "displayName": "User Name",
"group": "security", "label": "security", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": true, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Username to be used for
authentication against the MQTT broker" }
+ "manualAcksEnabled": { "index": 21, "kind": "property", "displayName":
"Manual Acks Enabled", "group": "consumer", "label": "consumer", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false,
"configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets whether to use
manual acknowledgements for the client. By defaul [...]
+ "lazyStartProducer": { "index": 22, "kind": "property", "displayName":
"Lazy Start Producer", "group": "producer", "label": "producer", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false, "description":
"Whether the producer should be started lazy (on the first message). By
starting lazy you can use this to allow CamelContext and routes to startup in
situations where a producer may otherwise fai [...]
+ "autowiredEnabled": { "index": 23, "kind": "property", "displayName":
"Autowired Enabled", "group": "advanced", "label": "advanced", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": true, "description":
"Whether autowiring is enabled. This is used for automatic autowiring options
(the option must be marked as autowired) by looking up in the registry to find
if there is a single instance of matching [...]
+ "client": { "index": 24, "kind": "property", "displayName": "Client",
"group": "advanced", "label": "advanced", "required": false, "type": "object",
"javaType": "org.eclipse.paho.mqttv5.client.MqttClient", "deprecated": false,
"autowired": false, "secret": false, "description": "To use a shared Paho
client" },
+ "customWebSocketHeaders": { "index": 25, "kind": "property",
"displayName": "Custom Web Socket Headers", "group": "advanced", "label":
"advanced", "required": false, "type": "object", "javaType":
"java.util.Map<java.lang.String, java.lang.String>", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the Custom
WebSocket Headers for th [...]
+ "executorServiceTimeout": { "index": 26, "kind": "property",
"displayName": "Executor Service Timeout", "group": "advanced", "label":
"advanced", "required": false, "type": "integer", "javaType": "int",
"deprecated": false, "autowired": false, "secret": false, "defaultValue": 1,
"configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Set the time in seconds
that the executor service should wait when [...]
+ "httpsHostnameVerificationEnabled": { "index": 27, "kind": "property",
"displayName": "Https Hostname Verification Enabled", "group": "security",
"label": "security", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": true, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Whether SSL
HostnameVerifier is enabled [...]
+ "password": { "index": 28, "kind": "property", "displayName": "Password",
"group": "security", "label": "security", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": true, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Password to be used for
authentication against the MQTT broker" },
+ "socketFactory": { "index": 29, "kind": "property", "displayName": "Socket
Factory", "group": "security", "label": "security", "required": false, "type":
"object", "javaType": "javax.net.SocketFactory", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the SocketFactory
to use. This allows an application to apply its own policies ar [...]
+ "sslClientProps": { "index": 30, "kind": "property", "displayName": "Ssl
Client Props", "group": "security", "label": "security", "required": false,
"type": "object", "javaType": "java.util.Properties", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the SSL properties
for the connection. Note that these properties are only valid [...]
+ "sslHostnameVerifier": { "index": 31, "kind": "property", "displayName":
"Ssl Hostname Verifier", "group": "security", "label": "security", "required":
false, "type": "object", "javaType": "javax.net.ssl.HostnameVerifier",
"deprecated": false, "autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the
HostnameVerifier for the SSL connection. Note that it wil [...]
+ "userName": { "index": 32, "kind": "property", "displayName": "User Name",
"group": "security", "label": "security", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": true, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Username to be used for
authentication against the MQTT broker" }
},
"headers": {
"CamelMqttTopic": { "index": 0, "kind": "header", "displayName": "",
"group": "consumer", "label": "consumer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The name of the topic.", "constantName":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Constants#MQTT_TOPIC" },
@@ -86,18 +87,19 @@
"willQos": { "index": 17, "kind": "parameter", "displayName": "Will Qos",
"group": "common", "label": "", "required": false, "type": "integer",
"javaType": "int", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": 1, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the Last Will and
Testament (LWT) for the connection. In the event that this client unexpectedly
loses [...]
"willRetained": { "index": 18, "kind": "parameter", "displayName": "Will
Retained", "group": "common", "label": "", "required": false, "type":
"boolean", "javaType": "boolean", "deprecated": false, "autowired": false,
"secret": false, "defaultValue": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the Last Will and
Testament (LWT) for the connection. In the event that this client [...]
"willTopic": { "index": 19, "kind": "parameter", "displayName": "Will
Topic", "group": "common", "label": "", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "autowired": false,
"secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the Last Will and
Testament (LWT) for the connection. In the event that this client unexpectedly
loses it [...]
- "bridgeErrorHandler": { "index": 20, "kind": "parameter", "displayName":
"Bridge Error Handler", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": false, "description": "Allows for bridging the consumer to the
Camel routing Error Handler, which mean any exceptions (if possible) occurred
while the Camel consumer is trying to pickup incoming [...]
- "exceptionHandler": { "index": 21, "kind": "parameter", "displayName":
"Exception Handler", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "object", "javaType":
"org.apache.camel.spi.ExceptionHandler", "optionalPrefix": "consumer.",
"deprecated": false, "autowired": false, "secret": false, "description": "To
let the consumer use a custom ExceptionHandler. Notice if the option
bridgeErrorHandler is enabled then this option is not in use. By de [...]
- "exchangePattern": { "index": 22, "kind": "parameter", "displayName":
"Exchange Pattern", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "object", "javaType":
"org.apache.camel.ExchangePattern", "enum": [ "InOnly", "InOut" ],
"deprecated": false, "autowired": false, "secret": false, "description": "Sets
the exchange pattern when the consumer creates an exchange." },
- "lazyStartProducer": { "index": 23, "kind": "parameter", "displayName":
"Lazy Start Producer", "group": "producer (advanced)", "label":
"producer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": false, "description": "Whether the producer should be started
lazy (on the first message). By starting lazy you can use this to allow
CamelContext and routes to startup in situations where a produ [...]
- "client": { "index": 24, "kind": "parameter", "displayName": "Client",
"group": "advanced", "label": "advanced", "required": false, "type": "object",
"javaType": "org.eclipse.paho.mqttv5.client.MqttClient", "deprecated": false,
"autowired": false, "secret": false, "description": "To use an existing mqtt
client" },
- "customWebSocketHeaders": { "index": 25, "kind": "parameter",
"displayName": "Custom Web Socket Headers", "group": "advanced", "label":
"advanced", "required": false, "type": "object", "javaType":
"java.util.Map<java.lang.String, java.lang.String>", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the Custom
WebSocket Headers for t [...]
- "executorServiceTimeout": { "index": 26, "kind": "parameter",
"displayName": "Executor Service Timeout", "group": "advanced", "label":
"advanced", "required": false, "type": "integer", "javaType": "int",
"deprecated": false, "autowired": false, "secret": false, "defaultValue": 1,
"configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Set the time in seconds
that the executor service should wait when [...]
- "httpsHostnameVerificationEnabled": { "index": 27, "kind": "parameter",
"displayName": "Https Hostname Verification Enabled", "group": "security",
"label": "security", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": true, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Whether SSL
HostnameVerifier is enable [...]
- "password": { "index": 28, "kind": "parameter", "displayName": "Password",
"group": "security", "label": "security", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": true, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Password to be used for
authentication against the MQTT broker" },
- "socketFactory": { "index": 29, "kind": "parameter", "displayName":
"Socket Factory", "group": "security", "label": "security", "required": false,
"type": "object", "javaType": "javax.net.SocketFactory", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the SocketFactory
to use. This allows an application to apply its own policies a [...]
- "sslClientProps": { "index": 30, "kind": "parameter", "displayName": "Ssl
Client Props", "group": "security", "label": "security", "required": false,
"type": "object", "javaType": "java.util.Properties", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the SSL properties
for the connection. Note that these properties are only valid [...]
- "sslHostnameVerifier": { "index": 31, "kind": "parameter", "displayName":
"Ssl Hostname Verifier", "group": "security", "label": "security", "required":
false, "type": "object", "javaType": "javax.net.ssl.HostnameVerifier",
"deprecated": false, "autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the
HostnameVerifier for the SSL connection. Note that it wi [...]
- "userName": { "index": 32, "kind": "parameter", "displayName": "User
Name", "group": "security", "label": "security", "required": false, "type":
"string", "javaType": "java.lang.String", "deprecated": false,
"deprecationNote": "", "autowired": false, "secret": true,
"configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Username to be used for
authentication against the MQTT broker" }
+ "manualAcksEnabled": { "index": 20, "kind": "parameter", "displayName":
"Manual Acks Enabled", "group": "consumer", "label": "consumer", "required":
false, "type": "boolean", "javaType": "boolean", "deprecated": false,
"autowired": false, "secret": false, "defaultValue": false,
"configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets whether to use
manual acknowledgements for the client. By defau [...]
+ "bridgeErrorHandler": { "index": 21, "kind": "parameter", "displayName":
"Bridge Error Handler", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": false, "description": "Allows for bridging the consumer to the
Camel routing Error Handler, which mean any exceptions (if possible) occurred
while the Camel consumer is trying to pickup incoming [...]
+ "exceptionHandler": { "index": 22, "kind": "parameter", "displayName":
"Exception Handler", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "object", "javaType":
"org.apache.camel.spi.ExceptionHandler", "optionalPrefix": "consumer.",
"deprecated": false, "autowired": false, "secret": false, "description": "To
let the consumer use a custom ExceptionHandler. Notice if the option
bridgeErrorHandler is enabled then this option is not in use. By de [...]
+ "exchangePattern": { "index": 23, "kind": "parameter", "displayName":
"Exchange Pattern", "group": "consumer (advanced)", "label":
"consumer,advanced", "required": false, "type": "object", "javaType":
"org.apache.camel.ExchangePattern", "enum": [ "InOnly", "InOut" ],
"deprecated": false, "autowired": false, "secret": false, "description": "Sets
the exchange pattern when the consumer creates an exchange." },
+ "lazyStartProducer": { "index": 24, "kind": "parameter", "displayName":
"Lazy Start Producer", "group": "producer (advanced)", "label":
"producer,advanced", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": false, "description": "Whether the producer should be started
lazy (on the first message). By starting lazy you can use this to allow
CamelContext and routes to startup in situations where a produ [...]
+ "client": { "index": 25, "kind": "parameter", "displayName": "Client",
"group": "advanced", "label": "advanced", "required": false, "type": "object",
"javaType": "org.eclipse.paho.mqttv5.client.MqttClient", "deprecated": false,
"autowired": false, "secret": false, "description": "To use an existing mqtt
client" },
+ "customWebSocketHeaders": { "index": 26, "kind": "parameter",
"displayName": "Custom Web Socket Headers", "group": "advanced", "label":
"advanced", "required": false, "type": "object", "javaType":
"java.util.Map<java.lang.String, java.lang.String>", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the Custom
WebSocket Headers for t [...]
+ "executorServiceTimeout": { "index": 27, "kind": "parameter",
"displayName": "Executor Service Timeout", "group": "advanced", "label":
"advanced", "required": false, "type": "integer", "javaType": "int",
"deprecated": false, "autowired": false, "secret": false, "defaultValue": 1,
"configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Set the time in seconds
that the executor service should wait when [...]
+ "httpsHostnameVerificationEnabled": { "index": 28, "kind": "parameter",
"displayName": "Https Hostname Verification Enabled", "group": "security",
"label": "security", "required": false, "type": "boolean", "javaType":
"boolean", "deprecated": false, "autowired": false, "secret": false,
"defaultValue": true, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Whether SSL
HostnameVerifier is enable [...]
+ "password": { "index": 29, "kind": "parameter", "displayName": "Password",
"group": "security", "label": "security", "required": false, "type": "string",
"javaType": "java.lang.String", "deprecated": false, "deprecationNote": "",
"autowired": false, "secret": true, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Password to be used for
authentication against the MQTT broker" },
+ "socketFactory": { "index": 30, "kind": "parameter", "displayName":
"Socket Factory", "group": "security", "label": "security", "required": false,
"type": "object", "javaType": "javax.net.SocketFactory", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the SocketFactory
to use. This allows an application to apply its own policies a [...]
+ "sslClientProps": { "index": 31, "kind": "parameter", "displayName": "Ssl
Client Props", "group": "security", "label": "security", "required": false,
"type": "object", "javaType": "java.util.Properties", "deprecated": false,
"autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the SSL properties
for the connection. Note that these properties are only valid [...]
+ "sslHostnameVerifier": { "index": 32, "kind": "parameter", "displayName":
"Ssl Hostname Verifier", "group": "security", "label": "security", "required":
false, "type": "object", "javaType": "javax.net.ssl.HostnameVerifier",
"deprecated": false, "autowired": false, "secret": false, "configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Sets the
HostnameVerifier for the SSL connection. Note that it wi [...]
+ "userName": { "index": 33, "kind": "parameter", "displayName": "User
Name", "group": "security", "label": "security", "required": false, "type":
"string", "javaType": "java.lang.String", "deprecated": false,
"deprecationNote": "", "autowired": false, "secret": true,
"configurationClass":
"org.apache.camel.component.paho.mqtt5.PahoMqtt5Configuration",
"configurationField": "configuration", "description": "Username to be used for
authentication against the MQTT broker" }
}
}
diff --git
a/components-starter/camel-paho-mqtt5-starter/src/main/docs/paho-mqtt5.json
b/components-starter/camel-paho-mqtt5-starter/src/main/docs/paho-mqtt5.json
index 301c27fe7ba..c9db6ae36fe 100644
--- a/components-starter/camel-paho-mqtt5-starter/src/main/docs/paho-mqtt5.json
+++ b/components-starter/camel-paho-mqtt5-starter/src/main/docs/paho-mqtt5.json
@@ -124,6 +124,13 @@
"sourceType":
"org.apache.camel.component.paho.mqtt5.springboot.PahoMqtt5ComponentConfiguration",
"defaultValue": false
},
+ {
+ "name": "camel.component.paho-mqtt5.manual-acks-enabled",
+ "type": "java.lang.Boolean",
+ "description": "Sets whether to use manual acknowledgements for the
client. By default, this is false and message will be automatically
acknowledged upon received by Camel. If set to true, the acknowledgement is
deferred to be acknowledged by Camel at the end of processing the message. This
ensures that only successfully processed messages is acknowledged, and allows
to rollback and retry the message in case of an error during routing in Camel.",
+ "sourceType":
"org.apache.camel.component.paho.mqtt5.springboot.PahoMqtt5ComponentConfiguration",
+ "defaultValue": false
+ },
{
"name": "camel.component.paho-mqtt5.max-reconnect-delay",
"type": "java.lang.Integer",
diff --git
a/components-starter/camel-paho-mqtt5-starter/src/main/java/org/apache/camel/component/paho/mqtt5/springboot/PahoMqtt5ComponentConfiguration.java
b/components-starter/camel-paho-mqtt5-starter/src/main/java/org/apache/camel/component/paho/mqtt5/springboot/PahoMqtt5ComponentConfiguration.java
index 57e3e4bcff2..f3364970d02 100644
---
a/components-starter/camel-paho-mqtt5-starter/src/main/java/org/apache/camel/component/paho/mqtt5/springboot/PahoMqtt5ComponentConfiguration.java
+++
b/components-starter/camel-paho-mqtt5-starter/src/main/java/org/apache/camel/component/paho/mqtt5/springboot/PahoMqtt5ComponentConfiguration.java
@@ -217,6 +217,16 @@ public class PahoMqtt5ComponentConfiguration
* with exceptions, that will be logged at WARN or ERROR level and ignored.
*/
private Boolean bridgeErrorHandler = false;
+ /**
+ * Sets whether to use manual acknowledgements for the client. By default,
+ * this is false and message will be automatically acknowledged upon
+ * received by Camel. If set to true, the acknowledgement is deferred to be
+ * acknowledged by Camel at the end of processing the message. This ensures
+ * that only successfully processed messages is acknowledged, and allows to
+ * rollback and retry the message in case of an error during routing in
+ * Camel.
+ */
+ private Boolean manualAcksEnabled = false;
/**
* Whether the producer should be started lazy (on the first message). By
* starting lazy you can use this to allow CamelContext and routes to
@@ -490,6 +500,14 @@ public class PahoMqtt5ComponentConfiguration
this.bridgeErrorHandler = bridgeErrorHandler;
}
+ public Boolean getManualAcksEnabled() {
+ return manualAcksEnabled;
+ }
+
+ public void setManualAcksEnabled(Boolean manualAcksEnabled) {
+ this.manualAcksEnabled = manualAcksEnabled;
+ }
+
public Boolean getLazyStartProducer() {
return lazyStartProducer;
}