{
	"connector": {
		"class": "org.apache.camel.kafkaconnector.activemq.CamelActivemqSourceConnector",
		"artifactId": "camel-activemq-kafka-connector",
		"groupId": "org.apache.camel.kafkaconnector",
		"id": "camel-activemq-source",
		"type": "source",
		"version": "0.9.0",
		"description": "Send messages to (or consume from) Apache ActiveMQ. This component extends the Camel JMS component."
	},
	"properties": {
		"camel.source.path.destinationType": {
			"name": "camel.source.path.destinationType",
			"description": "The kind of destination to use One of: [queue] [topic] [temp-queue] [temp-topic]",
			"defaultValue": "\"queue\"",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"queue",
				"topic",
				"temp-queue",
				"temp-topic"
			]
		},
		"camel.source.path.destinationName": {
			"name": "camel.source.path.destinationName",
			"description": "Name of the queue or topic to use as destination",
			"priority": "HIGH",
			"required": "true"
		},
		"camel.source.endpoint.clientId": {
			"name": "camel.source.endpoint.clientId",
			"description": "Sets the JMS client ID to use. Note that this value, if specified, must be unique and can only be used by a single JMS connection instance. It is typically only required for durable topic subscriptions. If using Apache ActiveMQ you may prefer to use Virtual Topics instead.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.connectionFactory": {
			"name": "camel.source.endpoint.connectionFactory",
			"description": "The connection factory to be use. A connection factory must be configured either on the component or endpoint.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.disableReplyTo": {
			"name": "camel.source.endpoint.disableReplyTo",
			"description": "Specifies whether Camel ignores the JMSReplyTo header in messages. If true, Camel does not send a reply back to the destination specified in the JMSReplyTo header. You can use this option if you want Camel to consume from a route and you do not want Camel to automatically send back a reply message because another component in your code handles the reply message. You can also use this option if you want to use Camel as a proxy between different message brokers and you want to route message from one system to another.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.durableSubscriptionName": {
			"name": "camel.source.endpoint.durableSubscriptionName",
			"description": "The durable subscriber name for specifying durable topic subscriptions. The clientId option must be configured as well.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.jmsMessageType": {
			"name": "camel.source.endpoint.jmsMessageType",
			"description": "Allows you to force the use of a specific javax.jms.Message implementation for sending JMS messages. Possible values are: Bytes, Map, Object, Stream, Text. By default, Camel would determine which JMS message type to use from the In body type. This option allows you to specify it. One of: [Bytes] [Map] [Object] [Stream] [Text]",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"Bytes",
				"Map",
				"Object",
				"Stream",
				"Text"
			]
		},
		"camel.source.endpoint.replyTo": {
			"name": "camel.source.endpoint.replyTo",
			"description": "Provides an explicit ReplyTo destination (overrides any incoming value of Message.getJMSReplyTo() in consumer).",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.testConnectionOnStartup": {
			"name": "camel.source.endpoint.testConnectionOnStartup",
			"description": "Specifies whether to test the connection on startup. This ensures that when Camel starts that all the JMS consumers have a valid connection to the JMS broker. If a connection cannot be granted then Camel throws an exception on startup. This ensures that Camel is not started with failed connections. The JMS producers is tested as well.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.acknowledgementModeName": {
			"name": "camel.source.endpoint.acknowledgementModeName",
			"description": "The JMS acknowledgement name, which is one of: SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE One of: [SESSION_TRANSACTED] [CLIENT_ACKNOWLEDGE] [AUTO_ACKNOWLEDGE] [DUPS_OK_ACKNOWLEDGE]",
			"defaultValue": "\"AUTO_ACKNOWLEDGE\"",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"SESSION_TRANSACTED",
				"CLIENT_ACKNOWLEDGE",
				"AUTO_ACKNOWLEDGE",
				"DUPS_OK_ACKNOWLEDGE"
			]
		},
		"camel.source.endpoint.artemisConsumerPriority": {
			"name": "camel.source.endpoint.artemisConsumerPriority",
			"description": "Consumer priorities allow you to ensure that high priority consumers receive messages while they are active. Normally, active consumers connected to a queue receive messages from it in a round-robin fashion. When consumer priorities are in use, messages are delivered round-robin if multiple active consumers exist with the same high priority. Messages will only going to lower priority consumers when the high priority consumers do not have credit available to consume the message, or those high priority consumers have declined to accept the message (for instance because it does not meet the criteria of any selectors associated with the consumer).",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.asyncConsumer": {
			"name": "camel.source.endpoint.asyncConsumer",
			"description": "Whether the JmsConsumer processes the Exchange asynchronously. If enabled then the JmsConsumer may pickup the next message from the JMS queue, while the previous message is being processed asynchronously (by the Asynchronous Routing Engine). This means that messages may be processed not 100% strictly in order. If disabled (as default) then the Exchange is fully processed before the JmsConsumer will pickup the next message from the JMS queue. Note if transacted has been enabled, then asyncConsumer=true does not run asynchronously, as transaction must be executed synchronously (Camel 3.0 may support async transactions).",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.autoStartup": {
			"name": "camel.source.endpoint.autoStartup",
			"description": "Specifies whether the consumer container should auto-startup.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.cacheLevel": {
			"name": "camel.source.endpoint.cacheLevel",
			"description": "Sets the cache level by ID for the underlying JMS resources. See cacheLevelName option for more details.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.cacheLevelName": {
			"name": "camel.source.endpoint.cacheLevelName",
			"description": "Sets the cache level by name for the underlying JMS resources. Possible values are: CACHE_AUTO, CACHE_CONNECTION, CACHE_CONSUMER, CACHE_NONE, and CACHE_SESSION. The default setting is CACHE_AUTO. See the Spring documentation and Transactions Cache Levels for more information. One of: [CACHE_AUTO] [CACHE_CONNECTION] [CACHE_CONSUMER] [CACHE_NONE] [CACHE_SESSION]",
			"defaultValue": "\"CACHE_AUTO\"",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"CACHE_AUTO",
				"CACHE_CONNECTION",
				"CACHE_CONSUMER",
				"CACHE_NONE",
				"CACHE_SESSION"
			]
		},
		"camel.source.endpoint.concurrentConsumers": {
			"name": "camel.source.endpoint.concurrentConsumers",
			"description": "Specifies the default number of concurrent consumers when consuming from JMS (not for request\/reply over JMS). See also the maxMessagesPerTask option to control dynamic scaling up\/down of threads. When doing request\/reply over JMS then the option replyToConcurrentConsumers is used to control number of concurrent consumers on the reply message listener.",
			"defaultValue": "1",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.maxConcurrentConsumers": {
			"name": "camel.source.endpoint.maxConcurrentConsumers",
			"description": "Specifies the maximum number of concurrent consumers when consuming from JMS (not for request\/reply over JMS). See also the maxMessagesPerTask option to control dynamic scaling up\/down of threads. When doing request\/reply over JMS then the option replyToMaxConcurrentConsumers is used to control number of concurrent consumers on the reply message listener.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.replyToDeliveryPersistent": {
			"name": "camel.source.endpoint.replyToDeliveryPersistent",
			"description": "Specifies whether to use persistent delivery by default for replies.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.selector": {
			"name": "camel.source.endpoint.selector",
			"description": "Sets the JMS selector to use",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.subscriptionDurable": {
			"name": "camel.source.endpoint.subscriptionDurable",
			"description": "Set whether to make the subscription durable. The durable subscription name to be used can be specified through the subscriptionName property. Default is false. Set this to true to register a durable subscription, typically in combination with a subscriptionName value (unless your message listener class name is good enough as subscription name). Only makes sense when listening to a topic (pub-sub domain), therefore this method switches the pubSubDomain flag as well.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.subscriptionName": {
			"name": "camel.source.endpoint.subscriptionName",
			"description": "Set the name of a subscription to create. To be applied in case of a topic (pub-sub domain) with a shared or durable subscription. The subscription name needs to be unique within this client's JMS client id. Default is the class name of the specified message listener. Note: Only 1 concurrent consumer (which is the default of this message listener container) is allowed for each subscription, except for a shared subscription (which requires JMS 2.0).",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.subscriptionShared": {
			"name": "camel.source.endpoint.subscriptionShared",
			"description": "Set whether to make the subscription shared. The shared subscription name to be used can be specified through the subscriptionName property. Default is false. Set this to true to register a shared subscription, typically in combination with a subscriptionName value (unless your message listener class name is good enough as subscription name). Note that shared subscriptions may also be durable, so this flag can (and often will) be combined with subscriptionDurable as well. Only makes sense when listening to a topic (pub-sub domain), therefore this method switches the pubSubDomain flag as well. Requires a JMS 2.0 compatible message broker.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.acceptMessagesWhileStopping": {
			"name": "camel.source.endpoint.acceptMessagesWhileStopping",
			"description": "Specifies whether the consumer accept messages while it is stopping. You may consider enabling this option, if you start and stop JMS routes at runtime, while there are still messages enqueued on the queue. If this option is false, and you stop the JMS route, then messages may be rejected, and the JMS broker would have to attempt redeliveries, which yet again may be rejected, and eventually the message may be moved at a dead letter queue on the JMS broker. To avoid this its recommended to enable this option.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.allowReplyManagerQuickStop": {
			"name": "camel.source.endpoint.allowReplyManagerQuickStop",
			"description": "Whether the DefaultMessageListenerContainer used in the reply managers for request-reply messaging allow the DefaultMessageListenerContainer.runningAllowed flag to quick stop in case JmsConfiguration#isAcceptMessagesWhileStopping is enabled, and org.apache.camel.CamelContext is currently being stopped. This quick stop ability is enabled by default in the regular JMS consumers but to enable for reply managers you must enable this flag.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.consumerType": {
			"name": "camel.source.endpoint.consumerType",
			"description": "The consumer type to use, which can be one of: Simple, Default, or Custom. The consumer type determines which Spring JMS listener to use. Default will use org.springframework.jms.listener.DefaultMessageListenerContainer, Simple will use org.springframework.jms.listener.SimpleMessageListenerContainer. When Custom is specified, the MessageListenerContainerFactory defined by the messageListenerContainerFactory option will determine what org.springframework.jms.listener.AbstractMessageListenerContainer to use. One of: [Simple] [Default] [Custom]",
			"defaultValue": "\"Default\"",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"Simple",
				"Default",
				"Custom"
			]
		},
		"camel.source.endpoint.defaultTaskExecutorType": {
			"name": "camel.source.endpoint.defaultTaskExecutorType",
			"description": "Specifies what default TaskExecutor type to use in the DefaultMessageListenerContainer, for both consumer endpoints and the ReplyTo consumer of producer endpoints. Possible values: SimpleAsync (uses Spring's SimpleAsyncTaskExecutor) or ThreadPool (uses Spring's ThreadPoolTaskExecutor with optimal values - cached threadpool-like). If not set, it defaults to the previous behaviour, which uses a cached thread pool for consumer endpoints and SimpleAsync for reply consumers. The use of ThreadPool is recommended to reduce thread trash in elastic configurations with dynamically increasing and decreasing concurrent consumers. One of: [ThreadPool] [SimpleAsync]",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"ThreadPool",
				"SimpleAsync"
			]
		},
		"camel.source.endpoint.eagerLoadingOfProperties": {
			"name": "camel.source.endpoint.eagerLoadingOfProperties",
			"description": "Enables eager loading of JMS properties and payload as soon as a message is loaded which generally is inefficient as the JMS properties may not be required but sometimes can catch early any issues with the underlying JMS provider and the use of JMS properties. See also the option eagerPoisonBody.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.eagerPoisonBody": {
			"name": "camel.source.endpoint.eagerPoisonBody",
			"description": "If eagerLoadingOfProperties is enabled and the JMS message payload (JMS body or JMS properties) is poison (cannot be read\/mapped), then set this text as the message body instead so the message can be processed (the cause of the poison are already stored as exception on the Exchange). This can be turned off by setting eagerPoisonBody=false. See also the option eagerLoadingOfProperties.",
			"defaultValue": "\"Poison JMS message due to ${exception.message}\"",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.exceptionHandler": {
			"name": "camel.source.endpoint.exceptionHandler",
			"description": "To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this option is not in use. By default the consumer will deal with exceptions, that will be logged at WARN or ERROR level and ignored.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.exchangePattern": {
			"name": "camel.source.endpoint.exchangePattern",
			"description": "Sets the exchange pattern when the consumer creates an exchange. One of: [InOnly] [InOut] [InOptionalOut]",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"InOnly",
				"InOut",
				"InOptionalOut"
			]
		},
		"camel.source.endpoint.exposeListenerSession": {
			"name": "camel.source.endpoint.exposeListenerSession",
			"description": "Specifies whether the listener session should be exposed when consuming messages.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.replyToSameDestinationAllowed": {
			"name": "camel.source.endpoint.replyToSameDestinationAllowed",
			"description": "Whether a JMS consumer is allowed to send a reply message to the same destination that the consumer is using to consume from. This prevents an endless loop by consuming and sending back the same message to itself.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.taskExecutor": {
			"name": "camel.source.endpoint.taskExecutor",
			"description": "Allows you to specify a custom task executor for consuming messages.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.allowSerializedHeaders": {
			"name": "camel.source.endpoint.allowSerializedHeaders",
			"description": "Controls whether or not to include serialized headers. Applies only when transferExchange is true. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.artemisStreamingEnabled": {
			"name": "camel.source.endpoint.artemisStreamingEnabled",
			"description": "Whether optimizing for Apache Artemis streaming mode.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.asyncStartListener": {
			"name": "camel.source.endpoint.asyncStartListener",
			"description": "Whether to startup the JmsConsumer message listener asynchronously, when starting a route. For example if a JmsConsumer cannot get a connection to a remote JMS broker, then it may block while retrying and\/or failover. This will cause Camel to block while starting routes. By setting this option to true, you will let routes startup, while the JmsConsumer connects to the JMS broker using a dedicated thread in asynchronous mode. If this option is used, then beware that if the connection could not be established, then an exception is logged at WARN level, and the consumer will not be able to receive messages; You can then restart the route to retry.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.asyncStopListener": {
			"name": "camel.source.endpoint.asyncStopListener",
			"description": "Whether to stop the JmsConsumer message listener asynchronously, when stopping a route.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.destinationResolver": {
			"name": "camel.source.endpoint.destinationResolver",
			"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).",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.errorHandler": {
			"name": "camel.source.endpoint.errorHandler",
			"description": "Specifies a org.springframework.util.ErrorHandler to be invoked in case of any uncaught exceptions thrown while processing a Message. By default these exceptions will be logged at the WARN level, if no errorHandler has been configured. You can configure logging level and whether stack traces should be logged using errorHandlerLoggingLevel and errorHandlerLogStackTrace options. This makes it much easier to configure, than having to code a custom errorHandler.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.exceptionListener": {
			"name": "camel.source.endpoint.exceptionListener",
			"description": "Specifies the JMS Exception Listener that is to be notified of any underlying JMS exceptions.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.headerFilterStrategy": {
			"name": "camel.source.endpoint.headerFilterStrategy",
			"description": "To use a custom HeaderFilterStrategy to filter header to and from Camel message.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.idleConsumerLimit": {
			"name": "camel.source.endpoint.idleConsumerLimit",
			"description": "Specify the limit for the number of consumers that are allowed to be idle at any given time.",
			"defaultValue": "1",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.idleTaskExecutionLimit": {
			"name": "camel.source.endpoint.idleTaskExecutionLimit",
			"description": "Specifies the limit for idle executions of a receive task, not having received any message within its execution. If this limit is reached, the task will shut down and leave receiving to other executing tasks (in the case of dynamic scheduling; see the maxConcurrentConsumers setting). There is additional doc available from Spring.",
			"defaultValue": "1",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.includeAllJMSXProperties": {
			"name": "camel.source.endpoint.includeAllJMSXProperties",
			"description": "Whether to include all JMSXxxx properties when mapping from JMS to Camel Message. Setting this to true will include properties such as JMSXAppID, and JMSXUserID etc. Note: If you are using a custom headerFilterStrategy then this option does not apply.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.jmsKeyFormatStrategy": {
			"name": "camel.source.endpoint.jmsKeyFormatStrategy",
			"description": "Pluggable strategy for encoding and decoding JMS keys so they can be compliant with the JMS specification. Camel provides two implementations out of the box: default and passthrough. The default strategy will safely marshal dots and hyphens (. and -). The passthrough strategy leaves the key as is. Can be used for JMS brokers which do not care whether JMS header keys contain illegal characters. You can provide your own implementation of the org.apache.camel.component.jms.JmsKeyFormatStrategy and refer to it using the # notation. One of: [default] [passthrough]",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"default",
				"passthrough"
			]
		},
		"camel.source.endpoint.mapJmsMessage": {
			"name": "camel.source.endpoint.mapJmsMessage",
			"description": "Specifies whether Camel should auto map the received JMS message to a suited payload type, such as javax.jms.TextMessage to a String etc.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.maxMessagesPerTask": {
			"name": "camel.source.endpoint.maxMessagesPerTask",
			"description": "The number of messages per task. -1 is unlimited. If you use a range for concurrent consumers (eg min max), then this option can be used to set a value to eg 100 to control how fast the consumers will shrink when less work is required.",
			"defaultValue": "-1",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.messageConverter": {
			"name": "camel.source.endpoint.messageConverter",
			"description": "To use a custom Spring org.springframework.jms.support.converter.MessageConverter so you can be in control how to map to\/from a javax.jms.Message.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.messageCreatedStrategy": {
			"name": "camel.source.endpoint.messageCreatedStrategy",
			"description": "To use the given MessageCreatedStrategy which are invoked when Camel creates new instances of javax.jms.Message objects when Camel is sending a JMS message.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.messageIdEnabled": {
			"name": "camel.source.endpoint.messageIdEnabled",
			"description": "When sending, specifies whether message IDs should be added. This is just an hint to the JMS broker. If the JMS provider accepts this hint, these messages must have the message ID set to null; if the provider ignores the hint, the message ID must be set to its normal unique value.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.messageListenerContainerFactory": {
			"name": "camel.source.endpoint.messageListenerContainerFactory",
			"description": "Registry ID of the MessageListenerContainerFactory used to determine what org.springframework.jms.listener.AbstractMessageListenerContainer to use to consume messages. Setting this will automatically set consumerType to Custom.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.messageTimestampEnabled": {
			"name": "camel.source.endpoint.messageTimestampEnabled",
			"description": "Specifies whether timestamps should be enabled by default on sending messages. This is just an hint to the JMS broker. If the JMS provider accepts this hint, these messages must have the timestamp set to zero; if the provider ignores the hint the timestamp must be set to its normal value.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.pubSubNoLocal": {
			"name": "camel.source.endpoint.pubSubNoLocal",
			"description": "Specifies whether to inhibit the delivery of messages published by its own connection.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.receiveTimeout": {
			"name": "camel.source.endpoint.receiveTimeout",
			"description": "The timeout for receiving messages (in milliseconds).",
			"defaultValue": "1000L",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.recoveryInterval": {
			"name": "camel.source.endpoint.recoveryInterval",
			"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.",
			"defaultValue": "5000L",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.requestTimeoutCheckerInterval": {
			"name": "camel.source.endpoint.requestTimeoutCheckerInterval",
			"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.",
			"defaultValue": "1000L",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.synchronous": {
			"name": "camel.source.endpoint.synchronous",
			"description": "Sets whether synchronous processing should be strictly used",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.transferException": {
			"name": "camel.source.endpoint.transferException",
			"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 javax.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!",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.transferExchange": {
			"name": "camel.source.endpoint.transferExchange",
			"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 received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer having to use compatible Camel versions!",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.useMessageIDAsCorrelationID": {
			"name": "camel.source.endpoint.useMessageIDAsCorrelationID",
			"description": "Specifies whether JMSMessageID should always be used as JMSCorrelationID for InOut messages.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.waitForProvisionCorrelationToBeUpdatedCounter": {
			"name": "camel.source.endpoint.waitForProvisionCorrelationToBeUpdatedCounter",
			"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.",
			"defaultValue": "50",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": {
			"name": "camel.source.endpoint.waitForProvisionCorrelationToBeUpdatedThreadSleepingTime",
			"description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated.",
			"defaultValue": "100L",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.errorHandlerLoggingLevel": {
			"name": "camel.source.endpoint.errorHandlerLoggingLevel",
			"description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions. One of: [TRACE] [DEBUG] [INFO] [WARN] [ERROR] [OFF]",
			"defaultValue": "\"WARN\"",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"TRACE",
				"DEBUG",
				"INFO",
				"WARN",
				"ERROR",
				"OFF"
			]
		},
		"camel.source.endpoint.errorHandlerLogStackTrace": {
			"name": "camel.source.endpoint.errorHandlerLogStackTrace",
			"description": "Allows to control whether stacktraces should be logged or not, by the default errorHandler.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.password": {
			"name": "camel.source.endpoint.password",
			"description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.username": {
			"name": "camel.source.endpoint.username",
			"description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.transacted": {
			"name": "camel.source.endpoint.transacted",
			"description": "Specifies whether to use transacted mode",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.transactedInOut": {
			"name": "camel.source.endpoint.transactedInOut",
			"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.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.lazyCreateTransactionManager": {
			"name": "camel.source.endpoint.lazyCreateTransactionManager",
			"description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.transactionManager": {
			"name": "camel.source.endpoint.transactionManager",
			"description": "The Spring transaction manager to use.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.transactionName": {
			"name": "camel.source.endpoint.transactionName",
			"description": "The name of the transaction to use.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.transactionTimeout": {
			"name": "camel.source.endpoint.transactionTimeout",
			"description": "The timeout value of the transaction (in seconds), if using transacted mode.",
			"defaultValue": "-1",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.brokerURL": {
			"name": "camel.component.activemq.brokerURL",
			"description": "Sets the broker URL to use to connect to ActiveMQ. If none configured then localhost:61616 is used by default (however can be overridden by configuration from environment variables)",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.clientId": {
			"name": "camel.component.activemq.clientId",
			"description": "Sets the JMS client ID to use. Note that this value, if specified, must be unique and can only be used by a single JMS connection instance. It is typically only required for durable topic subscriptions. If using Apache ActiveMQ you may prefer to use Virtual Topics instead.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.connectionFactory": {
			"name": "camel.component.activemq.connectionFactory",
			"description": "The connection factory to be use. A connection factory must be configured either on the component or endpoint.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.disableReplyTo": {
			"name": "camel.component.activemq.disableReplyTo",
			"description": "Specifies whether Camel ignores the JMSReplyTo header in messages. If true, Camel does not send a reply back to the destination specified in the JMSReplyTo header. You can use this option if you want Camel to consume from a route and you do not want Camel to automatically send back a reply message because another component in your code handles the reply message. You can also use this option if you want to use Camel as a proxy between different message brokers and you want to route message from one system to another.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.durableSubscriptionName": {
			"name": "camel.component.activemq.durableSubscriptionName",
			"description": "The durable subscriber name for specifying durable topic subscriptions. The clientId option must be configured as well.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.jmsMessageType": {
			"name": "camel.component.activemq.jmsMessageType",
			"description": "Allows you to force the use of a specific javax.jms.Message implementation for sending JMS messages. Possible values are: Bytes, Map, Object, Stream, Text. By default, Camel would determine which JMS message type to use from the In body type. This option allows you to specify it. One of: [Bytes] [Map] [Object] [Stream] [Text]",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"Bytes",
				"Map",
				"Object",
				"Stream",
				"Text"
			]
		},
		"camel.component.activemq.replyTo": {
			"name": "camel.component.activemq.replyTo",
			"description": "Provides an explicit ReplyTo destination (overrides any incoming value of Message.getJMSReplyTo() in consumer).",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.testConnectionOnStartup": {
			"name": "camel.component.activemq.testConnectionOnStartup",
			"description": "Specifies whether to test the connection on startup. This ensures that when Camel starts that all the JMS consumers have a valid connection to the JMS broker. If a connection cannot be granted then Camel throws an exception on startup. This ensures that Camel is not started with failed connections. The JMS producers is tested as well.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.usePooledConnection": {
			"name": "camel.component.activemq.usePooledConnection",
			"description": "Enables or disables whether a PooledConnectionFactory will be used so that when messages are sent to ActiveMQ from outside of a message consuming thread, pooling will be used rather than the default with the Spring JmsTemplate which will create a new connection, session, producer for each message then close them all down again. The default value is true.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.useSingleConnection": {
			"name": "camel.component.activemq.useSingleConnection",
			"description": "Enables or disables whether a Spring SingleConnectionFactory will be used so that when messages are sent to ActiveMQ from outside of a message consuming thread, pooling will be used rather than the default with the Spring JmsTemplate which will create a new connection, session, producer for each message then close them all down again. The default value is false and a pooled connection is used by default.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.acknowledgementModeName": {
			"name": "camel.component.activemq.acknowledgementModeName",
			"description": "The JMS acknowledgement name, which is one of: SESSION_TRANSACTED, CLIENT_ACKNOWLEDGE, AUTO_ACKNOWLEDGE, DUPS_OK_ACKNOWLEDGE One of: [SESSION_TRANSACTED] [CLIENT_ACKNOWLEDGE] [AUTO_ACKNOWLEDGE] [DUPS_OK_ACKNOWLEDGE]",
			"defaultValue": "\"AUTO_ACKNOWLEDGE\"",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"SESSION_TRANSACTED",
				"CLIENT_ACKNOWLEDGE",
				"AUTO_ACKNOWLEDGE",
				"DUPS_OK_ACKNOWLEDGE"
			]
		},
		"camel.component.activemq.artemisConsumerPriority": {
			"name": "camel.component.activemq.artemisConsumerPriority",
			"description": "Consumer priorities allow you to ensure that high priority consumers receive messages while they are active. Normally, active consumers connected to a queue receive messages from it in a round-robin fashion. When consumer priorities are in use, messages are delivered round-robin if multiple active consumers exist with the same high priority. Messages will only going to lower priority consumers when the high priority consumers do not have credit available to consume the message, or those high priority consumers have declined to accept the message (for instance because it does not meet the criteria of any selectors associated with the consumer).",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.asyncConsumer": {
			"name": "camel.component.activemq.asyncConsumer",
			"description": "Whether the JmsConsumer processes the Exchange asynchronously. If enabled then the JmsConsumer may pickup the next message from the JMS queue, while the previous message is being processed asynchronously (by the Asynchronous Routing Engine). This means that messages may be processed not 100% strictly in order. If disabled (as default) then the Exchange is fully processed before the JmsConsumer will pickup the next message from the JMS queue. Note if transacted has been enabled, then asyncConsumer=true does not run asynchronously, as transaction must be executed synchronously (Camel 3.0 may support async transactions).",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.autoStartup": {
			"name": "camel.component.activemq.autoStartup",
			"description": "Specifies whether the consumer container should auto-startup.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.cacheLevel": {
			"name": "camel.component.activemq.cacheLevel",
			"description": "Sets the cache level by ID for the underlying JMS resources. See cacheLevelName option for more details.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.cacheLevelName": {
			"name": "camel.component.activemq.cacheLevelName",
			"description": "Sets the cache level by name for the underlying JMS resources. Possible values are: CACHE_AUTO, CACHE_CONNECTION, CACHE_CONSUMER, CACHE_NONE, and CACHE_SESSION. The default setting is CACHE_AUTO. See the Spring documentation and Transactions Cache Levels for more information. One of: [CACHE_AUTO] [CACHE_CONNECTION] [CACHE_CONSUMER] [CACHE_NONE] [CACHE_SESSION]",
			"defaultValue": "\"CACHE_AUTO\"",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"CACHE_AUTO",
				"CACHE_CONNECTION",
				"CACHE_CONSUMER",
				"CACHE_NONE",
				"CACHE_SESSION"
			]
		},
		"camel.component.activemq.concurrentConsumers": {
			"name": "camel.component.activemq.concurrentConsumers",
			"description": "Specifies the default number of concurrent consumers when consuming from JMS (not for request\/reply over JMS). See also the maxMessagesPerTask option to control dynamic scaling up\/down of threads. When doing request\/reply over JMS then the option replyToConcurrentConsumers is used to control number of concurrent consumers on the reply message listener.",
			"defaultValue": "1",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.maxConcurrentConsumers": {
			"name": "camel.component.activemq.maxConcurrentConsumers",
			"description": "Specifies the maximum number of concurrent consumers when consuming from JMS (not for request\/reply over JMS). See also the maxMessagesPerTask option to control dynamic scaling up\/down of threads. When doing request\/reply over JMS then the option replyToMaxConcurrentConsumers is used to control number of concurrent consumers on the reply message listener.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.replyToDeliveryPersistent": {
			"name": "camel.component.activemq.replyToDeliveryPersistent",
			"description": "Specifies whether to use persistent delivery by default for replies.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.selector": {
			"name": "camel.component.activemq.selector",
			"description": "Sets the JMS selector to use",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.subscriptionDurable": {
			"name": "camel.component.activemq.subscriptionDurable",
			"description": "Set whether to make the subscription durable. The durable subscription name to be used can be specified through the subscriptionName property. Default is false. Set this to true to register a durable subscription, typically in combination with a subscriptionName value (unless your message listener class name is good enough as subscription name). Only makes sense when listening to a topic (pub-sub domain), therefore this method switches the pubSubDomain flag as well.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.subscriptionName": {
			"name": "camel.component.activemq.subscriptionName",
			"description": "Set the name of a subscription to create. To be applied in case of a topic (pub-sub domain) with a shared or durable subscription. The subscription name needs to be unique within this client's JMS client id. Default is the class name of the specified message listener. Note: Only 1 concurrent consumer (which is the default of this message listener container) is allowed for each subscription, except for a shared subscription (which requires JMS 2.0).",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.subscriptionShared": {
			"name": "camel.component.activemq.subscriptionShared",
			"description": "Set whether to make the subscription shared. The shared subscription name to be used can be specified through the subscriptionName property. Default is false. Set this to true to register a shared subscription, typically in combination with a subscriptionName value (unless your message listener class name is good enough as subscription name). Note that shared subscriptions may also be durable, so this flag can (and often will) be combined with subscriptionDurable as well. Only makes sense when listening to a topic (pub-sub domain), therefore this method switches the pubSubDomain flag as well. Requires a JMS 2.0 compatible message broker.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.acceptMessagesWhileStopping": {
			"name": "camel.component.activemq.acceptMessagesWhileStopping",
			"description": "Specifies whether the consumer accept messages while it is stopping. You may consider enabling this option, if you start and stop JMS routes at runtime, while there are still messages enqueued on the queue. If this option is false, and you stop the JMS route, then messages may be rejected, and the JMS broker would have to attempt redeliveries, which yet again may be rejected, and eventually the message may be moved at a dead letter queue on the JMS broker. To avoid this its recommended to enable this option.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.allowReplyManagerQuickStop": {
			"name": "camel.component.activemq.allowReplyManagerQuickStop",
			"description": "Whether the DefaultMessageListenerContainer used in the reply managers for request-reply messaging allow the DefaultMessageListenerContainer.runningAllowed flag to quick stop in case JmsConfiguration#isAcceptMessagesWhileStopping is enabled, and org.apache.camel.CamelContext is currently being stopped. This quick stop ability is enabled by default in the regular JMS consumers but to enable for reply managers you must enable this flag.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.consumerType": {
			"name": "camel.component.activemq.consumerType",
			"description": "The consumer type to use, which can be one of: Simple, Default, or Custom. The consumer type determines which Spring JMS listener to use. Default will use org.springframework.jms.listener.DefaultMessageListenerContainer, Simple will use org.springframework.jms.listener.SimpleMessageListenerContainer. When Custom is specified, the MessageListenerContainerFactory defined by the messageListenerContainerFactory option will determine what org.springframework.jms.listener.AbstractMessageListenerContainer to use. One of: [Simple] [Default] [Custom]",
			"defaultValue": "\"Default\"",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"Simple",
				"Default",
				"Custom"
			]
		},
		"camel.component.activemq.defaultTaskExecutorType": {
			"name": "camel.component.activemq.defaultTaskExecutorType",
			"description": "Specifies what default TaskExecutor type to use in the DefaultMessageListenerContainer, for both consumer endpoints and the ReplyTo consumer of producer endpoints. Possible values: SimpleAsync (uses Spring's SimpleAsyncTaskExecutor) or ThreadPool (uses Spring's ThreadPoolTaskExecutor with optimal values - cached threadpool-like). If not set, it defaults to the previous behaviour, which uses a cached thread pool for consumer endpoints and SimpleAsync for reply consumers. The use of ThreadPool is recommended to reduce thread trash in elastic configurations with dynamically increasing and decreasing concurrent consumers. One of: [ThreadPool] [SimpleAsync]",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"ThreadPool",
				"SimpleAsync"
			]
		},
		"camel.component.activemq.eagerLoadingOfProperties": {
			"name": "camel.component.activemq.eagerLoadingOfProperties",
			"description": "Enables eager loading of JMS properties and payload as soon as a message is loaded which generally is inefficient as the JMS properties may not be required but sometimes can catch early any issues with the underlying JMS provider and the use of JMS properties. See also the option eagerPoisonBody.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.eagerPoisonBody": {
			"name": "camel.component.activemq.eagerPoisonBody",
			"description": "If eagerLoadingOfProperties is enabled and the JMS message payload (JMS body or JMS properties) is poison (cannot be read\/mapped), then set this text as the message body instead so the message can be processed (the cause of the poison are already stored as exception on the Exchange). This can be turned off by setting eagerPoisonBody=false. See also the option eagerLoadingOfProperties.",
			"defaultValue": "\"Poison JMS message due to ${exception.message}\"",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.exposeListenerSession": {
			"name": "camel.component.activemq.exposeListenerSession",
			"description": "Specifies whether the listener session should be exposed when consuming messages.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.replyToSameDestinationAllowed": {
			"name": "camel.component.activemq.replyToSameDestinationAllowed",
			"description": "Whether a JMS consumer is allowed to send a reply message to the same destination that the consumer is using to consume from. This prevents an endless loop by consuming and sending back the same message to itself.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.taskExecutor": {
			"name": "camel.component.activemq.taskExecutor",
			"description": "Allows you to specify a custom task executor for consuming messages.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.allowAutoWiredConnectionFactory": {
			"name": "camel.component.activemq.allowAutoWiredConnectionFactory",
			"description": "Whether to auto-discover ConnectionFactory from the registry, if no connection factory has been configured. If only one instance of ConnectionFactory is found then it will be used. This is enabled by default.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.allowAutoWiredDestinationResolver": {
			"name": "camel.component.activemq.allowAutoWiredDestinationResolver",
			"description": "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.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.allowSerializedHeaders": {
			"name": "camel.component.activemq.allowSerializedHeaders",
			"description": "Controls whether or not to include serialized headers. Applies only when transferExchange is true. This requires that the objects are serializable. Camel will exclude any non-serializable objects and log it at WARN level.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.artemisStreamingEnabled": {
			"name": "camel.component.activemq.artemisStreamingEnabled",
			"description": "Whether optimizing for Apache Artemis streaming mode.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.asyncStartListener": {
			"name": "camel.component.activemq.asyncStartListener",
			"description": "Whether to startup the JmsConsumer message listener asynchronously, when starting a route. For example if a JmsConsumer cannot get a connection to a remote JMS broker, then it may block while retrying and\/or failover. This will cause Camel to block while starting routes. By setting this option to true, you will let routes startup, while the JmsConsumer connects to the JMS broker using a dedicated thread in asynchronous mode. If this option is used, then beware that if the connection could not be established, then an exception is logged at WARN level, and the consumer will not be able to receive messages; You can then restart the route to retry.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.asyncStopListener": {
			"name": "camel.component.activemq.asyncStopListener",
			"description": "Whether to stop the JmsConsumer message listener asynchronously, when stopping a route.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.autowiredEnabled": {
			"name": "camel.component.activemq.autowiredEnabled",
			"description": "Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which then gets configured on the component. This can be used for automatic configuring JDBC data sources, JMS connection factories, AWS Clients, etc.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.configuration": {
			"name": "camel.component.activemq.configuration",
			"description": "To use a shared JMS configuration",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.destinationResolver": {
			"name": "camel.component.activemq.destinationResolver",
			"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).",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.errorHandler": {
			"name": "camel.component.activemq.errorHandler",
			"description": "Specifies a org.springframework.util.ErrorHandler to be invoked in case of any uncaught exceptions thrown while processing a Message. By default these exceptions will be logged at the WARN level, if no errorHandler has been configured. You can configure logging level and whether stack traces should be logged using errorHandlerLoggingLevel and errorHandlerLogStackTrace options. This makes it much easier to configure, than having to code a custom errorHandler.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.exceptionListener": {
			"name": "camel.component.activemq.exceptionListener",
			"description": "Specifies the JMS Exception Listener that is to be notified of any underlying JMS exceptions.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.idleConsumerLimit": {
			"name": "camel.component.activemq.idleConsumerLimit",
			"description": "Specify the limit for the number of consumers that are allowed to be idle at any given time.",
			"defaultValue": "1",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.idleTaskExecutionLimit": {
			"name": "camel.component.activemq.idleTaskExecutionLimit",
			"description": "Specifies the limit for idle executions of a receive task, not having received any message within its execution. If this limit is reached, the task will shut down and leave receiving to other executing tasks (in the case of dynamic scheduling; see the maxConcurrentConsumers setting). There is additional doc available from Spring.",
			"defaultValue": "1",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.includeAllJMSXProperties": {
			"name": "camel.component.activemq.includeAllJMSXProperties",
			"description": "Whether to include all JMSXxxx properties when mapping from JMS to Camel Message. Setting this to true will include properties such as JMSXAppID, and JMSXUserID etc. Note: If you are using a custom headerFilterStrategy then this option does not apply.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.jmsKeyFormatStrategy": {
			"name": "camel.component.activemq.jmsKeyFormatStrategy",
			"description": "Pluggable strategy for encoding and decoding JMS keys so they can be compliant with the JMS specification. Camel provides two implementations out of the box: default and passthrough. The default strategy will safely marshal dots and hyphens (. and -). The passthrough strategy leaves the key as is. Can be used for JMS brokers which do not care whether JMS header keys contain illegal characters. You can provide your own implementation of the org.apache.camel.component.jms.JmsKeyFormatStrategy and refer to it using the # notation. One of: [default] [passthrough]",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"default",
				"passthrough"
			]
		},
		"camel.component.activemq.mapJmsMessage": {
			"name": "camel.component.activemq.mapJmsMessage",
			"description": "Specifies whether Camel should auto map the received JMS message to a suited payload type, such as javax.jms.TextMessage to a String etc.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.maxMessagesPerTask": {
			"name": "camel.component.activemq.maxMessagesPerTask",
			"description": "The number of messages per task. -1 is unlimited. If you use a range for concurrent consumers (eg min max), then this option can be used to set a value to eg 100 to control how fast the consumers will shrink when less work is required.",
			"defaultValue": "-1",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.messageConverter": {
			"name": "camel.component.activemq.messageConverter",
			"description": "To use a custom Spring org.springframework.jms.support.converter.MessageConverter so you can be in control how to map to\/from a javax.jms.Message.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.messageCreatedStrategy": {
			"name": "camel.component.activemq.messageCreatedStrategy",
			"description": "To use the given MessageCreatedStrategy which are invoked when Camel creates new instances of javax.jms.Message objects when Camel is sending a JMS message.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.messageIdEnabled": {
			"name": "camel.component.activemq.messageIdEnabled",
			"description": "When sending, specifies whether message IDs should be added. This is just an hint to the JMS broker. If the JMS provider accepts this hint, these messages must have the message ID set to null; if the provider ignores the hint, the message ID must be set to its normal unique value.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.messageListenerContainerFactory": {
			"name": "camel.component.activemq.messageListenerContainerFactory",
			"description": "Registry ID of the MessageListenerContainerFactory used to determine what org.springframework.jms.listener.AbstractMessageListenerContainer to use to consume messages. Setting this will automatically set consumerType to Custom.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.messageTimestampEnabled": {
			"name": "camel.component.activemq.messageTimestampEnabled",
			"description": "Specifies whether timestamps should be enabled by default on sending messages. This is just an hint to the JMS broker. If the JMS provider accepts this hint, these messages must have the timestamp set to zero; if the provider ignores the hint the timestamp must be set to its normal value.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.pubSubNoLocal": {
			"name": "camel.component.activemq.pubSubNoLocal",
			"description": "Specifies whether to inhibit the delivery of messages published by its own connection.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.queueBrowseStrategy": {
			"name": "camel.component.activemq.queueBrowseStrategy",
			"description": "To use a custom QueueBrowseStrategy when browsing queues",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.receiveTimeout": {
			"name": "camel.component.activemq.receiveTimeout",
			"description": "The timeout for receiving messages (in milliseconds).",
			"defaultValue": "1000L",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.recoveryInterval": {
			"name": "camel.component.activemq.recoveryInterval",
			"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.",
			"defaultValue": "5000L",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.requestTimeoutCheckerInterval": {
			"name": "camel.component.activemq.requestTimeoutCheckerInterval",
			"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.",
			"defaultValue": "1000L",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.synchronous": {
			"name": "camel.component.activemq.synchronous",
			"description": "Sets whether synchronous processing should be strictly used",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.transferException": {
			"name": "camel.component.activemq.transferException",
			"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 javax.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!",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.transferExchange": {
			"name": "camel.component.activemq.transferExchange",
			"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 received to be able to deserialize the data at Class level, which forces a strong coupling between the producers and consumer having to use compatible Camel versions!",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.trustAllPackages": {
			"name": "camel.component.activemq.trustAllPackages",
			"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.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.useMessageIDAsCorrelationID": {
			"name": "camel.component.activemq.useMessageIDAsCorrelationID",
			"description": "Specifies whether JMSMessageID should always be used as JMSCorrelationID for InOut messages.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.waitForProvisionCorrelationToBeUpdatedCounter": {
			"name": "camel.component.activemq.waitForProvisionCorrelationToBeUpdatedCounter",
			"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.",
			"defaultValue": "50",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.waitForProvisionCorrelationToBeUpdatedThreadSleepingTime": {
			"name": "camel.component.activemq.waitForProvisionCorrelationToBeUpdatedThreadSleepingTime",
			"description": "Interval in millis to sleep each time while waiting for provisional correlation id to be updated.",
			"defaultValue": "100L",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.headerFilterStrategy": {
			"name": "camel.component.activemq.headerFilterStrategy",
			"description": "To use a custom org.apache.camel.spi.HeaderFilterStrategy to filter header to and from Camel message.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.errorHandlerLoggingLevel": {
			"name": "camel.component.activemq.errorHandlerLoggingLevel",
			"description": "Allows to configure the default errorHandler logging level for logging uncaught exceptions. One of: [TRACE] [DEBUG] [INFO] [WARN] [ERROR] [OFF]",
			"defaultValue": "\"WARN\"",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"TRACE",
				"DEBUG",
				"INFO",
				"WARN",
				"ERROR",
				"OFF"
			]
		},
		"camel.component.activemq.errorHandlerLogStackTrace": {
			"name": "camel.component.activemq.errorHandlerLogStackTrace",
			"description": "Allows to control whether stacktraces should be logged or not, by the default errorHandler.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.password": {
			"name": "camel.component.activemq.password",
			"description": "Password to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.username": {
			"name": "camel.component.activemq.username",
			"description": "Username to use with the ConnectionFactory. You can also configure username\/password directly on the ConnectionFactory.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.transacted": {
			"name": "camel.component.activemq.transacted",
			"description": "Specifies whether to use transacted mode",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.transactedInOut": {
			"name": "camel.component.activemq.transactedInOut",
			"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.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.lazyCreateTransactionManager": {
			"name": "camel.component.activemq.lazyCreateTransactionManager",
			"description": "If true, Camel will create a JmsTransactionManager, if there is no transactionManager injected when option transacted=true.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.transactionManager": {
			"name": "camel.component.activemq.transactionManager",
			"description": "The Spring transaction manager to use.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.transactionName": {
			"name": "camel.component.activemq.transactionName",
			"description": "The name of the transaction to use.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.activemq.transactionTimeout": {
			"name": "camel.component.activemq.transactionTimeout",
			"description": "The timeout value of the transaction (in seconds), if using transacted mode.",
			"defaultValue": "-1",
			"priority": "MEDIUM",
			"required": "false"
		}
	}
}