This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 19012e785a8a574e5b40efa6a817f8ee6d349046
Author: Claus Ibsen <claus.ib...@gmail.com>
AuthorDate: Thu Jan 21 08:54:02 2021 +0100

    [CAMEL-16008] Implement consumer priority in camel
---
 .../apache/camel/catalog/components/activemq.json  |  2 +
 .../org/apache/camel/catalog/components/amqp.json  |  2 +
 .../org/apache/camel/catalog/components/jms.json   |  2 +
 .../camel/catalog/docs/activemq-component.adoc     |  6 +-
 .../org/apache/camel/catalog/others.properties     |  1 +
 .../activemq/ActiveMQEndpointUriFactory.java       | 83 +++++++++++-----------
 .../apache/camel/component/activemq/activemq.json  |  2 +
 .../src/main/docs/activemq-component.adoc          |  6 +-
 .../dsl/ActivemqComponentBuilderFactory.java       | 25 +++++++
 .../dsl/ActiveMQEndpointBuilderFactory.java        | 48 +++++++++++++
 .../modules/ROOT/pages/activemq-component.adoc     |  6 +-
 11 files changed, 136 insertions(+), 47 deletions(-)

diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/activemq.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/activemq.json
index 4750ab4..77aa2d4 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/activemq.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/activemq.json
@@ -33,6 +33,7 @@
     "usePooledConnection": { "kind": "property", "displayName": "Use Pooled 
Connection", "group": "common", "label": "common", "required": false, "type": 
"boolean", "javaType": "boolean", "deprecated": false, "deprecationNote": "", 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Enables or disables whether a PooledConnectionFactory will be used so that 
when messages are sent to ActiveMQ from outside of a message consuming thread, 
pooling will be used rather tha [...]
     "useSingleConnection": { "kind": "property", "displayName": "Use Single 
Connection", "group": "common", "label": "common", "required": false, "type": 
"boolean", "javaType": "boolean", "deprecated": false, "deprecationNote": "", 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Enables or disables whether a Spring SingleConnectionFactory will be used so 
that when messages are sent to ActiveMQ from outside of a message consuming 
thread, pooling will be used ra [...]
     "acknowledgementModeName": { "kind": "property", "displayName": 
"Acknowledgement Mode Name", "group": "consumer", "label": "consumer", 
"required": false, "type": "string", "javaType": "java.lang.String", "enum": [ 
"SESSION_TRANSACTED", "CLIENT_ACKNOWLEDGE", "AUTO_ACKNOWLEDGE", 
"DUPS_OK_ACKNOWLEDGE" ], "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": "AUTO_ACKNOWLEDGE", "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationFiel [...]
+    "artemisConsumerPriority": { "kind": "property", "displayName": "Artemis 
Consumer Priority", "group": "consumer", "label": "consumer", "required": 
false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Consumer priorities allow you to ensure that 
high priority consumers receive messages while they are active. N [...]
     "asyncConsumer": { "kind": "property", "displayName": "Async Consumer", 
"group": "consumer", "label": "consumer", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Whether the JmsConsumer processes the Exchange 
asynchronously. If enabled then the JmsConsumer may picku [...]
     "autoStartup": { "kind": "property", "displayName": "Auto Startup", 
"group": "consumer", "label": "consumer", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Specifies whether the consumer container 
should auto-startup." },
     "cacheLevel": { "kind": "property", "displayName": "Cache Level", "group": 
"consumer", "label": "consumer", "required": false, "type": "integer", 
"javaType": "int", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.jms.JmsConfiguration", 
"configurationField": "configuration", "description": "Sets the cache level by 
ID for the underlying JMS resources. See cacheLevelName option for more 
details." },
@@ -135,6 +136,7 @@
     "replyTo": { "kind": "parameter", "displayName": "Reply To", "group": 
"common", "label": "common", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.jms.JmsConfiguration", 
"configurationField": "configuration", "description": "Provides an explicit 
ReplyTo destination (overrides any incoming value of Message.getJMSReplyTo() in 
consumer)." },
     "testConnectionOnStartup": { "kind": "parameter", "displayName": "Test 
Connection On Startup", "group": "common", "label": "", "required": false, 
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Specifies whether to test the connection on 
startup. This ensures that when Camel starts th [...]
     "acknowledgementModeName": { "kind": "parameter", "displayName": 
"Acknowledgement Mode Name", "group": "consumer", "label": "consumer", 
"required": false, "type": "string", "javaType": "java.lang.String", "enum": [ 
"SESSION_TRANSACTED", "CLIENT_ACKNOWLEDGE", "AUTO_ACKNOWLEDGE", 
"DUPS_OK_ACKNOWLEDGE" ], "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": "AUTO_ACKNOWLEDGE", "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationFie [...]
+    "artemisConsumerPriority": { "kind": "parameter", "displayName": "Artemis 
Consumer Priority", "group": "consumer", "label": "consumer", "required": 
false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Consumer priorities allow you to ensure that 
high priority consumers receive messages while they are active.  [...]
     "asyncConsumer": { "kind": "parameter", "displayName": "Async Consumer", 
"group": "consumer", "label": "consumer", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Whether the JmsConsumer processes the Exchange 
asynchronously. If enabled then the JmsConsumer may pick [...]
     "autoStartup": { "kind": "parameter", "displayName": "Auto Startup", 
"group": "consumer", "label": "consumer", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Specifies whether the consumer container 
should auto-startup." },
     "cacheLevel": { "kind": "parameter", "displayName": "Cache Level", 
"group": "consumer", "label": "consumer", "required": false, "type": "integer", 
"javaType": "int", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.jms.JmsConfiguration", 
"configurationField": "configuration", "description": "Sets the cache level by 
ID for the underlying JMS resources. See cacheLevelName option for more 
details." },
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/amqp.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/amqp.json
index 133351f..9c62977 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/amqp.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/amqp.json
@@ -31,6 +31,7 @@
     "replyTo": { "kind": "property", "displayName": "Reply To", "group": 
"common", "label": "common", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.jms.JmsConfiguration", 
"configurationField": "configuration", "description": "Provides an explicit 
ReplyTo destination (overrides any incoming value of Message.getJMSReplyTo() in 
consumer)." },
     "testConnectionOnStartup": { "kind": "property", "displayName": "Test 
Connection On Startup", "group": "common", "label": "", "required": false, 
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Specifies whether to test the connection on 
startup. This ensures that when Camel starts tha [...]
     "acknowledgementModeName": { "kind": "property", "displayName": 
"Acknowledgement Mode Name", "group": "consumer", "label": "consumer", 
"required": false, "type": "string", "javaType": "java.lang.String", "enum": [ 
"SESSION_TRANSACTED", "CLIENT_ACKNOWLEDGE", "AUTO_ACKNOWLEDGE", 
"DUPS_OK_ACKNOWLEDGE" ], "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": "AUTO_ACKNOWLEDGE", "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationFiel [...]
+    "artemisConsumerPriority": { "kind": "property", "displayName": "Artemis 
Consumer Priority", "group": "consumer", "label": "consumer", "required": 
false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Consumer priorities allow you to ensure that 
high priority consumers receive messages while they are active. N [...]
     "asyncConsumer": { "kind": "property", "displayName": "Async Consumer", 
"group": "consumer", "label": "consumer", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Whether the JmsConsumer processes the Exchange 
asynchronously. If enabled then the JmsConsumer may picku [...]
     "autoStartup": { "kind": "property", "displayName": "Auto Startup", 
"group": "consumer", "label": "consumer", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Specifies whether the consumer container 
should auto-startup." },
     "cacheLevel": { "kind": "property", "displayName": "Cache Level", "group": 
"consumer", "label": "consumer", "required": false, "type": "integer", 
"javaType": "int", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.jms.JmsConfiguration", 
"configurationField": "configuration", "description": "Sets the cache level by 
ID for the underlying JMS resources. See cacheLevelName option for more 
details." },
@@ -132,6 +133,7 @@
     "replyTo": { "kind": "parameter", "displayName": "Reply To", "group": 
"common", "label": "common", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.jms.JmsConfiguration", 
"configurationField": "configuration", "description": "Provides an explicit 
ReplyTo destination (overrides any incoming value of Message.getJMSReplyTo() in 
consumer)." },
     "testConnectionOnStartup": { "kind": "parameter", "displayName": "Test 
Connection On Startup", "group": "common", "label": "", "required": false, 
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Specifies whether to test the connection on 
startup. This ensures that when Camel starts th [...]
     "acknowledgementModeName": { "kind": "parameter", "displayName": 
"Acknowledgement Mode Name", "group": "consumer", "label": "consumer", 
"required": false, "type": "string", "javaType": "java.lang.String", "enum": [ 
"SESSION_TRANSACTED", "CLIENT_ACKNOWLEDGE", "AUTO_ACKNOWLEDGE", 
"DUPS_OK_ACKNOWLEDGE" ], "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": "AUTO_ACKNOWLEDGE", "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationFie [...]
+    "artemisConsumerPriority": { "kind": "parameter", "displayName": "Artemis 
Consumer Priority", "group": "consumer", "label": "consumer", "required": 
false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Consumer priorities allow you to ensure that 
high priority consumers receive messages while they are active.  [...]
     "asyncConsumer": { "kind": "parameter", "displayName": "Async Consumer", 
"group": "consumer", "label": "consumer", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Whether the JmsConsumer processes the Exchange 
asynchronously. If enabled then the JmsConsumer may pick [...]
     "autoStartup": { "kind": "parameter", "displayName": "Auto Startup", 
"group": "consumer", "label": "consumer", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Specifies whether the consumer container 
should auto-startup." },
     "cacheLevel": { "kind": "parameter", "displayName": "Cache Level", 
"group": "consumer", "label": "consumer", "required": false, "type": "integer", 
"javaType": "int", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.jms.JmsConfiguration", 
"configurationField": "configuration", "description": "Sets the cache level by 
ID for the underlying JMS resources. See cacheLevelName option for more 
details." },
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jms.json
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jms.json
index 3afaeff..6df0bf2 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jms.json
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/jms.json
@@ -31,6 +31,7 @@
     "replyTo": { "kind": "property", "displayName": "Reply To", "group": 
"common", "label": "common", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.jms.JmsConfiguration", 
"configurationField": "configuration", "description": "Provides an explicit 
ReplyTo destination (overrides any incoming value of Message.getJMSReplyTo() in 
consumer)." },
     "testConnectionOnStartup": { "kind": "property", "displayName": "Test 
Connection On Startup", "group": "common", "label": "", "required": false, 
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Specifies whether to test the connection on 
startup. This ensures that when Camel starts tha [...]
     "acknowledgementModeName": { "kind": "property", "displayName": 
"Acknowledgement Mode Name", "group": "consumer", "label": "consumer", 
"required": false, "type": "string", "javaType": "java.lang.String", "enum": [ 
"SESSION_TRANSACTED", "CLIENT_ACKNOWLEDGE", "AUTO_ACKNOWLEDGE", 
"DUPS_OK_ACKNOWLEDGE" ], "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": "AUTO_ACKNOWLEDGE", "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationFiel [...]
+    "artemisConsumerPriority": { "kind": "property", "displayName": "Artemis 
Consumer Priority", "group": "consumer", "label": "consumer", "required": 
false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Consumer priorities allow you to ensure that 
high priority consumers receive messages while they are active. N [...]
     "asyncConsumer": { "kind": "property", "displayName": "Async Consumer", 
"group": "consumer", "label": "consumer", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Whether the JmsConsumer processes the Exchange 
asynchronously. If enabled then the JmsConsumer may picku [...]
     "autoStartup": { "kind": "property", "displayName": "Auto Startup", 
"group": "consumer", "label": "consumer", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Specifies whether the consumer container 
should auto-startup." },
     "cacheLevel": { "kind": "property", "displayName": "Cache Level", "group": 
"consumer", "label": "consumer", "required": false, "type": "integer", 
"javaType": "int", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.jms.JmsConfiguration", 
"configurationField": "configuration", "description": "Sets the cache level by 
ID for the underlying JMS resources. See cacheLevelName option for more 
details." },
@@ -132,6 +133,7 @@
     "replyTo": { "kind": "parameter", "displayName": "Reply To", "group": 
"common", "label": "common", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.jms.JmsConfiguration", 
"configurationField": "configuration", "description": "Provides an explicit 
ReplyTo destination (overrides any incoming value of Message.getJMSReplyTo() in 
consumer)." },
     "testConnectionOnStartup": { "kind": "parameter", "displayName": "Test 
Connection On Startup", "group": "common", "label": "", "required": false, 
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Specifies whether to test the connection on 
startup. This ensures that when Camel starts th [...]
     "acknowledgementModeName": { "kind": "parameter", "displayName": 
"Acknowledgement Mode Name", "group": "consumer", "label": "consumer", 
"required": false, "type": "string", "javaType": "java.lang.String", "enum": [ 
"SESSION_TRANSACTED", "CLIENT_ACKNOWLEDGE", "AUTO_ACKNOWLEDGE", 
"DUPS_OK_ACKNOWLEDGE" ], "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": "AUTO_ACKNOWLEDGE", "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationFie [...]
+    "artemisConsumerPriority": { "kind": "parameter", "displayName": "Artemis 
Consumer Priority", "group": "consumer", "label": "consumer", "required": 
false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Consumer priorities allow you to ensure that 
high priority consumers receive messages while they are active.  [...]
     "asyncConsumer": { "kind": "parameter", "displayName": "Async Consumer", 
"group": "consumer", "label": "consumer", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Whether the JmsConsumer processes the Exchange 
asynchronously. If enabled then the JmsConsumer may pick [...]
     "autoStartup": { "kind": "parameter", "displayName": "Auto Startup", 
"group": "consumer", "label": "consumer", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Specifies whether the consumer container 
should auto-startup." },
     "cacheLevel": { "kind": "parameter", "displayName": "Cache Level", 
"group": "consumer", "label": "consumer", "required": false, "type": "integer", 
"javaType": "int", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.jms.JmsConfiguration", 
"configurationField": "configuration", "description": "Sets the cache level by 
ID for the underlying JMS resources. See cacheLevelName option for more 
details." },
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/activemq-component.adoc
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/activemq-component.adoc
index 78271f2..afd744d 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/activemq-component.adoc
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/activemq-component.adoc
@@ -53,7 +53,7 @@ activemq:foo
 == Component options
 
 // component options: START
-The ActiveMQ component supports 101 options, which are listed below.
+The ActiveMQ component supports 102 options, which are listed below.
 
 
 
@@ -71,6 +71,7 @@ The ActiveMQ component supports 101 options, which are listed 
below.
 | *usePooledConnection* (common) | Enables or disables whether a 
PooledConnectionFactory will be used so that when messages are sent to ActiveMQ 
from outside of a message consuming thread, pooling will be used rather than 
the default with the Spring JmsTemplate which will create a new connection, 
session, producer for each message then close them all down again. The default 
value is true. | true | boolean
 | *useSingleConnection* (common) | Enables or disables whether a Spring 
SingleConnectionFactory will be used so that when messages are sent to ActiveMQ 
from outside of a message consuming thread, pooling will be used rather than 
the default with the Spring JmsTemplate which will create a new connection, 
session, producer for each message then close them all down again. The default 
value is false and a pooled connection is used by default. | false | boolean
 | *acknowledgementModeName* (consumer) | The JMS acknowledgement name, which 
is one of: SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, 
DUPS_OK_ACKNOWLEDGE. There are 4 enums and the value can be one of: 
SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE | 
AUTO_ACKNOWLEDGE | String
+| *artemisConsumerPriority* (consumer) | Consumer priorities allow you to 
ensure that high priority consumers receive messages while they are active. 
Normally, active consumers connected to a queue receive messages from it in a 
round-robin fashion. When consumer priorities are in use, messages are 
delivered round-robin if multiple active consumers exist with the same high 
priority. Messages will only going to lower priority consumers when the high 
priority consumers do not have credit av [...]
 | *asyncConsumer* (consumer) | Whether the JmsConsumer processes the Exchange 
asynchronously. If enabled then the JmsConsumer may pickup the next message 
from the JMS queue, while the previous message is being processed 
asynchronously (by the Asynchronous Routing Engine). This means that messages 
may be processed not 100% strictly in order. If disabled (as default) then the 
Exchange is fully processed before the JmsConsumer will pickup the next message 
from the JMS queue. Note if transac [...]
 | *autoStartup* (consumer) | Specifies whether the consumer container should 
auto-startup. | true | boolean
 | *cacheLevel* (consumer) | Sets the cache level by ID for the underlying JMS 
resources. See cacheLevelName option for more details. |  | int
@@ -187,7 +188,7 @@ with the following path and query parameters:
 |===
 
 
-=== Query Parameters (94 parameters):
+=== Query Parameters (95 parameters):
 
 
 [width="100%",cols="2,5,^1,2",options="header"]
@@ -201,6 +202,7 @@ with the following path and query parameters:
 | *replyTo* (common) | Provides an explicit ReplyTo destination (overrides any 
incoming value of Message.getJMSReplyTo() in consumer). |  | String
 | *testConnectionOnStartup* (common) | Specifies whether to test the 
connection on startup. This ensures that when Camel starts that all the JMS 
consumers have a valid connection to the JMS broker. If a connection cannot be 
granted then Camel throws an exception on startup. This ensures that Camel is 
not started with failed connections. The JMS producers is tested as well. | 
false | boolean
 | *acknowledgementModeName* (consumer) | The JMS acknowledgement name, which 
is one of: SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, 
DUPS_OK_ACKNOWLEDGE. There are 4 enums and the value can be one of: 
SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE | 
AUTO_ACKNOWLEDGE | String
+| *artemisConsumerPriority* (consumer) | Consumer priorities allow you to 
ensure that high priority consumers receive messages while they are active. 
Normally, active consumers connected to a queue receive messages from it in a 
round-robin fashion. When consumer priorities are in use, messages are 
delivered round-robin if multiple active consumers exist with the same high 
priority. Messages will only going to lower priority consumers when the high 
priority consumers do not have credit av [...]
 | *asyncConsumer* (consumer) | Whether the JmsConsumer processes the Exchange 
asynchronously. If enabled then the JmsConsumer may pickup the next message 
from the JMS queue, while the previous message is being processed 
asynchronously (by the Asynchronous Routing Engine). This means that messages 
may be processed not 100% strictly in order. If disabled (as default) then the 
Exchange is fully processed before the JmsConsumer will pickup the next message 
from the JMS queue. Note if transac [...]
 | *autoStartup* (consumer) | Specifies whether the consumer container should 
auto-startup. | true | boolean
 | *cacheLevel* (consumer) | Sets the cache level by ID for the underlying JMS 
resources. See cacheLevelName option for more details. |  | int
diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/others.properties
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/others.properties
index 6c64234..47e9091 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/others.properties
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/others.properties
@@ -5,6 +5,7 @@ csimple-joor
 cxf-transport
 elytron
 etcd3
+flight-recorder
 headersmap
 hystrix
 jasypt
diff --git 
a/components/camel-activemq/src/generated/java/org/apache/camel/component/activemq/ActiveMQEndpointUriFactory.java
 
b/components/camel-activemq/src/generated/java/org/apache/camel/component/activemq/ActiveMQEndpointUriFactory.java
index 0ddcee8..105b940 100644
--- 
a/components/camel-activemq/src/generated/java/org/apache/camel/component/activemq/ActiveMQEndpointUriFactory.java
+++ 
b/components/camel-activemq/src/generated/java/org/apache/camel/component/activemq/ActiveMQEndpointUriFactory.java
@@ -20,69 +20,83 @@ public class ActiveMQEndpointUriFactory extends 
org.apache.camel.support.compone
     private static final Set<String> PROPERTY_NAMES;
     private static final Set<String> SECRET_PROPERTY_NAMES;
     static {
-        Set<String> props = new HashSet<>(96);
+        Set<String> props = new HashSet<>(97);
         props.add("includeSentJMSMessageID");
         props.add("asyncConsumer");
         props.add("mapJmsMessage");
+        props.add("synchronous");
+        props.add("eagerLoadingOfProperties");
+        props.add("password");
+        props.add("replyToMaxConcurrentConsumers");
+        props.add("deliveryMode");
+        props.add("transferException");
+        props.add("asyncStartListener");
+        props.add("eagerPoisonBody");
+        props.add("artemisStreamingEnabled");
+        props.add("maxConcurrentConsumers");
+        props.add("taskExecutor");
+        props.add("priority");
+        props.add("acknowledgementModeName");
+        props.add("exposeListenerSession");
+        props.add("receiveTimeout");
+        props.add("replyTo");
+        props.add("replyToOverride");
+        props.add("errorHandlerLoggingLevel");
+        props.add("errorHandler");
+        props.add("allowReplyManagerQuickStop");
+        props.add("replyToOnTimeoutMaxConcurrentConsumers");
+        props.add("messageConverter");
+        props.add("maxMessagesPerTask");
+        props.add("jmsKeyFormatStrategy");
+        props.add("streamMessageTypeEnabled");
+        props.add("headerFilterStrategy");
+        props.add("destinationName");
+        props.add("allowAdditionalHeaders");
+        props.add("clientId");
+        props.add("recoveryInterval");
+        props.add("replyToCacheLevelName");
+        props.add("messageIdEnabled");
+        props.add("allowSerializedHeaders");
+        props.add("preserveMessageQos");
+        props.add("connectionFactory");
+        props.add("testConnectionOnStartup");
+        props.add("subscriptionName");
+        props.add("useMessageIDAsCorrelationID");
+        props.add("cacheLevelName");
+        props.add("idleTaskExecutionLimit");
         props.add("messageListenerContainerFactory");
         props.add("requestTimeoutCheckerInterval");
-        props.add("synchronous");
         props.add("includeAllJMSXProperties");
         props.add("cacheLevel");
         props.add("errorHandlerLogStackTrace");
         props.add("transactedInOut");
-        props.add("eagerLoadingOfProperties");
         props.add("timeToLive");
-        props.add("password");
-        props.add("replyToMaxConcurrentConsumers");
-        props.add("deliveryMode");
-        props.add("transferException");
         props.add("exceptionListener");
         props.add("destinationType");
-        props.add("asyncStartListener");
         props.add("waitForProvisionCorrelationToBeUpdatedThreadSleepingTime");
         props.add("transactionManager");
-        props.add("eagerPoisonBody");
         props.add("alwaysCopyMessage");
+        props.add("artemisConsumerPriority");
         props.add("replyToConcurrentConsumers");
-        props.add("artemisStreamingEnabled");
         props.add("replyToDestinationSelectorName");
-        props.add("maxConcurrentConsumers");
-        props.add("taskExecutor");
         props.add("disableTimeToLive");
         props.add("deliveryPersistent");
-        props.add("priority");
         props.add("concurrentConsumers");
         props.add("acceptMessagesWhileStopping");
         props.add("consumerType");
-        props.add("acknowledgementModeName");
         props.add("lazyStartProducer");
-        props.add("exposeListenerSession");
-        props.add("receiveTimeout");
         props.add("subscriptionDurable");
         props.add("destinationResolver");
-        props.add("replyTo");
-        props.add("replyToOverride");
-        props.add("errorHandlerLoggingLevel");
-        props.add("errorHandler");
         props.add("exceptionHandler");
-        props.add("allowReplyManagerQuickStop");
         props.add("idleConsumerLimit");
-        props.add("replyToOnTimeoutMaxConcurrentConsumers");
         props.add("explicitQosEnabled");
-        props.add("messageConverter");
-        props.add("maxMessagesPerTask");
         props.add("transacted");
         props.add("transactionName");
         props.add("correlationProperty");
         props.add("autoStartup");
         props.add("messageTimestampEnabled");
-        props.add("jmsKeyFormatStrategy");
-        props.add("streamMessageTypeEnabled");
-        props.add("headerFilterStrategy");
         props.add("waitForProvisionCorrelationToBeUpdatedCounter");
         props.add("lazyCreateTransactionManager");
-        props.add("destinationName");
         props.add("messageCreatedStrategy");
         props.add("asyncStopListener");
         props.add("transferExchange");
@@ -93,29 +107,16 @@ public class ActiveMQEndpointUriFactory extends 
org.apache.camel.support.compone
         props.add("deliveryDelay");
         props.add("disableReplyTo");
         props.add("formatDateHeadersToIso8601");
-        props.add("allowAdditionalHeaders");
-        props.add("clientId");
-        props.add("recoveryInterval");
-        props.add("replyToCacheLevelName");
-        props.add("messageIdEnabled");
         props.add("exchangePattern");
-        props.add("allowSerializedHeaders");
         props.add("pubSubNoLocal");
-        props.add("preserveMessageQos");
         props.add("forceSendOriginalMessage");
         props.add("subscriptionShared");
         props.add("replyToType");
-        props.add("connectionFactory");
-        props.add("testConnectionOnStartup");
-        props.add("subscriptionName");
-        props.add("useMessageIDAsCorrelationID");
         props.add("transactionTimeout");
         props.add("durableSubscriptionName");
         props.add("replyToSameDestinationAllowed");
         props.add("jmsMessageType");
         props.add("defaultTaskExecutorType");
-        props.add("cacheLevelName");
-        props.add("idleTaskExecutionLimit");
         props.add("username");
         PROPERTY_NAMES = Collections.unmodifiableSet(props);
         Set<String> secretProps = new HashSet<>(2);
diff --git 
a/components/camel-activemq/src/generated/resources/org/apache/camel/component/activemq/activemq.json
 
b/components/camel-activemq/src/generated/resources/org/apache/camel/component/activemq/activemq.json
index 4750ab4..77aa2d4 100644
--- 
a/components/camel-activemq/src/generated/resources/org/apache/camel/component/activemq/activemq.json
+++ 
b/components/camel-activemq/src/generated/resources/org/apache/camel/component/activemq/activemq.json
@@ -33,6 +33,7 @@
     "usePooledConnection": { "kind": "property", "displayName": "Use Pooled 
Connection", "group": "common", "label": "common", "required": false, "type": 
"boolean", "javaType": "boolean", "deprecated": false, "deprecationNote": "", 
"autowired": false, "secret": false, "defaultValue": true, "description": 
"Enables or disables whether a PooledConnectionFactory will be used so that 
when messages are sent to ActiveMQ from outside of a message consuming thread, 
pooling will be used rather tha [...]
     "useSingleConnection": { "kind": "property", "displayName": "Use Single 
Connection", "group": "common", "label": "common", "required": false, "type": 
"boolean", "javaType": "boolean", "deprecated": false, "deprecationNote": "", 
"autowired": false, "secret": false, "defaultValue": false, "description": 
"Enables or disables whether a Spring SingleConnectionFactory will be used so 
that when messages are sent to ActiveMQ from outside of a message consuming 
thread, pooling will be used ra [...]
     "acknowledgementModeName": { "kind": "property", "displayName": 
"Acknowledgement Mode Name", "group": "consumer", "label": "consumer", 
"required": false, "type": "string", "javaType": "java.lang.String", "enum": [ 
"SESSION_TRANSACTED", "CLIENT_ACKNOWLEDGE", "AUTO_ACKNOWLEDGE", 
"DUPS_OK_ACKNOWLEDGE" ], "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": "AUTO_ACKNOWLEDGE", "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationFiel [...]
+    "artemisConsumerPriority": { "kind": "property", "displayName": "Artemis 
Consumer Priority", "group": "consumer", "label": "consumer", "required": 
false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Consumer priorities allow you to ensure that 
high priority consumers receive messages while they are active. N [...]
     "asyncConsumer": { "kind": "property", "displayName": "Async Consumer", 
"group": "consumer", "label": "consumer", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Whether the JmsConsumer processes the Exchange 
asynchronously. If enabled then the JmsConsumer may picku [...]
     "autoStartup": { "kind": "property", "displayName": "Auto Startup", 
"group": "consumer", "label": "consumer", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Specifies whether the consumer container 
should auto-startup." },
     "cacheLevel": { "kind": "property", "displayName": "Cache Level", "group": 
"consumer", "label": "consumer", "required": false, "type": "integer", 
"javaType": "int", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.jms.JmsConfiguration", 
"configurationField": "configuration", "description": "Sets the cache level by 
ID for the underlying JMS resources. See cacheLevelName option for more 
details." },
@@ -135,6 +136,7 @@
     "replyTo": { "kind": "parameter", "displayName": "Reply To", "group": 
"common", "label": "common", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.jms.JmsConfiguration", 
"configurationField": "configuration", "description": "Provides an explicit 
ReplyTo destination (overrides any incoming value of Message.getJMSReplyTo() in 
consumer)." },
     "testConnectionOnStartup": { "kind": "parameter", "displayName": "Test 
Connection On Startup", "group": "common", "label": "", "required": false, 
"type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": 
false, "secret": false, "defaultValue": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Specifies whether to test the connection on 
startup. This ensures that when Camel starts th [...]
     "acknowledgementModeName": { "kind": "parameter", "displayName": 
"Acknowledgement Mode Name", "group": "consumer", "label": "consumer", 
"required": false, "type": "string", "javaType": "java.lang.String", "enum": [ 
"SESSION_TRANSACTED", "CLIENT_ACKNOWLEDGE", "AUTO_ACKNOWLEDGE", 
"DUPS_OK_ACKNOWLEDGE" ], "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": "AUTO_ACKNOWLEDGE", "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationFie [...]
+    "artemisConsumerPriority": { "kind": "parameter", "displayName": "Artemis 
Consumer Priority", "group": "consumer", "label": "consumer", "required": 
false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Consumer priorities allow you to ensure that 
high priority consumers receive messages while they are active.  [...]
     "asyncConsumer": { "kind": "parameter", "displayName": "Async Consumer", 
"group": "consumer", "label": "consumer", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": false, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Whether the JmsConsumer processes the Exchange 
asynchronously. If enabled then the JmsConsumer may pick [...]
     "autoStartup": { "kind": "parameter", "displayName": "Auto Startup", 
"group": "consumer", "label": "consumer", "required": false, "type": "boolean", 
"javaType": "boolean", "deprecated": false, "autowired": false, "secret": 
false, "defaultValue": true, "configurationClass": 
"org.apache.camel.component.jms.JmsConfiguration", "configurationField": 
"configuration", "description": "Specifies whether the consumer container 
should auto-startup." },
     "cacheLevel": { "kind": "parameter", "displayName": "Cache Level", 
"group": "consumer", "label": "consumer", "required": false, "type": "integer", 
"javaType": "int", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.jms.JmsConfiguration", 
"configurationField": "configuration", "description": "Sets the cache level by 
ID for the underlying JMS resources. See cacheLevelName option for more 
details." },
diff --git a/components/camel-activemq/src/main/docs/activemq-component.adoc 
b/components/camel-activemq/src/main/docs/activemq-component.adoc
index 78271f2..afd744d 100644
--- a/components/camel-activemq/src/main/docs/activemq-component.adoc
+++ b/components/camel-activemq/src/main/docs/activemq-component.adoc
@@ -53,7 +53,7 @@ activemq:foo
 == Component options
 
 // component options: START
-The ActiveMQ component supports 101 options, which are listed below.
+The ActiveMQ component supports 102 options, which are listed below.
 
 
 
@@ -71,6 +71,7 @@ The ActiveMQ component supports 101 options, which are listed 
below.
 | *usePooledConnection* (common) | Enables or disables whether a 
PooledConnectionFactory will be used so that when messages are sent to ActiveMQ 
from outside of a message consuming thread, pooling will be used rather than 
the default with the Spring JmsTemplate which will create a new connection, 
session, producer for each message then close them all down again. The default 
value is true. | true | boolean
 | *useSingleConnection* (common) | Enables or disables whether a Spring 
SingleConnectionFactory will be used so that when messages are sent to ActiveMQ 
from outside of a message consuming thread, pooling will be used rather than 
the default with the Spring JmsTemplate which will create a new connection, 
session, producer for each message then close them all down again. The default 
value is false and a pooled connection is used by default. | false | boolean
 | *acknowledgementModeName* (consumer) | The JMS acknowledgement name, which 
is one of: SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, 
DUPS_OK_ACKNOWLEDGE. There are 4 enums and the value can be one of: 
SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE | 
AUTO_ACKNOWLEDGE | String
+| *artemisConsumerPriority* (consumer) | Consumer priorities allow you to 
ensure that high priority consumers receive messages while they are active. 
Normally, active consumers connected to a queue receive messages from it in a 
round-robin fashion. When consumer priorities are in use, messages are 
delivered round-robin if multiple active consumers exist with the same high 
priority. Messages will only going to lower priority consumers when the high 
priority consumers do not have credit av [...]
 | *asyncConsumer* (consumer) | Whether the JmsConsumer processes the Exchange 
asynchronously. If enabled then the JmsConsumer may pickup the next message 
from the JMS queue, while the previous message is being processed 
asynchronously (by the Asynchronous Routing Engine). This means that messages 
may be processed not 100% strictly in order. If disabled (as default) then the 
Exchange is fully processed before the JmsConsumer will pickup the next message 
from the JMS queue. Note if transac [...]
 | *autoStartup* (consumer) | Specifies whether the consumer container should 
auto-startup. | true | boolean
 | *cacheLevel* (consumer) | Sets the cache level by ID for the underlying JMS 
resources. See cacheLevelName option for more details. |  | int
@@ -187,7 +188,7 @@ with the following path and query parameters:
 |===
 
 
-=== Query Parameters (94 parameters):
+=== Query Parameters (95 parameters):
 
 
 [width="100%",cols="2,5,^1,2",options="header"]
@@ -201,6 +202,7 @@ with the following path and query parameters:
 | *replyTo* (common) | Provides an explicit ReplyTo destination (overrides any 
incoming value of Message.getJMSReplyTo() in consumer). |  | String
 | *testConnectionOnStartup* (common) | Specifies whether to test the 
connection on startup. This ensures that when Camel starts that all the JMS 
consumers have a valid connection to the JMS broker. If a connection cannot be 
granted then Camel throws an exception on startup. This ensures that Camel is 
not started with failed connections. The JMS producers is tested as well. | 
false | boolean
 | *acknowledgementModeName* (consumer) | The JMS acknowledgement name, which 
is one of: SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, 
DUPS_OK_ACKNOWLEDGE. There are 4 enums and the value can be one of: 
SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE | 
AUTO_ACKNOWLEDGE | String
+| *artemisConsumerPriority* (consumer) | Consumer priorities allow you to 
ensure that high priority consumers receive messages while they are active. 
Normally, active consumers connected to a queue receive messages from it in a 
round-robin fashion. When consumer priorities are in use, messages are 
delivered round-robin if multiple active consumers exist with the same high 
priority. Messages will only going to lower priority consumers when the high 
priority consumers do not have credit av [...]
 | *asyncConsumer* (consumer) | Whether the JmsConsumer processes the Exchange 
asynchronously. If enabled then the JmsConsumer may pickup the next message 
from the JMS queue, while the previous message is being processed 
asynchronously (by the Asynchronous Routing Engine). This means that messages 
may be processed not 100% strictly in order. If disabled (as default) then the 
Exchange is fully processed before the JmsConsumer will pickup the next message 
from the JMS queue. Note if transac [...]
 | *autoStartup* (consumer) | Specifies whether the consumer container should 
auto-startup. | true | boolean
 | *cacheLevel* (consumer) | Sets the cache level by ID for the underlying JMS 
resources. See cacheLevelName option for more details. |  | int
diff --git 
a/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/ActivemqComponentBuilderFactory.java
 
b/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/ActivemqComponentBuilderFactory.java
index fa01df5..8ab7453 100644
--- 
a/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/ActivemqComponentBuilderFactory.java
+++ 
b/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/ActivemqComponentBuilderFactory.java
@@ -257,6 +257,30 @@ public interface ActivemqComponentBuilderFactory {
             return this;
         }
         /**
+         * Consumer priorities allow you to ensure that high priority consumers
+         * receive messages while they are active. Normally, active consumers
+         * connected to a queue receive messages from it in a round-robin
+         * fashion. When consumer priorities are in use, messages are delivered
+         * round-robin if multiple active consumers exist with the same high
+         * priority. Messages will only going to lower priority consumers when
+         * the high priority consumers do not have credit available to consume
+         * the message, or those high priority consumers have declined to 
accept
+         * the message (for instance because it does not meet the criteria of
+         * any selectors associated with the consumer).
+         * 
+         * The option is a: &lt;code&gt;int&lt;/code&gt; type.
+         * 
+         * Group: consumer
+         * 
+         * @param artemisConsumerPriority the value to set
+         * @return the dsl builder
+         */
+        default ActivemqComponentBuilder artemisConsumerPriority(
+                int artemisConsumerPriority) {
+            doSetProperty("artemisConsumerPriority", artemisConsumerPriority);
+            return this;
+        }
+        /**
          * Whether the JmsConsumer processes the Exchange asynchronously. If
          * enabled then the JmsConsumer may pickup the next message from the 
JMS
          * queue, while the previous message is being processed asynchronously
@@ -2020,6 +2044,7 @@ public interface ActivemqComponentBuilderFactory {
             case "usePooledConnection": ((ActiveMQComponent) 
component).setUsePooledConnection((boolean) value); return true;
             case "useSingleConnection": ((ActiveMQComponent) 
component).setUseSingleConnection((boolean) value); return true;
             case "acknowledgementModeName": 
getOrCreateConfiguration((ActiveMQComponent) 
component).setAcknowledgementModeName((java.lang.String) value); return true;
+            case "artemisConsumerPriority": 
getOrCreateConfiguration((ActiveMQComponent) 
component).setArtemisConsumerPriority((int) value); return true;
             case "asyncConsumer": getOrCreateConfiguration((ActiveMQComponent) 
component).setAsyncConsumer((boolean) value); return true;
             case "autoStartup": getOrCreateConfiguration((ActiveMQComponent) 
component).setAutoStartup((boolean) value); return true;
             case "cacheLevel": getOrCreateConfiguration((ActiveMQComponent) 
component).setCacheLevel((int) value); return true;
diff --git 
a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ActiveMQEndpointBuilderFactory.java
 
b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ActiveMQEndpointBuilderFactory.java
index a30f908..d4a75f1 100644
--- 
a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ActiveMQEndpointBuilderFactory.java
+++ 
b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ActiveMQEndpointBuilderFactory.java
@@ -273,6 +273,54 @@ public interface ActiveMQEndpointBuilderFactory {
             return this;
         }
         /**
+         * Consumer priorities allow you to ensure that high priority consumers
+         * receive messages while they are active. Normally, active consumers
+         * connected to a queue receive messages from it in a round-robin
+         * fashion. When consumer priorities are in use, messages are delivered
+         * round-robin if multiple active consumers exist with the same high
+         * priority. Messages will only going to lower priority consumers when
+         * the high priority consumers do not have credit available to consume
+         * the message, or those high priority consumers have declined to 
accept
+         * the message (for instance because it does not meet the criteria of
+         * any selectors associated with the consumer).
+         * 
+         * The option is a: &lt;code&gt;int&lt;/code&gt; type.
+         * 
+         * Group: consumer
+         * 
+         * @param artemisConsumerPriority the value to set
+         * @return the dsl builder
+         */
+        default ActiveMQEndpointConsumerBuilder artemisConsumerPriority(
+                int artemisConsumerPriority) {
+            doSetProperty("artemisConsumerPriority", artemisConsumerPriority);
+            return this;
+        }
+        /**
+         * Consumer priorities allow you to ensure that high priority consumers
+         * receive messages while they are active. Normally, active consumers
+         * connected to a queue receive messages from it in a round-robin
+         * fashion. When consumer priorities are in use, messages are delivered
+         * round-robin if multiple active consumers exist with the same high
+         * priority. Messages will only going to lower priority consumers when
+         * the high priority consumers do not have credit available to consume
+         * the message, or those high priority consumers have declined to 
accept
+         * the message (for instance because it does not meet the criteria of
+         * any selectors associated with the consumer).
+         * 
+         * The option will be converted to a &lt;code&gt;int&lt;/code&gt; type.
+         * 
+         * Group: consumer
+         * 
+         * @param artemisConsumerPriority the value to set
+         * @return the dsl builder
+         */
+        default ActiveMQEndpointConsumerBuilder artemisConsumerPriority(
+                String artemisConsumerPriority) {
+            doSetProperty("artemisConsumerPriority", artemisConsumerPriority);
+            return this;
+        }
+        /**
          * Whether the JmsConsumer processes the Exchange asynchronously. If
          * enabled then the JmsConsumer may pickup the next message from the 
JMS
          * queue, while the previous message is being processed asynchronously
diff --git a/docs/components/modules/ROOT/pages/activemq-component.adoc 
b/docs/components/modules/ROOT/pages/activemq-component.adoc
index b9043f4..b788f07 100644
--- a/docs/components/modules/ROOT/pages/activemq-component.adoc
+++ b/docs/components/modules/ROOT/pages/activemq-component.adoc
@@ -55,7 +55,7 @@ activemq:foo
 == Component options
 
 // component options: START
-The ActiveMQ component supports 101 options, which are listed below.
+The ActiveMQ component supports 102 options, which are listed below.
 
 
 
@@ -73,6 +73,7 @@ The ActiveMQ component supports 101 options, which are listed 
below.
 | *usePooledConnection* (common) | Enables or disables whether a 
PooledConnectionFactory will be used so that when messages are sent to ActiveMQ 
from outside of a message consuming thread, pooling will be used rather than 
the default with the Spring JmsTemplate which will create a new connection, 
session, producer for each message then close them all down again. The default 
value is true. | true | boolean
 | *useSingleConnection* (common) | Enables or disables whether a Spring 
SingleConnectionFactory will be used so that when messages are sent to ActiveMQ 
from outside of a message consuming thread, pooling will be used rather than 
the default with the Spring JmsTemplate which will create a new connection, 
session, producer for each message then close them all down again. The default 
value is false and a pooled connection is used by default. | false | boolean
 | *acknowledgementModeName* (consumer) | The JMS acknowledgement name, which 
is one of: SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, 
DUPS_OK_ACKNOWLEDGE. There are 4 enums and the value can be one of: 
SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE | 
AUTO_ACKNOWLEDGE | String
+| *artemisConsumerPriority* (consumer) | Consumer priorities allow you to 
ensure that high priority consumers receive messages while they are active. 
Normally, active consumers connected to a queue receive messages from it in a 
round-robin fashion. When consumer priorities are in use, messages are 
delivered round-robin if multiple active consumers exist with the same high 
priority. Messages will only going to lower priority consumers when the high 
priority consumers do not have credit av [...]
 | *asyncConsumer* (consumer) | Whether the JmsConsumer processes the Exchange 
asynchronously. If enabled then the JmsConsumer may pickup the next message 
from the JMS queue, while the previous message is being processed 
asynchronously (by the Asynchronous Routing Engine). This means that messages 
may be processed not 100% strictly in order. If disabled (as default) then the 
Exchange is fully processed before the JmsConsumer will pickup the next message 
from the JMS queue. Note if transac [...]
 | *autoStartup* (consumer) | Specifies whether the consumer container should 
auto-startup. | true | boolean
 | *cacheLevel* (consumer) | Sets the cache level by ID for the underlying JMS 
resources. See cacheLevelName option for more details. |  | int
@@ -189,7 +190,7 @@ with the following path and query parameters:
 |===
 
 
-=== Query Parameters (94 parameters):
+=== Query Parameters (95 parameters):
 
 
 [width="100%",cols="2,5,^1,2",options="header"]
@@ -203,6 +204,7 @@ with the following path and query parameters:
 | *replyTo* (common) | Provides an explicit ReplyTo destination (overrides any 
incoming value of Message.getJMSReplyTo() in consumer). |  | String
 | *testConnectionOnStartup* (common) | Specifies whether to test the 
connection on startup. This ensures that when Camel starts that all the JMS 
consumers have a valid connection to the JMS broker. If a connection cannot be 
granted then Camel throws an exception on startup. This ensures that Camel is 
not started with failed connections. The JMS producers is tested as well. | 
false | boolean
 | *acknowledgementModeName* (consumer) | The JMS acknowledgement name, which 
is one of: SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, 
DUPS_OK_ACKNOWLEDGE. There are 4 enums and the value can be one of: 
SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE | 
AUTO_ACKNOWLEDGE | String
+| *artemisConsumerPriority* (consumer) | Consumer priorities allow you to 
ensure that high priority consumers receive messages while they are active. 
Normally, active consumers connected to a queue receive messages from it in a 
round-robin fashion. When consumer priorities are in use, messages are 
delivered round-robin if multiple active consumers exist with the same high 
priority. Messages will only going to lower priority consumers when the high 
priority consumers do not have credit av [...]
 | *asyncConsumer* (consumer) | Whether the JmsConsumer processes the Exchange 
asynchronously. If enabled then the JmsConsumer may pickup the next message 
from the JMS queue, while the previous message is being processed 
asynchronously (by the Asynchronous Routing Engine). This means that messages 
may be processed not 100% strictly in order. If disabled (as default) then the 
Exchange is fully processed before the JmsConsumer will pickup the next message 
from the JMS queue. Note if transac [...]
 | *autoStartup* (consumer) | Specifies whether the consumer container should 
auto-startup. | true | boolean
 | *cacheLevel* (consumer) | Sets the cache level by ID for the underlying JMS 
resources. See cacheLevelName option for more details. |  | int

Reply via email to