{
	"connector": {
		"class": "org.apache.camel.kafkaconnector.stomp.CamelStompSourceConnector",
		"artifactId": "camel-stomp-kafka-connector",
		"groupId": "org.apache.camel.kafkaconnector",
		"id": "camel-stomp-source",
		"type": "source",
		"version": "0.9.0",
		"description": "Send and rececive messages to\/from STOMP (Simple Text Oriented Messaging Protocol) compliant message brokers."
	},
	"properties": {
		"camel.source.path.destination": {
			"name": "camel.source.path.destination",
			"description": "Name of the queue",
			"priority": "HIGH",
			"required": "true"
		},
		"camel.source.endpoint.brokerURL": {
			"name": "camel.source.endpoint.brokerURL",
			"description": "The URI of the Stomp broker to connect to",
			"defaultValue": "\"tcp:\/\/localhost:61613\"",
			"priority": "HIGH",
			"required": "true"
		},
		"camel.source.endpoint.customHeaders": {
			"name": "camel.source.endpoint.customHeaders",
			"description": "To set custom headers",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.host": {
			"name": "camel.source.endpoint.host",
			"description": "The virtual host name",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.version": {
			"name": "camel.source.endpoint.version",
			"description": "The stomp version (1.1, or 1.2)",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.bridgeErrorHandler": {
			"name": "camel.source.endpoint.bridgeErrorHandler",
			"description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored.",
			"defaultValue": "false",
			"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.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.login": {
			"name": "camel.source.endpoint.login",
			"description": "The username",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.passcode": {
			"name": "camel.source.endpoint.passcode",
			"description": "The password",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.sslContextParameters": {
			"name": "camel.source.endpoint.sslContextParameters",
			"description": "To configure security using SSLContextParameters",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.stomp.brokerURL": {
			"name": "camel.component.stomp.brokerURL",
			"description": "The URI of the Stomp broker to connect to",
			"defaultValue": "\"tcp:\/\/localhost:61613\"",
			"priority": "HIGH",
			"required": "true"
		},
		"camel.component.stomp.customHeaders": {
			"name": "camel.component.stomp.customHeaders",
			"description": "To set custom headers",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.stomp.host": {
			"name": "camel.component.stomp.host",
			"description": "The virtual host name",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.stomp.version": {
			"name": "camel.component.stomp.version",
			"description": "The stomp version (1.1, or 1.2)",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.stomp.bridgeErrorHandler": {
			"name": "camel.component.stomp.bridgeErrorHandler",
			"description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions occurred while the consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions, that will be logged at WARN or ERROR level and ignored.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.stomp.autowiredEnabled": {
			"name": "camel.component.stomp.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.stomp.configuration": {
			"name": "camel.component.stomp.configuration",
			"description": "Component configuration.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.stomp.headerFilterStrategy": {
			"name": "camel.component.stomp.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.stomp.login": {
			"name": "camel.component.stomp.login",
			"description": "The username",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.stomp.passcode": {
			"name": "camel.component.stomp.passcode",
			"description": "The password",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.stomp.sslContextParameters": {
			"name": "camel.component.stomp.sslContextParameters",
			"description": "To configure security using SSLContextParameters",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.stomp.useGlobalSslContextParameters": {
			"name": "camel.component.stomp.useGlobalSslContextParameters",
			"description": "Enable usage of global SSL context parameters.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		}
	}
}