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 f06b341eb5800..6adfb3db8d498 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 @@ -110,23 +110,24 @@ "recoveryInterval": { "index": 84, "kind": "property", "displayName": "Recovery Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Specifies the interval between recovery attempts, i.e. when a connection is being refreshed, in milliseconds. The default is 5000 ms, that is, 5 seconds." }, "requestTimeoutCheckerInterval": { "index": 85, "kind": "property", "displayName": "Request Timeout Checker Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "1000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Configures how often Camel should check for timed out Exchanges when doing request\/reply over JMS. By default Camel checks once per second. But if you must react faster when a timeout occurs, then you can lower this interval, to check more frequently. The timeout is determined by the option requestTimeout." }, "synchronous": { "index": 86, "kind": "property", "displayName": "Synchronous", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Sets whether synchronous processing should be strictly used" }, - "transferException": { "index": 87, "kind": "property", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, - "transferExchange": { "index": 88, "kind": "property", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, - "trustAllPackages": { "index": 89, "kind": "property", "displayName": "Trust All Packages", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": false, "description": "Define if all Java packages are trusted or not (for Java object JMS message types). Notice its not recommended practice to send Java serialized objects over network. Setting this to true can expose security risks, so use this with care." }, - "useMessageIDAsCorrelationID": { "index": 90, "kind": "property", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, - "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 91, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, - "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 92, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, - "headerFilterStrategy": { "index": 93, "kind": "property", "displayName": "Header Filter Strategy", "group": "filter", "label": "filter", "required": false, "type": "object", "javaType": "org.apache.camel.spi.HeaderFilterStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message." }, - "errorHandlerLoggingLevel": { "index": 94, "kind": "property", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, - "errorHandlerLogStackTrace": { "index": 95, "kind": "property", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, - "password": { "index": 96, "kind": "property", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "username": { "index": 97, "kind": "property", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "transacted": { "index": 98, "kind": "property", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, - "transactedInOut": { "index": 99, "kind": "property", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, - "lazyCreateTransactionManager": { "index": 100, "kind": "property", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, - "transactionManager": { "index": 101, "kind": "property", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, - "transactionName": { "index": 102, "kind": "property", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, - "transactionTimeout": { "index": 103, "kind": "property", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } + "temporaryQueueResolver": { "index": 87, "kind": "property", "displayName": "Temporary Queue Resolver", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.jms.TemporaryQueueResolver", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "A pluggable TemporaryQueueResolver that allows you to use your own resolver for creating temporary queues (some messaging systems has special requirements for creating temporary queues)." }, + "transferException": { "index": 88, "kind": "property", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, + "transferExchange": { "index": 89, "kind": "property", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, + "trustAllPackages": { "index": 90, "kind": "property", "displayName": "Trust All Packages", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": false, "description": "Define if all Java packages are trusted or not (for Java object JMS message types). Notice its not recommended practice to send Java serialized objects over network. Setting this to true can expose security risks, so use this with care." }, + "useMessageIDAsCorrelationID": { "index": 91, "kind": "property", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, + "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 92, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, + "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 93, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, + "headerFilterStrategy": { "index": 94, "kind": "property", "displayName": "Header Filter Strategy", "group": "filter", "label": "filter", "required": false, "type": "object", "javaType": "org.apache.camel.spi.HeaderFilterStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message." }, + "errorHandlerLoggingLevel": { "index": 95, "kind": "property", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, + "errorHandlerLogStackTrace": { "index": 96, "kind": "property", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, + "password": { "index": 97, "kind": "property", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "username": { "index": 98, "kind": "property", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "transacted": { "index": 99, "kind": "property", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, + "transactedInOut": { "index": 100, "kind": "property", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, + "lazyCreateTransactionManager": { "index": 101, "kind": "property", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, + "transactionManager": { "index": 102, "kind": "property", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, + "transactionName": { "index": 103, "kind": "property", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, + "transactionTimeout": { "index": 104, "kind": "property", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } }, "headers": { "CamelJmsDestination": { "index": 0, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "jakarta.jms.Destination", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The destination.", "constantName": "org.apache.camel.component.jms.JmsConstants#JMS_DESTINATION" }, @@ -233,20 +234,21 @@ "recoveryInterval": { "index": 81, "kind": "parameter", "displayName": "Recovery Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Specifies the interval between recovery attempts, i.e. when a connection is being refreshed, in milliseconds. The default is 5000 ms, that is, 5 seconds." }, "requestTimeoutCheckerInterval": { "index": 82, "kind": "parameter", "displayName": "Request Timeout Checker Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "1000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Configures how often Camel should check for timed out Exchanges when doing request\/reply over JMS. By default Camel checks once per second. But if you must react faster when a timeout occurs, then you can lower this interval, to check more frequently. The timeout is determined by the option requestTimeout." }, "synchronous": { "index": 83, "kind": "parameter", "displayName": "Synchronous", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Sets whether synchronous processing should be strictly used" }, - "transferException": { "index": 84, "kind": "parameter", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, - "transferExchange": { "index": 85, "kind": "parameter", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, - "useMessageIDAsCorrelationID": { "index": 86, "kind": "parameter", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, - "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 87, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, - "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 88, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, - "errorHandlerLoggingLevel": { "index": 89, "kind": "parameter", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, - "errorHandlerLogStackTrace": { "index": 90, "kind": "parameter", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, - "password": { "index": 91, "kind": "parameter", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "username": { "index": 92, "kind": "parameter", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "transacted": { "index": 93, "kind": "parameter", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, - "transactedInOut": { "index": 94, "kind": "parameter", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, - "lazyCreateTransactionManager": { "index": 95, "kind": "parameter", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, - "transactionManager": { "index": 96, "kind": "parameter", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, - "transactionName": { "index": 97, "kind": "parameter", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, - "transactionTimeout": { "index": 98, "kind": "parameter", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } + "temporaryQueueResolver": { "index": 84, "kind": "parameter", "displayName": "Temporary Queue Resolver", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.jms.TemporaryQueueResolver", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "A pluggable TemporaryQueueResolver that allows you to use your own resolver for creating temporary queues (some messaging systems has special requirements for creating temporary queues)." }, + "transferException": { "index": 85, "kind": "parameter", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, + "transferExchange": { "index": 86, "kind": "parameter", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, + "useMessageIDAsCorrelationID": { "index": 87, "kind": "parameter", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, + "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 88, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, + "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 89, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, + "errorHandlerLoggingLevel": { "index": 90, "kind": "parameter", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, + "errorHandlerLogStackTrace": { "index": 91, "kind": "parameter", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, + "password": { "index": 92, "kind": "parameter", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "username": { "index": 93, "kind": "parameter", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "transacted": { "index": 94, "kind": "parameter", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, + "transactedInOut": { "index": 95, "kind": "parameter", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, + "lazyCreateTransactionManager": { "index": 96, "kind": "parameter", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, + "transactionManager": { "index": 97, "kind": "parameter", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, + "transactionName": { "index": 98, "kind": "parameter", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, + "transactionTimeout": { "index": 99, "kind": "parameter", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } } } 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 9ead074c98c39..9ade896108bf2 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 @@ -108,22 +108,23 @@ "recoveryInterval": { "index": 82, "kind": "property", "displayName": "Recovery Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Specifies the interval between recovery attempts, i.e. when a connection is being refreshed, in milliseconds. The default is 5000 ms, that is, 5 seconds." }, "requestTimeoutCheckerInterval": { "index": 83, "kind": "property", "displayName": "Request Timeout Checker Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "1000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Configures how often Camel should check for timed out Exchanges when doing request\/reply over JMS. By default Camel checks once per second. But if you must react faster when a timeout occurs, then you can lower this interval, to check more frequently. The timeout is determined by the option requestTimeout." }, "synchronous": { "index": 84, "kind": "property", "displayName": "Synchronous", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Sets whether synchronous processing should be strictly used" }, - "transferException": { "index": 85, "kind": "property", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, - "transferExchange": { "index": 86, "kind": "property", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, - "useMessageIDAsCorrelationID": { "index": 87, "kind": "property", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, - "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 88, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, - "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 89, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, - "headerFilterStrategy": { "index": 90, "kind": "property", "displayName": "Header Filter Strategy", "group": "filter", "label": "filter", "required": false, "type": "object", "javaType": "org.apache.camel.spi.HeaderFilterStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message." }, - "errorHandlerLoggingLevel": { "index": 91, "kind": "property", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, - "errorHandlerLogStackTrace": { "index": 92, "kind": "property", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, - "password": { "index": 93, "kind": "property", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "username": { "index": 94, "kind": "property", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "transacted": { "index": 95, "kind": "property", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, - "transactedInOut": { "index": 96, "kind": "property", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, - "lazyCreateTransactionManager": { "index": 97, "kind": "property", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, - "transactionManager": { "index": 98, "kind": "property", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, - "transactionName": { "index": 99, "kind": "property", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, - "transactionTimeout": { "index": 100, "kind": "property", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } + "temporaryQueueResolver": { "index": 85, "kind": "property", "displayName": "Temporary Queue Resolver", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.jms.TemporaryQueueResolver", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "A pluggable TemporaryQueueResolver that allows you to use your own resolver for creating temporary queues (some messaging systems has special requirements for creating temporary queues)." }, + "transferException": { "index": 86, "kind": "property", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, + "transferExchange": { "index": 87, "kind": "property", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, + "useMessageIDAsCorrelationID": { "index": 88, "kind": "property", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, + "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 89, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, + "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 90, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, + "headerFilterStrategy": { "index": 91, "kind": "property", "displayName": "Header Filter Strategy", "group": "filter", "label": "filter", "required": false, "type": "object", "javaType": "org.apache.camel.spi.HeaderFilterStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message." }, + "errorHandlerLoggingLevel": { "index": 92, "kind": "property", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, + "errorHandlerLogStackTrace": { "index": 93, "kind": "property", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, + "password": { "index": 94, "kind": "property", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "username": { "index": 95, "kind": "property", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "transacted": { "index": 96, "kind": "property", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, + "transactedInOut": { "index": 97, "kind": "property", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, + "lazyCreateTransactionManager": { "index": 98, "kind": "property", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, + "transactionManager": { "index": 99, "kind": "property", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, + "transactionName": { "index": 100, "kind": "property", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, + "transactionTimeout": { "index": 101, "kind": "property", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } }, "headers": { "CamelJmsDestination": { "index": 0, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "jakarta.jms.Destination", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The destination.", "constantName": "org.apache.camel.component.jms.JmsConstants#JMS_DESTINATION" }, @@ -229,20 +230,21 @@ "recoveryInterval": { "index": 80, "kind": "parameter", "displayName": "Recovery Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Specifies the interval between recovery attempts, i.e. when a connection is being refreshed, in milliseconds. The default is 5000 ms, that is, 5 seconds." }, "requestTimeoutCheckerInterval": { "index": 81, "kind": "parameter", "displayName": "Request Timeout Checker Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "1000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Configures how often Camel should check for timed out Exchanges when doing request\/reply over JMS. By default Camel checks once per second. But if you must react faster when a timeout occurs, then you can lower this interval, to check more frequently. The timeout is determined by the option requestTimeout." }, "synchronous": { "index": 82, "kind": "parameter", "displayName": "Synchronous", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Sets whether synchronous processing should be strictly used" }, - "transferException": { "index": 83, "kind": "parameter", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, - "transferExchange": { "index": 84, "kind": "parameter", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, - "useMessageIDAsCorrelationID": { "index": 85, "kind": "parameter", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, - "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 86, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, - "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 87, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, - "errorHandlerLoggingLevel": { "index": 88, "kind": "parameter", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, - "errorHandlerLogStackTrace": { "index": 89, "kind": "parameter", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, - "password": { "index": 90, "kind": "parameter", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "username": { "index": 91, "kind": "parameter", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "transacted": { "index": 92, "kind": "parameter", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, - "transactedInOut": { "index": 93, "kind": "parameter", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, - "lazyCreateTransactionManager": { "index": 94, "kind": "parameter", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, - "transactionManager": { "index": 95, "kind": "parameter", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, - "transactionName": { "index": 96, "kind": "parameter", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, - "transactionTimeout": { "index": 97, "kind": "parameter", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } + "temporaryQueueResolver": { "index": 83, "kind": "parameter", "displayName": "Temporary Queue Resolver", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.jms.TemporaryQueueResolver", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "A pluggable TemporaryQueueResolver that allows you to use your own resolver for creating temporary queues (some messaging systems has special requirements for creating temporary queues)." }, + "transferException": { "index": 84, "kind": "parameter", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, + "transferExchange": { "index": 85, "kind": "parameter", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, + "useMessageIDAsCorrelationID": { "index": 86, "kind": "parameter", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, + "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 87, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, + "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 88, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, + "errorHandlerLoggingLevel": { "index": 89, "kind": "parameter", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, + "errorHandlerLogStackTrace": { "index": 90, "kind": "parameter", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, + "password": { "index": 91, "kind": "parameter", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "username": { "index": 92, "kind": "parameter", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "transacted": { "index": 93, "kind": "parameter", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, + "transactedInOut": { "index": 94, "kind": "parameter", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, + "lazyCreateTransactionManager": { "index": 95, "kind": "parameter", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, + "transactionManager": { "index": 96, "kind": "parameter", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, + "transactionName": { "index": 97, "kind": "parameter", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, + "transactionTimeout": { "index": 98, "kind": "parameter", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } } } 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 43d36d90c3f4f..38cbd56db7ebb 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 @@ -107,22 +107,23 @@ "recoveryInterval": { "index": 81, "kind": "property", "displayName": "Recovery Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Specifies the interval between recovery attempts, i.e. when a connection is being refreshed, in milliseconds. The default is 5000 ms, that is, 5 seconds." }, "requestTimeoutCheckerInterval": { "index": 82, "kind": "property", "displayName": "Request Timeout Checker Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "1000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Configures how often Camel should check for timed out Exchanges when doing request\/reply over JMS. By default Camel checks once per second. But if you must react faster when a timeout occurs, then you can lower this interval, to check more frequently. The timeout is determined by the option requestTimeout." }, "synchronous": { "index": 83, "kind": "property", "displayName": "Synchronous", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Sets whether synchronous processing should be strictly used" }, - "transferException": { "index": 84, "kind": "property", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, - "transferExchange": { "index": 85, "kind": "property", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, - "useMessageIDAsCorrelationID": { "index": 86, "kind": "property", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, - "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 87, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, - "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 88, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, - "headerFilterStrategy": { "index": 89, "kind": "property", "displayName": "Header Filter Strategy", "group": "filter", "label": "filter", "required": false, "type": "object", "javaType": "org.apache.camel.spi.HeaderFilterStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message." }, - "errorHandlerLoggingLevel": { "index": 90, "kind": "property", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, - "errorHandlerLogStackTrace": { "index": 91, "kind": "property", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, - "password": { "index": 92, "kind": "property", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "username": { "index": 93, "kind": "property", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "transacted": { "index": 94, "kind": "property", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, - "transactedInOut": { "index": 95, "kind": "property", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, - "lazyCreateTransactionManager": { "index": 96, "kind": "property", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, - "transactionManager": { "index": 97, "kind": "property", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, - "transactionName": { "index": 98, "kind": "property", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, - "transactionTimeout": { "index": 99, "kind": "property", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } + "temporaryQueueResolver": { "index": 84, "kind": "property", "displayName": "Temporary Queue Resolver", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.jms.TemporaryQueueResolver", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "A pluggable TemporaryQueueResolver that allows you to use your own resolver for creating temporary queues (some messaging systems has special requirements for creating temporary queues)." }, + "transferException": { "index": 85, "kind": "property", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, + "transferExchange": { "index": 86, "kind": "property", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, + "useMessageIDAsCorrelationID": { "index": 87, "kind": "property", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, + "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 88, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, + "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 89, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, + "headerFilterStrategy": { "index": 90, "kind": "property", "displayName": "Header Filter Strategy", "group": "filter", "label": "filter", "required": false, "type": "object", "javaType": "org.apache.camel.spi.HeaderFilterStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message." }, + "errorHandlerLoggingLevel": { "index": 91, "kind": "property", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, + "errorHandlerLogStackTrace": { "index": 92, "kind": "property", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, + "password": { "index": 93, "kind": "property", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "username": { "index": 94, "kind": "property", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "transacted": { "index": 95, "kind": "property", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, + "transactedInOut": { "index": 96, "kind": "property", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, + "lazyCreateTransactionManager": { "index": 97, "kind": "property", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, + "transactionManager": { "index": 98, "kind": "property", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, + "transactionName": { "index": 99, "kind": "property", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, + "transactionTimeout": { "index": 100, "kind": "property", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } }, "headers": { "CamelJmsDestination": { "index": 0, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "jakarta.jms.Destination", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The destination.", "constantName": "org.apache.camel.component.jms.JmsConstants#JMS_DESTINATION" }, @@ -228,20 +229,21 @@ "recoveryInterval": { "index": 80, "kind": "parameter", "displayName": "Recovery Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Specifies the interval between recovery attempts, i.e. when a connection is being refreshed, in milliseconds. The default is 5000 ms, that is, 5 seconds." }, "requestTimeoutCheckerInterval": { "index": 81, "kind": "parameter", "displayName": "Request Timeout Checker Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "1000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Configures how often Camel should check for timed out Exchanges when doing request\/reply over JMS. By default Camel checks once per second. But if you must react faster when a timeout occurs, then you can lower this interval, to check more frequently. The timeout is determined by the option requestTimeout." }, "synchronous": { "index": 82, "kind": "parameter", "displayName": "Synchronous", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Sets whether synchronous processing should be strictly used" }, - "transferException": { "index": 83, "kind": "parameter", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, - "transferExchange": { "index": 84, "kind": "parameter", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, - "useMessageIDAsCorrelationID": { "index": 85, "kind": "parameter", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, - "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 86, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, - "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 87, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, - "errorHandlerLoggingLevel": { "index": 88, "kind": "parameter", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, - "errorHandlerLogStackTrace": { "index": 89, "kind": "parameter", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, - "password": { "index": 90, "kind": "parameter", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "username": { "index": 91, "kind": "parameter", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "transacted": { "index": 92, "kind": "parameter", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, - "transactedInOut": { "index": 93, "kind": "parameter", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, - "lazyCreateTransactionManager": { "index": 94, "kind": "parameter", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, - "transactionManager": { "index": 95, "kind": "parameter", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, - "transactionName": { "index": 96, "kind": "parameter", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, - "transactionTimeout": { "index": 97, "kind": "parameter", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } + "temporaryQueueResolver": { "index": 83, "kind": "parameter", "displayName": "Temporary Queue Resolver", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.jms.TemporaryQueueResolver", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "A pluggable TemporaryQueueResolver that allows you to use your own resolver for creating temporary queues (some messaging systems has special requirements for creating temporary queues)." }, + "transferException": { "index": 84, "kind": "parameter", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, + "transferExchange": { "index": 85, "kind": "parameter", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, + "useMessageIDAsCorrelationID": { "index": 86, "kind": "parameter", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, + "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 87, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, + "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 88, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, + "errorHandlerLoggingLevel": { "index": 89, "kind": "parameter", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, + "errorHandlerLogStackTrace": { "index": 90, "kind": "parameter", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, + "password": { "index": 91, "kind": "parameter", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "username": { "index": 92, "kind": "parameter", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "transacted": { "index": 93, "kind": "parameter", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, + "transactedInOut": { "index": 94, "kind": "parameter", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, + "lazyCreateTransactionManager": { "index": 95, "kind": "parameter", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, + "transactionManager": { "index": 96, "kind": "parameter", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, + "transactionName": { "index": 97, "kind": "parameter", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, + "transactionTimeout": { "index": 98, "kind": "parameter", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } } } 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 6ff864399827d..ac90bbd325e89 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 @@ -21,7 +21,7 @@ public class ActiveMQEndpointUriFactory extends org.apache.camel.support.compone private static final Set SECRET_PROPERTY_NAMES; private static final Set MULTI_VALUE_PREFIXES; static { - Set props = new HashSet<>(99); + Set props = new HashSet<>(100); props.add("acceptMessagesWhileStopping"); props.add("acknowledgementModeName"); props.add("allowAdditionalHeaders"); @@ -108,6 +108,7 @@ public class ActiveMQEndpointUriFactory extends org.apache.camel.support.compone props.add("subscriptionShared"); props.add("synchronous"); props.add("taskExecutor"); + props.add("temporaryQueueResolver"); props.add("testConnectionOnStartup"); props.add("timeToLive"); props.add("transacted"); diff --git a/components/camel-activemq/src/generated/resources/META-INF/org/apache/camel/component/activemq/activemq.json b/components/camel-activemq/src/generated/resources/META-INF/org/apache/camel/component/activemq/activemq.json index f06b341eb5800..6adfb3db8d498 100644 --- a/components/camel-activemq/src/generated/resources/META-INF/org/apache/camel/component/activemq/activemq.json +++ b/components/camel-activemq/src/generated/resources/META-INF/org/apache/camel/component/activemq/activemq.json @@ -110,23 +110,24 @@ "recoveryInterval": { "index": 84, "kind": "property", "displayName": "Recovery Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Specifies the interval between recovery attempts, i.e. when a connection is being refreshed, in milliseconds. The default is 5000 ms, that is, 5 seconds." }, "requestTimeoutCheckerInterval": { "index": 85, "kind": "property", "displayName": "Request Timeout Checker Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "1000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Configures how often Camel should check for timed out Exchanges when doing request\/reply over JMS. By default Camel checks once per second. But if you must react faster when a timeout occurs, then you can lower this interval, to check more frequently. The timeout is determined by the option requestTimeout." }, "synchronous": { "index": 86, "kind": "property", "displayName": "Synchronous", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Sets whether synchronous processing should be strictly used" }, - "transferException": { "index": 87, "kind": "property", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, - "transferExchange": { "index": 88, "kind": "property", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, - "trustAllPackages": { "index": 89, "kind": "property", "displayName": "Trust All Packages", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": false, "description": "Define if all Java packages are trusted or not (for Java object JMS message types). Notice its not recommended practice to send Java serialized objects over network. Setting this to true can expose security risks, so use this with care." }, - "useMessageIDAsCorrelationID": { "index": 90, "kind": "property", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, - "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 91, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, - "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 92, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, - "headerFilterStrategy": { "index": 93, "kind": "property", "displayName": "Header Filter Strategy", "group": "filter", "label": "filter", "required": false, "type": "object", "javaType": "org.apache.camel.spi.HeaderFilterStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message." }, - "errorHandlerLoggingLevel": { "index": 94, "kind": "property", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, - "errorHandlerLogStackTrace": { "index": 95, "kind": "property", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, - "password": { "index": 96, "kind": "property", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "username": { "index": 97, "kind": "property", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "transacted": { "index": 98, "kind": "property", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, - "transactedInOut": { "index": 99, "kind": "property", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, - "lazyCreateTransactionManager": { "index": 100, "kind": "property", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, - "transactionManager": { "index": 101, "kind": "property", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, - "transactionName": { "index": 102, "kind": "property", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, - "transactionTimeout": { "index": 103, "kind": "property", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } + "temporaryQueueResolver": { "index": 87, "kind": "property", "displayName": "Temporary Queue Resolver", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.jms.TemporaryQueueResolver", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "A pluggable TemporaryQueueResolver that allows you to use your own resolver for creating temporary queues (some messaging systems has special requirements for creating temporary queues)." }, + "transferException": { "index": 88, "kind": "property", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, + "transferExchange": { "index": 89, "kind": "property", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, + "trustAllPackages": { "index": 90, "kind": "property", "displayName": "Trust All Packages", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "defaultValue": false, "description": "Define if all Java packages are trusted or not (for Java object JMS message types). Notice its not recommended practice to send Java serialized objects over network. Setting this to true can expose security risks, so use this with care." }, + "useMessageIDAsCorrelationID": { "index": 91, "kind": "property", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, + "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 92, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, + "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 93, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, + "headerFilterStrategy": { "index": 94, "kind": "property", "displayName": "Header Filter Strategy", "group": "filter", "label": "filter", "required": false, "type": "object", "javaType": "org.apache.camel.spi.HeaderFilterStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message." }, + "errorHandlerLoggingLevel": { "index": 95, "kind": "property", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, + "errorHandlerLogStackTrace": { "index": 96, "kind": "property", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, + "password": { "index": 97, "kind": "property", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "username": { "index": 98, "kind": "property", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "transacted": { "index": 99, "kind": "property", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, + "transactedInOut": { "index": 100, "kind": "property", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, + "lazyCreateTransactionManager": { "index": 101, "kind": "property", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, + "transactionManager": { "index": 102, "kind": "property", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, + "transactionName": { "index": 103, "kind": "property", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, + "transactionTimeout": { "index": 104, "kind": "property", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } }, "headers": { "CamelJmsDestination": { "index": 0, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "jakarta.jms.Destination", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The destination.", "constantName": "org.apache.camel.component.jms.JmsConstants#JMS_DESTINATION" }, @@ -233,20 +234,21 @@ "recoveryInterval": { "index": 81, "kind": "parameter", "displayName": "Recovery Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Specifies the interval between recovery attempts, i.e. when a connection is being refreshed, in milliseconds. The default is 5000 ms, that is, 5 seconds." }, "requestTimeoutCheckerInterval": { "index": 82, "kind": "parameter", "displayName": "Request Timeout Checker Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "1000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Configures how often Camel should check for timed out Exchanges when doing request\/reply over JMS. By default Camel checks once per second. But if you must react faster when a timeout occurs, then you can lower this interval, to check more frequently. The timeout is determined by the option requestTimeout." }, "synchronous": { "index": 83, "kind": "parameter", "displayName": "Synchronous", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Sets whether synchronous processing should be strictly used" }, - "transferException": { "index": 84, "kind": "parameter", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, - "transferExchange": { "index": 85, "kind": "parameter", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, - "useMessageIDAsCorrelationID": { "index": 86, "kind": "parameter", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, - "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 87, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, - "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 88, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, - "errorHandlerLoggingLevel": { "index": 89, "kind": "parameter", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, - "errorHandlerLogStackTrace": { "index": 90, "kind": "parameter", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, - "password": { "index": 91, "kind": "parameter", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "username": { "index": 92, "kind": "parameter", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "transacted": { "index": 93, "kind": "parameter", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, - "transactedInOut": { "index": 94, "kind": "parameter", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, - "lazyCreateTransactionManager": { "index": 95, "kind": "parameter", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, - "transactionManager": { "index": 96, "kind": "parameter", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, - "transactionName": { "index": 97, "kind": "parameter", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, - "transactionTimeout": { "index": 98, "kind": "parameter", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } + "temporaryQueueResolver": { "index": 84, "kind": "parameter", "displayName": "Temporary Queue Resolver", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.jms.TemporaryQueueResolver", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "A pluggable TemporaryQueueResolver that allows you to use your own resolver for creating temporary queues (some messaging systems has special requirements for creating temporary queues)." }, + "transferException": { "index": 85, "kind": "parameter", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, + "transferExchange": { "index": 86, "kind": "parameter", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, + "useMessageIDAsCorrelationID": { "index": 87, "kind": "parameter", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, + "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 88, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, + "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 89, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, + "errorHandlerLoggingLevel": { "index": 90, "kind": "parameter", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, + "errorHandlerLogStackTrace": { "index": 91, "kind": "parameter", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, + "password": { "index": 92, "kind": "parameter", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "username": { "index": 93, "kind": "parameter", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "transacted": { "index": 94, "kind": "parameter", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, + "transactedInOut": { "index": 95, "kind": "parameter", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, + "lazyCreateTransactionManager": { "index": 96, "kind": "parameter", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, + "transactionManager": { "index": 97, "kind": "parameter", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, + "transactionName": { "index": 98, "kind": "parameter", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, + "transactionTimeout": { "index": 99, "kind": "parameter", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } } } diff --git a/components/camel-amqp/src/generated/java/org/apache/camel/component/amqp/AMQPEndpointUriFactory.java b/components/camel-amqp/src/generated/java/org/apache/camel/component/amqp/AMQPEndpointUriFactory.java index 7c9eacd934fca..88e096517b65a 100644 --- a/components/camel-amqp/src/generated/java/org/apache/camel/component/amqp/AMQPEndpointUriFactory.java +++ b/components/camel-amqp/src/generated/java/org/apache/camel/component/amqp/AMQPEndpointUriFactory.java @@ -21,7 +21,7 @@ public class AMQPEndpointUriFactory extends org.apache.camel.support.component.E private static final Set SECRET_PROPERTY_NAMES; private static final Set MULTI_VALUE_PREFIXES; static { - Set props = new HashSet<>(98); + Set props = new HashSet<>(99); props.add("acceptMessagesWhileStopping"); props.add("acknowledgementModeName"); props.add("allowAdditionalHeaders"); @@ -107,6 +107,7 @@ public class AMQPEndpointUriFactory extends org.apache.camel.support.component.E props.add("subscriptionShared"); props.add("synchronous"); props.add("taskExecutor"); + props.add("temporaryQueueResolver"); props.add("testConnectionOnStartup"); props.add("timeToLive"); props.add("transacted"); diff --git a/components/camel-amqp/src/generated/resources/META-INF/org/apache/camel/component/amqp/amqp.json b/components/camel-amqp/src/generated/resources/META-INF/org/apache/camel/component/amqp/amqp.json index 9ead074c98c39..9ade896108bf2 100644 --- a/components/camel-amqp/src/generated/resources/META-INF/org/apache/camel/component/amqp/amqp.json +++ b/components/camel-amqp/src/generated/resources/META-INF/org/apache/camel/component/amqp/amqp.json @@ -108,22 +108,23 @@ "recoveryInterval": { "index": 82, "kind": "property", "displayName": "Recovery Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Specifies the interval between recovery attempts, i.e. when a connection is being refreshed, in milliseconds. The default is 5000 ms, that is, 5 seconds." }, "requestTimeoutCheckerInterval": { "index": 83, "kind": "property", "displayName": "Request Timeout Checker Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "1000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Configures how often Camel should check for timed out Exchanges when doing request\/reply over JMS. By default Camel checks once per second. But if you must react faster when a timeout occurs, then you can lower this interval, to check more frequently. The timeout is determined by the option requestTimeout." }, "synchronous": { "index": 84, "kind": "property", "displayName": "Synchronous", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Sets whether synchronous processing should be strictly used" }, - "transferException": { "index": 85, "kind": "property", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, - "transferExchange": { "index": 86, "kind": "property", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, - "useMessageIDAsCorrelationID": { "index": 87, "kind": "property", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, - "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 88, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, - "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 89, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, - "headerFilterStrategy": { "index": 90, "kind": "property", "displayName": "Header Filter Strategy", "group": "filter", "label": "filter", "required": false, "type": "object", "javaType": "org.apache.camel.spi.HeaderFilterStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message." }, - "errorHandlerLoggingLevel": { "index": 91, "kind": "property", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, - "errorHandlerLogStackTrace": { "index": 92, "kind": "property", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, - "password": { "index": 93, "kind": "property", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "username": { "index": 94, "kind": "property", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "transacted": { "index": 95, "kind": "property", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, - "transactedInOut": { "index": 96, "kind": "property", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, - "lazyCreateTransactionManager": { "index": 97, "kind": "property", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, - "transactionManager": { "index": 98, "kind": "property", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, - "transactionName": { "index": 99, "kind": "property", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, - "transactionTimeout": { "index": 100, "kind": "property", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } + "temporaryQueueResolver": { "index": 85, "kind": "property", "displayName": "Temporary Queue Resolver", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.jms.TemporaryQueueResolver", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "A pluggable TemporaryQueueResolver that allows you to use your own resolver for creating temporary queues (some messaging systems has special requirements for creating temporary queues)." }, + "transferException": { "index": 86, "kind": "property", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, + "transferExchange": { "index": 87, "kind": "property", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, + "useMessageIDAsCorrelationID": { "index": 88, "kind": "property", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, + "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 89, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, + "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 90, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, + "headerFilterStrategy": { "index": 91, "kind": "property", "displayName": "Header Filter Strategy", "group": "filter", "label": "filter", "required": false, "type": "object", "javaType": "org.apache.camel.spi.HeaderFilterStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message." }, + "errorHandlerLoggingLevel": { "index": 92, "kind": "property", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, + "errorHandlerLogStackTrace": { "index": 93, "kind": "property", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, + "password": { "index": 94, "kind": "property", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "username": { "index": 95, "kind": "property", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "transacted": { "index": 96, "kind": "property", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, + "transactedInOut": { "index": 97, "kind": "property", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, + "lazyCreateTransactionManager": { "index": 98, "kind": "property", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, + "transactionManager": { "index": 99, "kind": "property", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, + "transactionName": { "index": 100, "kind": "property", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, + "transactionTimeout": { "index": 101, "kind": "property", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } }, "headers": { "CamelJmsDestination": { "index": 0, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "jakarta.jms.Destination", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The destination.", "constantName": "org.apache.camel.component.jms.JmsConstants#JMS_DESTINATION" }, @@ -229,20 +230,21 @@ "recoveryInterval": { "index": 80, "kind": "parameter", "displayName": "Recovery Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Specifies the interval between recovery attempts, i.e. when a connection is being refreshed, in milliseconds. The default is 5000 ms, that is, 5 seconds." }, "requestTimeoutCheckerInterval": { "index": 81, "kind": "parameter", "displayName": "Request Timeout Checker Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "1000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Configures how often Camel should check for timed out Exchanges when doing request\/reply over JMS. By default Camel checks once per second. But if you must react faster when a timeout occurs, then you can lower this interval, to check more frequently. The timeout is determined by the option requestTimeout." }, "synchronous": { "index": 82, "kind": "parameter", "displayName": "Synchronous", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Sets whether synchronous processing should be strictly used" }, - "transferException": { "index": 83, "kind": "parameter", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, - "transferExchange": { "index": 84, "kind": "parameter", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, - "useMessageIDAsCorrelationID": { "index": 85, "kind": "parameter", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, - "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 86, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, - "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 87, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, - "errorHandlerLoggingLevel": { "index": 88, "kind": "parameter", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, - "errorHandlerLogStackTrace": { "index": 89, "kind": "parameter", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, - "password": { "index": 90, "kind": "parameter", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "username": { "index": 91, "kind": "parameter", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "transacted": { "index": 92, "kind": "parameter", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, - "transactedInOut": { "index": 93, "kind": "parameter", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, - "lazyCreateTransactionManager": { "index": 94, "kind": "parameter", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, - "transactionManager": { "index": 95, "kind": "parameter", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, - "transactionName": { "index": 96, "kind": "parameter", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, - "transactionTimeout": { "index": 97, "kind": "parameter", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } + "temporaryQueueResolver": { "index": 83, "kind": "parameter", "displayName": "Temporary Queue Resolver", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.jms.TemporaryQueueResolver", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "A pluggable TemporaryQueueResolver that allows you to use your own resolver for creating temporary queues (some messaging systems has special requirements for creating temporary queues)." }, + "transferException": { "index": 84, "kind": "parameter", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, + "transferExchange": { "index": 85, "kind": "parameter", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, + "useMessageIDAsCorrelationID": { "index": 86, "kind": "parameter", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, + "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 87, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, + "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 88, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, + "errorHandlerLoggingLevel": { "index": 89, "kind": "parameter", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, + "errorHandlerLogStackTrace": { "index": 90, "kind": "parameter", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, + "password": { "index": 91, "kind": "parameter", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "username": { "index": 92, "kind": "parameter", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "transacted": { "index": 93, "kind": "parameter", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, + "transactedInOut": { "index": 94, "kind": "parameter", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, + "lazyCreateTransactionManager": { "index": 95, "kind": "parameter", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, + "transactionManager": { "index": 96, "kind": "parameter", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, + "transactionName": { "index": 97, "kind": "parameter", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, + "transactionTimeout": { "index": 98, "kind": "parameter", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } } } diff --git a/components/camel-jms/src/generated/java/org/apache/camel/component/jms/JmsComponentConfigurer.java b/components/camel-jms/src/generated/java/org/apache/camel/component/jms/JmsComponentConfigurer.java index 6be0d846798ba..3876a03822d73 100644 --- a/components/camel-jms/src/generated/java/org/apache/camel/component/jms/JmsComponentConfigurer.java +++ b/components/camel-jms/src/generated/java/org/apache/camel/component/jms/JmsComponentConfigurer.java @@ -197,6 +197,8 @@ public boolean configure(CamelContext camelContext, Object obj, String name, Obj case "synchronous": getOrCreateConfiguration(target).setSynchronous(property(camelContext, boolean.class, value)); return true; case "taskexecutor": case "taskExecutor": getOrCreateConfiguration(target).setTaskExecutor(property(camelContext, org.springframework.core.task.TaskExecutor.class, value)); return true; + case "temporaryqueueresolver": + case "temporaryQueueResolver": getOrCreateConfiguration(target).setTemporaryQueueResolver(property(camelContext, org.apache.camel.component.jms.TemporaryQueueResolver.class, value)); return true; case "testconnectiononstartup": case "testConnectionOnStartup": getOrCreateConfiguration(target).setTestConnectionOnStartup(property(camelContext, boolean.class, value)); return true; case "timetolive": @@ -397,6 +399,8 @@ public Class getOptionType(String name, boolean ignoreCase) { case "synchronous": return boolean.class; case "taskexecutor": case "taskExecutor": return org.springframework.core.task.TaskExecutor.class; + case "temporaryqueueresolver": + case "temporaryQueueResolver": return org.apache.camel.component.jms.TemporaryQueueResolver.class; case "testconnectiononstartup": case "testConnectionOnStartup": return boolean.class; case "timetolive": @@ -598,6 +602,8 @@ public Object getOptionValue(Object obj, String name, boolean ignoreCase) { case "synchronous": return getOrCreateConfiguration(target).isSynchronous(); case "taskexecutor": case "taskExecutor": return getOrCreateConfiguration(target).getTaskExecutor(); + case "temporaryqueueresolver": + case "temporaryQueueResolver": return getOrCreateConfiguration(target).getTemporaryQueueResolver(); case "testconnectiononstartup": case "testConnectionOnStartup": return getOrCreateConfiguration(target).isTestConnectionOnStartup(); case "timetolive": diff --git a/components/camel-jms/src/generated/java/org/apache/camel/component/jms/JmsEndpointConfigurer.java b/components/camel-jms/src/generated/java/org/apache/camel/component/jms/JmsEndpointConfigurer.java index aa6e21c00fa83..a1fbbbeb60793 100644 --- a/components/camel-jms/src/generated/java/org/apache/camel/component/jms/JmsEndpointConfigurer.java +++ b/components/camel-jms/src/generated/java/org/apache/camel/component/jms/JmsEndpointConfigurer.java @@ -183,6 +183,8 @@ public boolean configure(CamelContext camelContext, Object obj, String name, Obj case "synchronous": target.getConfiguration().setSynchronous(property(camelContext, boolean.class, value)); return true; case "taskexecutor": case "taskExecutor": target.getConfiguration().setTaskExecutor(property(camelContext, org.springframework.core.task.TaskExecutor.class, value)); return true; + case "temporaryqueueresolver": + case "temporaryQueueResolver": target.getConfiguration().setTemporaryQueueResolver(property(camelContext, org.apache.camel.component.jms.TemporaryQueueResolver.class, value)); return true; case "testconnectiononstartup": case "testConnectionOnStartup": target.getConfiguration().setTestConnectionOnStartup(property(camelContext, boolean.class, value)); return true; case "timetolive": @@ -376,6 +378,8 @@ public Class getOptionType(String name, boolean ignoreCase) { case "synchronous": return boolean.class; case "taskexecutor": case "taskExecutor": return org.springframework.core.task.TaskExecutor.class; + case "temporaryqueueresolver": + case "temporaryQueueResolver": return org.apache.camel.component.jms.TemporaryQueueResolver.class; case "testconnectiononstartup": case "testConnectionOnStartup": return boolean.class; case "timetolive": @@ -570,6 +574,8 @@ public Object getOptionValue(Object obj, String name, boolean ignoreCase) { case "synchronous": return target.getConfiguration().isSynchronous(); case "taskexecutor": case "taskExecutor": return target.getConfiguration().getTaskExecutor(); + case "temporaryqueueresolver": + case "temporaryQueueResolver": return target.getConfiguration().getTemporaryQueueResolver(); case "testconnectiononstartup": case "testConnectionOnStartup": return target.getConfiguration().isTestConnectionOnStartup(); case "timetolive": diff --git a/components/camel-jms/src/generated/java/org/apache/camel/component/jms/JmsEndpointUriFactory.java b/components/camel-jms/src/generated/java/org/apache/camel/component/jms/JmsEndpointUriFactory.java index 03537e9c6ccf6..b5643993a9641 100644 --- a/components/camel-jms/src/generated/java/org/apache/camel/component/jms/JmsEndpointUriFactory.java +++ b/components/camel-jms/src/generated/java/org/apache/camel/component/jms/JmsEndpointUriFactory.java @@ -21,7 +21,7 @@ public class JmsEndpointUriFactory extends org.apache.camel.support.component.En private static final Set SECRET_PROPERTY_NAMES; private static final Set MULTI_VALUE_PREFIXES; static { - Set props = new HashSet<>(98); + Set props = new HashSet<>(99); props.add("acceptMessagesWhileStopping"); props.add("acknowledgementModeName"); props.add("allowAdditionalHeaders"); @@ -107,6 +107,7 @@ public class JmsEndpointUriFactory extends org.apache.camel.support.component.En props.add("subscriptionShared"); props.add("synchronous"); props.add("taskExecutor"); + props.add("temporaryQueueResolver"); props.add("testConnectionOnStartup"); props.add("timeToLive"); props.add("transacted"); diff --git a/components/camel-jms/src/generated/resources/META-INF/org/apache/camel/component/jms/jms.json b/components/camel-jms/src/generated/resources/META-INF/org/apache/camel/component/jms/jms.json index 43d36d90c3f4f..38cbd56db7ebb 100644 --- a/components/camel-jms/src/generated/resources/META-INF/org/apache/camel/component/jms/jms.json +++ b/components/camel-jms/src/generated/resources/META-INF/org/apache/camel/component/jms/jms.json @@ -107,22 +107,23 @@ "recoveryInterval": { "index": 81, "kind": "property", "displayName": "Recovery Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Specifies the interval between recovery attempts, i.e. when a connection is being refreshed, in milliseconds. The default is 5000 ms, that is, 5 seconds." }, "requestTimeoutCheckerInterval": { "index": 82, "kind": "property", "displayName": "Request Timeout Checker Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "1000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Configures how often Camel should check for timed out Exchanges when doing request\/reply over JMS. By default Camel checks once per second. But if you must react faster when a timeout occurs, then you can lower this interval, to check more frequently. The timeout is determined by the option requestTimeout." }, "synchronous": { "index": 83, "kind": "property", "displayName": "Synchronous", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Sets whether synchronous processing should be strictly used" }, - "transferException": { "index": 84, "kind": "property", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, - "transferExchange": { "index": 85, "kind": "property", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, - "useMessageIDAsCorrelationID": { "index": 86, "kind": "property", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, - "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 87, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, - "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 88, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, - "headerFilterStrategy": { "index": 89, "kind": "property", "displayName": "Header Filter Strategy", "group": "filter", "label": "filter", "required": false, "type": "object", "javaType": "org.apache.camel.spi.HeaderFilterStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message." }, - "errorHandlerLoggingLevel": { "index": 90, "kind": "property", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, - "errorHandlerLogStackTrace": { "index": 91, "kind": "property", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, - "password": { "index": 92, "kind": "property", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "username": { "index": 93, "kind": "property", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "transacted": { "index": 94, "kind": "property", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, - "transactedInOut": { "index": 95, "kind": "property", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, - "lazyCreateTransactionManager": { "index": 96, "kind": "property", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, - "transactionManager": { "index": 97, "kind": "property", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, - "transactionName": { "index": 98, "kind": "property", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, - "transactionTimeout": { "index": 99, "kind": "property", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } + "temporaryQueueResolver": { "index": 84, "kind": "property", "displayName": "Temporary Queue Resolver", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.jms.TemporaryQueueResolver", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "A pluggable TemporaryQueueResolver that allows you to use your own resolver for creating temporary queues (some messaging systems has special requirements for creating temporary queues)." }, + "transferException": { "index": 85, "kind": "property", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, + "transferExchange": { "index": 86, "kind": "property", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, + "useMessageIDAsCorrelationID": { "index": 87, "kind": "property", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, + "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 88, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, + "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 89, "kind": "property", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, + "headerFilterStrategy": { "index": 90, "kind": "property", "displayName": "Header Filter Strategy", "group": "filter", "label": "filter", "required": false, "type": "object", "javaType": "org.apache.camel.spi.HeaderFilterStrategy", "deprecated": false, "autowired": false, "secret": false, "description": "To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message." }, + "errorHandlerLoggingLevel": { "index": 91, "kind": "property", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, + "errorHandlerLogStackTrace": { "index": 92, "kind": "property", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, + "password": { "index": 93, "kind": "property", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "username": { "index": 94, "kind": "property", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "transacted": { "index": 95, "kind": "property", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, + "transactedInOut": { "index": 96, "kind": "property", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, + "lazyCreateTransactionManager": { "index": 97, "kind": "property", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, + "transactionManager": { "index": 98, "kind": "property", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, + "transactionName": { "index": 99, "kind": "property", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, + "transactionTimeout": { "index": 100, "kind": "property", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } }, "headers": { "CamelJmsDestination": { "index": 0, "kind": "header", "displayName": "", "group": "producer", "label": "producer", "required": false, "javaType": "jakarta.jms.Destination", "deprecated": false, "deprecationNote": "", "autowired": false, "secret": false, "description": "The destination.", "constantName": "org.apache.camel.component.jms.JmsConstants#JMS_DESTINATION" }, @@ -228,20 +229,21 @@ "recoveryInterval": { "index": 80, "kind": "parameter", "displayName": "Recovery Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "5000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Specifies the interval between recovery attempts, i.e. when a connection is being refreshed, in milliseconds. The default is 5000 ms, that is, 5 seconds." }, "requestTimeoutCheckerInterval": { "index": 81, "kind": "parameter", "displayName": "Request Timeout Checker Interval", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "1000", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Configures how often Camel should check for timed out Exchanges when doing request\/reply over JMS. By default Camel checks once per second. But if you must react faster when a timeout occurs, then you can lower this interval, to check more frequently. The timeout is determined by the option requestTimeout." }, "synchronous": { "index": 82, "kind": "parameter", "displayName": "Synchronous", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Sets whether synchronous processing should be strictly used" }, - "transferException": { "index": 83, "kind": "parameter", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, - "transferExchange": { "index": 84, "kind": "parameter", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, - "useMessageIDAsCorrelationID": { "index": 85, "kind": "parameter", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, - "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 86, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, - "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 87, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, - "errorHandlerLoggingLevel": { "index": 88, "kind": "parameter", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, - "errorHandlerLogStackTrace": { "index": 89, "kind": "parameter", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, - "password": { "index": 90, "kind": "parameter", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "username": { "index": 91, "kind": "parameter", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, - "transacted": { "index": 92, "kind": "parameter", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, - "transactedInOut": { "index": 93, "kind": "parameter", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, - "lazyCreateTransactionManager": { "index": 94, "kind": "parameter", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, - "transactionManager": { "index": 95, "kind": "parameter", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, - "transactionName": { "index": 96, "kind": "parameter", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, - "transactionTimeout": { "index": 97, "kind": "parameter", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } + "temporaryQueueResolver": { "index": 83, "kind": "parameter", "displayName": "Temporary Queue Resolver", "group": "advanced", "label": "advanced", "required": false, "type": "object", "javaType": "org.apache.camel.component.jms.TemporaryQueueResolver", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "A pluggable TemporaryQueueResolver that allows you to use your own resolver for creating temporary queues (some messaging systems has special requirements for creating temporary queues)." }, + "transferException": { "index": 84, "kind": "parameter", "displayName": "Transfer Exception", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If enabled and you are using Request Reply messaging (InOut) and an Exchange failed on the consumer side, then the caused Exception will be send back in response as a jakarta.jms.ObjectMessage. If the client is Camel, the returned Exception is rethrown. This allows you to use Camel JMS as a bridge in your routing - for example, using persistent queues to enable robust routing. Notice that if you also have transferExchange enabled, this option takes precedence. The caught exception is required to be serializable. The original Exception on the consumer side can be wrapped in an outer exception such as org.apache.camel.RuntimeCamelException when returned to the producer. Use this with caution as the data is using Java Object serialization and requires the received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer!" }, + "transferExchange": { "index": 85, "kind": "parameter", "displayName": "Transfer Exchange", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "You can transfer the exchange over the wire instead of just the body and headers. The following fields are transferred: In body, Out body, Fault body, In headers, Out headers, Fault headers, exchange properties, exchange exception. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level. You must enable this option on both the producer and consumer side, so Camel knows the payloads is an Exchange and not a regular payload. Use this with caution as the data is using Java Object serialization and requires the receiver to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumers having to use compatible Camel versions!" }, + "useMessageIDAsCorrelationID": { "index": 86, "kind": "parameter", "displayName": "Use Message IDAs Correlation ID", "group": "advanced", "label": "advanced", "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 JMSMessageID should always be used as JMSCorrelationID for InOut messages." }, + "waitForProvisionCorrelationToBeUpdatedCounter": { "index": 87, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Counter", "group": "advanced", "label": "advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": 50, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Number of times to wait for provisional correlation id to be updated to the actual correlation id when doing request\/reply over JMS and when the option useMessageIDAsCorrelationID is enabled." }, + "waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": { "index": 88, "kind": "parameter", "displayName": "Wait For Provision Correlation To Be Updated Thread Sleeping Time", "group": "advanced", "label": "advanced", "required": false, "type": "duration", "javaType": "long", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "100", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated." }, + "errorHandlerLoggingLevel": { "index": 89, "kind": "parameter", "displayName": "Error Handler Logging Level", "group": "logging", "label": "consumer,logging", "required": false, "type": "object", "javaType": "org.apache.camel.LoggingLevel", "enum": [ "TRACE", "DEBUG", "INFO", "WARN", "ERROR", "OFF" ], "deprecated": false, "autowired": false, "secret": false, "defaultValue": "WARN", "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions." }, + "errorHandlerLogStackTrace": { "index": 90, "kind": "parameter", "displayName": "Error Handler Log Stack Trace", "group": "logging", "label": "consumer,logging", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Allows to control whether stack-traces should be logged or not, by the default errorHandler." }, + "password": { "index": 91, "kind": "parameter", "displayName": "Password", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "username": { "index": 92, "kind": "parameter", "displayName": "Username", "group": "security", "label": "security", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory." }, + "transacted": { "index": 93, "kind": "parameter", "displayName": "Transacted", "group": "transaction", "label": "transaction", "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 use transacted mode" }, + "transactedInOut": { "index": 94, "kind": "parameter", "displayName": "Transacted In Out", "group": "transaction", "label": "transaction", "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 InOut operations (request reply) default to using transacted mode If this flag is set to true, then Spring JmsTemplate will have sessionTransacted set to true, and the acknowledgeMode as transacted on the JmsTemplate used for InOut operations. Note from Spring JMS: that within a JTA transaction, the parameters passed to createQueue, createTopic methods are not taken into account. Depending on the Java EE transaction context, the container makes its own decisions on these values. Analogously, these parameters are not taken into account within a locally managed transaction either, since Spring JMS operates on an existing JMS Session in this case. Setting this flag to true will use a short local JMS transaction when running outside of a managed transaction, and a synchronized local JMS transaction in case of a managed transaction (other than an XA transaction) being present. This has the effect of a local JMS transaction being managed alongside the main transaction (which might be a native JDBC transaction), with the JMS transaction committing right after the main transaction." }, + "lazyCreateTransactionManager": { "index": 95, "kind": "parameter", "displayName": "Lazy Create Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true." }, + "transactionManager": { "index": 96, "kind": "parameter", "displayName": "Transaction Manager", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "object", "javaType": "org.springframework.transaction.PlatformTransactionManager", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The Spring transaction manager to use." }, + "transactionName": { "index": 97, "kind": "parameter", "displayName": "Transaction Name", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The name of the transaction to use." }, + "transactionTimeout": { "index": 98, "kind": "parameter", "displayName": "Transaction Timeout", "group": "transaction (advanced)", "label": "transaction,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "autowired": false, "secret": false, "defaultValue": -1, "configurationClass": "org.apache.camel.component.jms.JmsConfiguration", "configurationField": "configuration", "description": "The timeout value of the transaction (in seconds), if using transacted mode." } } } diff --git a/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java b/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java index 1240848bc384d..a68f85b665414 100644 --- a/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java +++ b/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsComponent.java @@ -171,8 +171,9 @@ public void setAllowAutoWiredConnectionFactory(boolean allowAutoWiredConnectionF } /** - * Whether to auto-discover DestinationResolver from the registry, if no destination resolver has been configured. - * If only one instance of DestinationResolver is found then it will be used. This is enabled by default. + * Whether to auto-discover DestinationResolver/TemporaryQueueResolver from the registry, if no destination resolver + * has been configured. If only one instance of DestinationResolver/TemporaryQueueResolver is found then it will be + * used. This is enabled by default. */ public boolean isAllowAutoWiredDestinationResolver() { return allowAutoWiredDestinationResolver; @@ -707,6 +708,14 @@ public static DestinationResolver createDestinationResolver(DestinationEndpoint return JmsConfiguration.createDestinationResolver(destinationEndpoint); } + public TemporaryQueueResolver getTemporaryQueueResolver() { + return configuration.getTemporaryQueueResolver(); + } + + public void setTemporaryQueueResolver(TemporaryQueueResolver temporaryQueueResolver) { + configuration.setTemporaryQueueResolver(temporaryQueueResolver); + } + public void configureMessageListenerContainer(AbstractMessageListenerContainer container, JmsEndpoint endpoint) { configuration.configureMessageListenerContainer(container, endpoint); } @@ -1074,7 +1083,17 @@ && isAllowAutoWiredConnectionFactory()) { DestinationResolver destinationResolver = beans.iterator().next(); configuration.setDestinationResolver(destinationResolver); } else if (beans.size() > 1) { - LOG.debug("Cannot autowire ConnectionFactory as {} instances found in registry.", beans.size()); + LOG.debug("Cannot autowire DestinationResolver as {} instances found in registry.", beans.size()); + } + } + + if (configuration.getTemporaryQueueResolver() == null && isAllowAutoWiredDestinationResolver()) { + Set beans = getCamelContext().getRegistry().findByType(TemporaryQueueResolver.class); + if (beans.size() == 1) { + TemporaryQueueResolver destinationResolver = beans.iterator().next(); + configuration.setTemporaryQueueResolver(destinationResolver); + } else if (beans.size() > 1) { + LOG.debug("Cannot autowire TemporaryQueueResolver as {} instances found in registry.", beans.size()); } } diff --git a/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConfiguration.java b/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConfiguration.java index 23897aff95ce3..7abd8cd67a7d4 100644 --- a/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConfiguration.java +++ b/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsConfiguration.java @@ -82,6 +82,10 @@ public class JmsConfiguration implements Cloneable { description = "A pluggable org.springframework.jms.support.destination.DestinationResolver that allows you to use your own resolver" + " (for example, to lookup the real destination in a JNDI registry).") private DestinationResolver destinationResolver; + @UriParam(label = "advanced", + description = "A pluggable TemporaryQueueResolver that allows you to use your own resolver for creating temporary queues" + + " (some messaging systems has special requirements for creating temporary queues).") + private TemporaryQueueResolver temporaryQueueResolver; // Used to configure the spring Container @UriParam(label = "advanced", description = "Specifies the JMS Exception Listener that is to be notified of any underlying JMS exceptions.") @@ -1567,6 +1571,18 @@ public void setDestinationResolver(DestinationResolver destinationResolver) { this.destinationResolver = destinationResolver; } + public TemporaryQueueResolver getTemporaryQueueResolver() { + return temporaryQueueResolver; + } + + /** + * A pluggable TemporaryQueueResolver that allows you to use your own resolver for creating temporary queues (some + * messaging systems has special requirements for creating temporary queues). + */ + public void setTemporaryQueueResolver(TemporaryQueueResolver temporaryQueueResolver) { + this.temporaryQueueResolver = temporaryQueueResolver; + } + // Implementation methods // ------------------------------------------------------------------------- diff --git a/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java b/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java index 3fb3c0e4e899b..307cc81078bd3 100644 --- a/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java +++ b/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsEndpoint.java @@ -502,6 +502,10 @@ public DestinationResolver getDestinationResolver() { return getConfiguration().getDestinationResolver(); } + public TemporaryQueueResolver getTemporaryQueueResolver() { + return getConfiguration().getTemporaryQueueResolver(); + } + @ManagedAttribute public String getDurableSubscriptionName() { return getConfiguration().getDurableSubscriptionName(); @@ -821,6 +825,10 @@ public void setDestinationResolver(DestinationResolver destinationResolver) { getConfiguration().setDestinationResolver(destinationResolver); } + public void setDestinationResolver(TemporaryQueueResolver temporaryQueueResolver) { + getConfiguration().setTemporaryQueueResolver(temporaryQueueResolver); + } + @ManagedAttribute public void setDisableReplyTo(boolean disableReplyTo) { getConfiguration().setDisableReplyTo(disableReplyTo); diff --git a/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java b/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java index bb51ff9f97ff8..46e8abde90c93 100644 --- a/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java +++ b/components/camel-jms/src/main/java/org/apache/camel/component/jms/JmsProducer.java @@ -568,7 +568,8 @@ protected void doStop() throws Exception { protected ReplyManager createReplyManager() throws Exception { // use a temporary queue - ReplyManager replyManager = new TemporaryQueueReplyManager(getEndpoint().getCamelContext()); + ReplyManager replyManager + = new TemporaryQueueReplyManager(getEndpoint().getCamelContext(), getEndpoint().getTemporaryQueueResolver()); replyManager.setEndpoint(getEndpoint()); String name = "JmsReplyManagerTimeoutChecker[" + getEndpoint().getEndpointConfiguredDestinationName() + "]"; diff --git a/components/camel-jms/src/main/java/org/apache/camel/component/jms/TemporaryQueueResolver.java b/components/camel-jms/src/main/java/org/apache/camel/component/jms/TemporaryQueueResolver.java new file mode 100644 index 0000000000000..f8ebe421fb684 --- /dev/null +++ b/components/camel-jms/src/main/java/org/apache/camel/component/jms/TemporaryQueueResolver.java @@ -0,0 +1,41 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.camel.component.jms; + +import jakarta.jms.JMSException; +import jakarta.jms.Session; +import jakarta.jms.TemporaryQueue; + +/** + * Resolver to create temporary queue. + */ +public interface TemporaryQueueResolver { + + /** + * Create the temporary queue. + * + * @param session the JMS session + * @return the created queue + */ + TemporaryQueue createTemporaryQueue(Session session) throws JMSException; + + /** + * Deletes the temporary queue when no longer in use, Camel is shutting down, or the JMS session is refreshed. + */ + void delete(TemporaryQueue queue); + +} diff --git a/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/TemporaryQueueReplyManager.java b/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/TemporaryQueueReplyManager.java index ba5d4a22e421f..fc715521c2616 100644 --- a/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/TemporaryQueueReplyManager.java +++ b/components/camel-jms/src/main/java/org/apache/camel/component/jms/reply/TemporaryQueueReplyManager.java @@ -28,10 +28,14 @@ import org.apache.camel.AsyncCallback; import org.apache.camel.CamelContext; import org.apache.camel.Exchange; +import org.apache.camel.NonManagedService; import org.apache.camel.component.jms.ConsumerType; import org.apache.camel.component.jms.DefaultJmsMessageListenerContainer; import org.apache.camel.component.jms.DefaultSpringErrorHandler; import org.apache.camel.component.jms.SimpleJmsMessageListenerContainer; +import org.apache.camel.component.jms.TemporaryQueueResolver; +import org.apache.camel.support.service.ServiceHelper; +import org.apache.camel.support.service.ServiceSupport; import org.springframework.jms.listener.AbstractMessageListenerContainer; import org.springframework.jms.listener.DefaultMessageListenerContainer; import org.springframework.jms.support.destination.DestinationResolver; @@ -41,16 +45,22 @@ */ public class TemporaryQueueReplyManager extends ReplyManagerSupport { - final TemporaryReplyQueueDestinationResolver destResolver = new TemporaryReplyQueueDestinationResolver(); + final TemporaryReplyQueueDestinationResolver destinationResolver; - public TemporaryQueueReplyManager(CamelContext camelContext) { + public TemporaryQueueReplyManager(CamelContext camelContext, TemporaryQueueResolver resolver) { super(camelContext); + this.destinationResolver = new TemporaryReplyQueueDestinationResolver(resolver); + } + + @Override + protected void doStop() throws Exception { + ServiceHelper.stopService(destinationResolver); } @Override public Destination getReplyTo() { try { - destResolver.destinationReady(); + destinationResolver.destinationReady(); } catch (InterruptedException e) { log.warn("Interrupted while waiting for JMSReplyTo destination refresh due to: {}.", e.getMessage()); @@ -116,7 +126,7 @@ protected AbstractMessageListenerContainer createDefaultListenerContainer() thro = new DefaultJmsMessageListenerContainer(endpoint, endpoint.isAllowReplyManagerQuickStop()); answer.setDestinationName("temporary"); - answer.setDestinationResolver(destResolver); + answer.setDestinationResolver(destinationResolver); answer.setAutoStartup(true); if (endpoint.getMaxMessagesPerTask() >= 0) { answer.setMaxMessagesPerTask(endpoint.getMaxMessagesPerTask()); @@ -148,7 +158,8 @@ protected AbstractMessageListenerContainer createDefaultListenerContainer() thro answer.setSessionTransacted(false); // other optional properties - answer.setExceptionListener(new TemporaryReplyQueueExceptionListener(destResolver, endpoint.getExceptionListener())); + answer.setExceptionListener( + new TemporaryReplyQueueExceptionListener(destinationResolver, endpoint.getExceptionListener())); if (endpoint.getErrorHandler() != null) { answer.setErrorHandler(endpoint.getErrorHandler()); @@ -186,7 +197,7 @@ protected AbstractMessageListenerContainer createDefaultListenerContainer() thro private AbstractMessageListenerContainer createSimpleListenerContainer() { SimpleJmsMessageListenerContainer answer = new SimpleJmsMessageListenerContainer(endpoint); answer.setDestinationName("temporary"); - answer.setDestinationResolver(destResolver); + answer.setDestinationResolver(destinationResolver); answer.setAutoStartup(true); answer.setMessageListener(this); answer.setPubSubDomain(false); @@ -203,7 +214,8 @@ private AbstractMessageListenerContainer createSimpleListenerContainer() { answer.setSessionTransacted(false); // other optional properties - answer.setExceptionListener(new TemporaryReplyQueueExceptionListener(destResolver, endpoint.getExceptionListener())); + answer.setExceptionListener( + new TemporaryReplyQueueExceptionListener(destinationResolver, endpoint.getExceptionListener())); if (endpoint.getErrorHandler() != null) { answer.setErrorHandler(endpoint.getErrorHandler()); @@ -261,9 +273,15 @@ public void onException(JMSException exception) { } - private final class TemporaryReplyQueueDestinationResolver implements DestinationResolver { + private final class TemporaryReplyQueueDestinationResolver extends ServiceSupport + implements DestinationResolver, NonManagedService { private TemporaryQueue queue; private final AtomicBoolean refreshWanted = new AtomicBoolean(); + private final TemporaryQueueResolver custom; + + public TemporaryReplyQueueDestinationResolver(TemporaryQueueResolver custom) { + this.custom = custom; + } @Override public Destination resolveDestinationName(Session session, String destinationName, boolean pubSubDomain) @@ -272,7 +290,19 @@ public Destination resolveDestinationName(Session session, String destinationNam synchronized (refreshWanted) { if (queue == null || refreshWanted.get()) { refreshWanted.set(false); - queue = session.createTemporaryQueue(); + if (custom != null) { + if (queue != null) { + // delete previous queue + try { + custom.delete(queue); + } catch (Exception e) { + // ignore + } + } + queue = custom.createTemporaryQueue(session); + } else { + queue = session.createTemporaryQueue(); + } setReplyTo(queue); if (log.isDebugEnabled()) { log.debug("Refreshed Temporary ReplyTo Queue. New queue: {}", queue.getQueueName()); @@ -298,6 +328,22 @@ public void destinationReady() throws InterruptedException { } } } + + @Override + protected void doStop() throws Exception { + if (queue != null) { + try { + if (custom != null) { + custom.delete(queue); + } else { + queue.delete(); + } + } catch (Exception e) { + // ignore + } + queue = null; + } + } } } diff --git a/components/camel-jms/src/test/java/org/apache/camel/component/jms/issues/JmsTemporaryQueueResolverTest.java b/components/camel-jms/src/test/java/org/apache/camel/component/jms/issues/JmsTemporaryQueueResolverTest.java new file mode 100644 index 0000000000000..f56602aeb748e --- /dev/null +++ b/components/camel-jms/src/test/java/org/apache/camel/component/jms/issues/JmsTemporaryQueueResolverTest.java @@ -0,0 +1,117 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.camel.component.jms.issues; + +import jakarta.jms.JMSException; +import jakarta.jms.Session; +import jakarta.jms.TemporaryQueue; + +import org.apache.camel.BindToRegistry; +import org.apache.camel.CamelContext; +import org.apache.camel.ConsumerTemplate; +import org.apache.camel.ProducerTemplate; +import org.apache.camel.builder.RouteBuilder; +import org.apache.camel.component.jms.AbstractJMSTest; +import org.apache.camel.component.jms.TemporaryQueueResolver; +import org.apache.camel.test.infra.core.CamelContextExtension; +import org.apache.camel.test.infra.core.DefaultCamelContextExtension; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Order; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.RegisterExtension; + +import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertFalse; +import static org.junit.jupiter.api.Assertions.assertTrue; + +public class JmsTemporaryQueueResolverTest extends AbstractJMSTest { + + @Order(2) + @RegisterExtension + public static CamelContextExtension camelContextExtension = new DefaultCamelContextExtension(); + protected CamelContext context; + protected ProducerTemplate template; + protected ConsumerTemplate consumer; + + @BindToRegistry + protected MyResolver myResolver = new MyResolver(); + + @Test + public void testTemporaryResolver() { + String reply = template.requestBody("activemq:queue:inJmsTemporaryQueueResolverTest", "Hello World", String.class); + assertEquals("Bye World", reply); + + assertFalse(myResolver.isDeleted()); + assertTrue(myResolver.isCreated()); + + context.stop(); + assertTrue(myResolver.isDeleted()); + } + + @Override + protected String getComponentName() { + return "activemq"; + } + + @Override + protected RouteBuilder createRouteBuilder() { + return new RouteBuilder() { + public void configure() { + from("activemq:queue:inJmsTemporaryQueueResolverTest") + .process(exchange -> exchange.getMessage().setBody("Bye World")); + } + }; + } + + @Override + public CamelContextExtension getCamelContextExtension() { + return camelContextExtension; + } + + @BeforeEach + void setUpRequirements() { + context = camelContextExtension.getContext(); + template = camelContextExtension.getProducerTemplate(); + consumer = camelContextExtension.getConsumerTemplate(); + } + + private static final class MyResolver implements TemporaryQueueResolver { + + private boolean created; + private boolean deleted; + + @Override + public TemporaryQueue createTemporaryQueue(Session session) throws JMSException { + created = true; + return session.createTemporaryQueue(); + } + + @Override + public void delete(TemporaryQueue queue) { + deleted = true; + } + + public boolean isCreated() { + return created; + } + + public boolean isDeleted() { + return deleted; + } + + } +} diff --git a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/ActivemqComponentBuilderFactory.java b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/ActivemqComponentBuilderFactory.java index 5475505cf14e3..0c2dbf8b81863 100644 --- a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/ActivemqComponentBuilderFactory.java +++ b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/ActivemqComponentBuilderFactory.java @@ -1732,6 +1732,24 @@ default ActivemqComponentBuilder synchronous(boolean synchronous) { doSetProperty("synchronous", synchronous); return this; } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option is a: + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default ActivemqComponentBuilder temporaryQueueResolver( + org.apache.camel.component.jms.TemporaryQueueResolver temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } /** * If enabled and you are using Request Reply messaging (InOut) and an * Exchange failed on the consumer side, then the caused Exception will @@ -2165,6 +2183,7 @@ protected boolean setPropertyOnComponent( case "recoveryInterval": getOrCreateConfiguration((ActiveMQComponent) component).setRecoveryInterval((long) value); return true; case "requestTimeoutCheckerInterval": getOrCreateConfiguration((ActiveMQComponent) component).setRequestTimeoutCheckerInterval((long) value); return true; case "synchronous": getOrCreateConfiguration((ActiveMQComponent) component).setSynchronous((boolean) value); return true; + case "temporaryQueueResolver": getOrCreateConfiguration((ActiveMQComponent) component).setTemporaryQueueResolver((org.apache.camel.component.jms.TemporaryQueueResolver) value); return true; case "transferException": getOrCreateConfiguration((ActiveMQComponent) component).setTransferException((boolean) value); return true; case "transferExchange": getOrCreateConfiguration((ActiveMQComponent) component).setTransferExchange((boolean) value); return true; case "trustAllPackages": ((ActiveMQComponent) component).setTrustAllPackages((boolean) value); return true; diff --git a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/AmqpComponentBuilderFactory.java b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/AmqpComponentBuilderFactory.java index a891418da80d7..9cb24c434188f 100644 --- a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/AmqpComponentBuilderFactory.java +++ b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/AmqpComponentBuilderFactory.java @@ -1679,6 +1679,24 @@ default AmqpComponentBuilder synchronous(boolean synchronous) { doSetProperty("synchronous", synchronous); return this; } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option is a: + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AmqpComponentBuilder temporaryQueueResolver( + org.apache.camel.component.jms.TemporaryQueueResolver temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } /** * If enabled and you are using Request Reply messaging (InOut) and an * Exchange failed on the consumer side, then the caused Exception will @@ -2088,6 +2106,7 @@ protected boolean setPropertyOnComponent( case "recoveryInterval": getOrCreateConfiguration((AMQPComponent) component).setRecoveryInterval((long) value); return true; case "requestTimeoutCheckerInterval": getOrCreateConfiguration((AMQPComponent) component).setRequestTimeoutCheckerInterval((long) value); return true; case "synchronous": getOrCreateConfiguration((AMQPComponent) component).setSynchronous((boolean) value); return true; + case "temporaryQueueResolver": getOrCreateConfiguration((AMQPComponent) component).setTemporaryQueueResolver((org.apache.camel.component.jms.TemporaryQueueResolver) value); return true; case "transferException": getOrCreateConfiguration((AMQPComponent) component).setTransferException((boolean) value); return true; case "transferExchange": getOrCreateConfiguration((AMQPComponent) component).setTransferExchange((boolean) value); return true; case "useMessageIDAsCorrelationID": getOrCreateConfiguration((AMQPComponent) component).setUseMessageIDAsCorrelationID((boolean) value); return true; diff --git a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/JmsComponentBuilderFactory.java b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/JmsComponentBuilderFactory.java index 3f9fb33cee981..8db2fd113a51d 100644 --- a/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/JmsComponentBuilderFactory.java +++ b/dsl/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/JmsComponentBuilderFactory.java @@ -1660,6 +1660,24 @@ default JmsComponentBuilder synchronous(boolean synchronous) { doSetProperty("synchronous", synchronous); return this; } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option is a: + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default JmsComponentBuilder temporaryQueueResolver( + org.apache.camel.component.jms.TemporaryQueueResolver temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } /** * If enabled and you are using Request Reply messaging (InOut) and an * Exchange failed on the consumer side, then the caused Exception will @@ -2068,6 +2086,7 @@ protected boolean setPropertyOnComponent( case "recoveryInterval": getOrCreateConfiguration((JmsComponent) component).setRecoveryInterval((long) value); return true; case "requestTimeoutCheckerInterval": getOrCreateConfiguration((JmsComponent) component).setRequestTimeoutCheckerInterval((long) value); return true; case "synchronous": getOrCreateConfiguration((JmsComponent) component).setSynchronous((boolean) value); return true; + case "temporaryQueueResolver": getOrCreateConfiguration((JmsComponent) component).setTemporaryQueueResolver((org.apache.camel.component.jms.TemporaryQueueResolver) value); return true; case "transferException": getOrCreateConfiguration((JmsComponent) component).setTransferException((boolean) value); return true; case "transferExchange": getOrCreateConfiguration((JmsComponent) component).setTransferExchange((boolean) value); return true; case "useMessageIDAsCorrelationID": getOrCreateConfiguration((JmsComponent) component).setUseMessageIDAsCorrelationID((boolean) value); return true; diff --git a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AMQPEndpointBuilderFactory.java b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AMQPEndpointBuilderFactory.java index 08d4cb24ecc24..d07d4852f4536 100644 --- a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AMQPEndpointBuilderFactory.java +++ b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AMQPEndpointBuilderFactory.java @@ -2311,6 +2311,42 @@ default AdvancedAMQPEndpointConsumerBuilder synchronous( doSetProperty("synchronous", synchronous); return this; } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option is a: + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedAMQPEndpointConsumerBuilder temporaryQueueResolver( + org.apache.camel.component.jms.TemporaryQueueResolver temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option will be converted to a + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedAMQPEndpointConsumerBuilder temporaryQueueResolver( + String temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } /** * If enabled and you are using Request Reply messaging (InOut) and an * Exchange failed on the consumer side, then the caused Exception will @@ -4801,6 +4837,42 @@ default AdvancedAMQPEndpointProducerBuilder synchronous( doSetProperty("synchronous", synchronous); return this; } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option is a: + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedAMQPEndpointProducerBuilder temporaryQueueResolver( + org.apache.camel.component.jms.TemporaryQueueResolver temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option will be converted to a + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedAMQPEndpointProducerBuilder temporaryQueueResolver( + String temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } /** * If enabled and you are using Request Reply messaging (InOut) and an * Exchange failed on the consumer side, then the caused Exception will @@ -6401,6 +6473,42 @@ default AdvancedAMQPEndpointBuilder synchronous(String synchronous) { doSetProperty("synchronous", synchronous); return this; } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option is a: + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedAMQPEndpointBuilder temporaryQueueResolver( + org.apache.camel.component.jms.TemporaryQueueResolver temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option will be converted to a + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedAMQPEndpointBuilder temporaryQueueResolver( + String temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } /** * If enabled and you are using Request Reply messaging (InOut) and an * Exchange failed on the consumer side, then the caused Exception will diff --git a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ActiveMQEndpointBuilderFactory.java b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ActiveMQEndpointBuilderFactory.java index 3662d3a62a38c..d9f7dbb9c0116 100644 --- a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ActiveMQEndpointBuilderFactory.java +++ b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/ActiveMQEndpointBuilderFactory.java @@ -2366,6 +2366,42 @@ default AdvancedActiveMQEndpointConsumerBuilder synchronous( doSetProperty("synchronous", synchronous); return this; } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option is a: + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedActiveMQEndpointConsumerBuilder temporaryQueueResolver( + org.apache.camel.component.jms.TemporaryQueueResolver temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option will be converted to a + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedActiveMQEndpointConsumerBuilder temporaryQueueResolver( + String temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } /** * If enabled and you are using Request Reply messaging (InOut) and an * Exchange failed on the consumer side, then the caused Exception will @@ -4862,6 +4898,42 @@ default AdvancedActiveMQEndpointProducerBuilder synchronous( doSetProperty("synchronous", synchronous); return this; } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option is a: + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedActiveMQEndpointProducerBuilder temporaryQueueResolver( + org.apache.camel.component.jms.TemporaryQueueResolver temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option will be converted to a + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedActiveMQEndpointProducerBuilder temporaryQueueResolver( + String temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } /** * If enabled and you are using Request Reply messaging (InOut) and an * Exchange failed on the consumer side, then the caused Exception will @@ -6469,6 +6541,42 @@ default AdvancedActiveMQEndpointBuilder synchronous(String synchronous) { doSetProperty("synchronous", synchronous); return this; } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option is a: + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedActiveMQEndpointBuilder temporaryQueueResolver( + org.apache.camel.component.jms.TemporaryQueueResolver temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option will be converted to a + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedActiveMQEndpointBuilder temporaryQueueResolver( + String temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } /** * If enabled and you are using Request Reply messaging (InOut) and an * Exchange failed on the consumer side, then the caused Exception will diff --git a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JmsEndpointBuilderFactory.java b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JmsEndpointBuilderFactory.java index 576cf3b61dae7..e83a310d682f9 100644 --- a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JmsEndpointBuilderFactory.java +++ b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/JmsEndpointBuilderFactory.java @@ -2310,6 +2310,42 @@ default AdvancedJmsEndpointConsumerBuilder synchronous( doSetProperty("synchronous", synchronous); return this; } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option is a: + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedJmsEndpointConsumerBuilder temporaryQueueResolver( + org.apache.camel.component.jms.TemporaryQueueResolver temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option will be converted to a + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedJmsEndpointConsumerBuilder temporaryQueueResolver( + String temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } /** * If enabled and you are using Request Reply messaging (InOut) and an * Exchange failed on the consumer side, then the caused Exception will @@ -4799,6 +4835,42 @@ default AdvancedJmsEndpointProducerBuilder synchronous( doSetProperty("synchronous", synchronous); return this; } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option is a: + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedJmsEndpointProducerBuilder temporaryQueueResolver( + org.apache.camel.component.jms.TemporaryQueueResolver temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option will be converted to a + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedJmsEndpointProducerBuilder temporaryQueueResolver( + String temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } /** * If enabled and you are using Request Reply messaging (InOut) and an * Exchange failed on the consumer side, then the caused Exception will @@ -6399,6 +6471,42 @@ default AdvancedJmsEndpointBuilder synchronous(String synchronous) { doSetProperty("synchronous", synchronous); return this; } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option is a: + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedJmsEndpointBuilder temporaryQueueResolver( + org.apache.camel.component.jms.TemporaryQueueResolver temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } + /** + * A pluggable TemporaryQueueResolver that allows you to use your own + * resolver for creating temporary queues (some messaging systems has + * special requirements for creating temporary queues). + * + * The option will be converted to a + * <code>org.apache.camel.component.jms.TemporaryQueueResolver</code> type. + * + * Group: advanced + * + * @param temporaryQueueResolver the value to set + * @return the dsl builder + */ + default AdvancedJmsEndpointBuilder temporaryQueueResolver( + String temporaryQueueResolver) { + doSetProperty("temporaryQueueResolver", temporaryQueueResolver); + return this; + } /** * If enabled and you are using Request Reply messaging (InOut) and an * Exchange failed on the consumer side, then the caused Exception will diff --git a/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/ActivemqUriDsl.kt b/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/ActivemqUriDsl.kt index 71f2131cffb6e..c77b48c0efec5 100644 --- a/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/ActivemqUriDsl.kt +++ b/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/ActivemqUriDsl.kt @@ -570,6 +570,10 @@ public class ActivemqUriDsl( it.property("synchronous", synchronous.toString()) } + public fun temporaryQueueResolver(temporaryQueueResolver: String) { + it.property("temporaryQueueResolver", temporaryQueueResolver) + } + public fun transferException(transferException: String) { it.property("transferException", transferException) } diff --git a/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/AmqpUriDsl.kt b/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/AmqpUriDsl.kt index ddd75016843ff..9b50e8144ef11 100644 --- a/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/AmqpUriDsl.kt +++ b/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/AmqpUriDsl.kt @@ -566,6 +566,10 @@ public class AmqpUriDsl( it.property("synchronous", synchronous.toString()) } + public fun temporaryQueueResolver(temporaryQueueResolver: String) { + it.property("temporaryQueueResolver", temporaryQueueResolver) + } + public fun transferException(transferException: String) { it.property("transferException", transferException) } diff --git a/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/JmsUriDsl.kt b/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/JmsUriDsl.kt index 3eb0f66947184..41193ae1d8aaf 100644 --- a/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/JmsUriDsl.kt +++ b/dsl/camel-kotlin-api/src/generated/kotlin/org/apache/camel/kotlin/components/JmsUriDsl.kt @@ -566,6 +566,10 @@ public class JmsUriDsl( it.property("synchronous", synchronous.toString()) } + public fun temporaryQueueResolver(temporaryQueueResolver: String) { + it.property("temporaryQueueResolver", temporaryQueueResolver) + } + public fun transferException(transferException: String) { it.property("transferException", transferException) }