{
	"connector": {
		"class": "org.apache.camel.kafkaconnector.pahomqtt5.CamelPahomqtt5SinkConnector",
		"artifactId": "camel-paho-mqtt5-kafka-connector",
		"groupId": "org.apache.camel.kafkaconnector",
		"id": "camel-paho-mqtt5-sink",
		"type": "sink",
		"version": "0.9.0",
		"description": "Communicate with MQTT message brokers using Eclipse Paho MQTT v5 Client."
	},
	"properties": {
		"camel.sink.path.topic": {
			"name": "camel.sink.path.topic",
			"description": "Name of the topic",
			"priority": "HIGH",
			"required": "true"
		},
		"camel.sink.endpoint.automaticReconnect": {
			"name": "camel.sink.endpoint.automaticReconnect",
			"description": "Sets whether the client will automatically attempt to reconnect to the server if the connection is lost. If set to false, the client will not attempt to automatically reconnect to the server in the event that the connection is lost. If set to true, in the event that the connection is lost, the client will attempt to reconnect to the server. It will initially wait 1 second before it attempts to reconnect, for every failed reconnect attempt, the delay will double until it is at 2 minutes at which point the delay will stay at 2 minutes.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.brokerUrl": {
			"name": "camel.sink.endpoint.brokerUrl",
			"description": "The URL of the MQTT broker.",
			"defaultValue": "\"tcp:\/\/localhost:1883\"",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.cleanStart": {
			"name": "camel.sink.endpoint.cleanStart",
			"description": "Sets whether the client and server should remember state across restarts and reconnects. If set to false both the client and server will maintain state across restarts of the client, the server and the connection. As state is maintained: Message delivery will be reliable meeting the specified QOS even if the client, server or connection are restarted. The server will treat a subscription as durable. If set to true the client and server will not maintain state across restarts of the client, the server or the connection. This means Message delivery to the specified QOS cannot be maintained if the client, server or connection are restarted The server will treat a subscription as non-durable",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.clientId": {
			"name": "camel.sink.endpoint.clientId",
			"description": "MQTT client identifier. The identifier must be unique.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.connectionTimeout": {
			"name": "camel.sink.endpoint.connectionTimeout",
			"description": "Sets the connection timeout value. This value, measured in seconds, defines the maximum time interval the client will wait for the network connection to the MQTT server to be established. The default timeout is 30 seconds. A value of 0 disables timeout processing meaning the client will wait until the network connection is made successfully or fails.",
			"defaultValue": "30",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.filePersistenceDirectory": {
			"name": "camel.sink.endpoint.filePersistenceDirectory",
			"description": "Base directory used by file persistence. Will by default use user directory.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.keepAliveInterval": {
			"name": "camel.sink.endpoint.keepAliveInterval",
			"description": "Sets the keep alive interval. This value, measured in seconds, defines the maximum time interval between messages sent or received. It enables the client to detect if the server is no longer available, without having to wait for the TCP\/IP timeout. The client will ensure that at least one message travels across the network within each keep alive period. In the absence of a data-related message during the time period, the client sends a very small ping message, which the server will acknowledge. A value of 0 disables keepalive processing in the client. The default value is 60 seconds",
			"defaultValue": "60",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.maxReconnectDelay": {
			"name": "camel.sink.endpoint.maxReconnectDelay",
			"description": "Get the maximum time (in millis) to wait between reconnects",
			"defaultValue": "128000",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.persistence": {
			"name": "camel.sink.endpoint.persistence",
			"description": "Client persistence to be used - memory or file. One of: [FILE] [MEMORY]",
			"defaultValue": "\"MEMORY\"",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"FILE",
				"MEMORY"
			]
		},
		"camel.sink.endpoint.qos": {
			"name": "camel.sink.endpoint.qos",
			"description": "Client quality of service level (0-2).",
			"defaultValue": "2",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.receiveMaximum": {
			"name": "camel.sink.endpoint.receiveMaximum",
			"description": "Sets the Receive Maximum. This value represents the limit of QoS 1 and QoS 2 publications that the client is willing to process concurrently. There is no mechanism to limit the number of QoS 0 publications that the Server might try to send. The default value is 65535",
			"defaultValue": "65535",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.retained": {
			"name": "camel.sink.endpoint.retained",
			"description": "Retain option",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.serverURIs": {
			"name": "camel.sink.endpoint.serverURIs",
			"description": "Set a list of one or more serverURIs the client may connect to. Multiple servers can be separated by comma. Each serverURI specifies the address of a server that the client may connect to. Two types of connection are supported tcp:\/\/ for a TCP connection and ssl:\/\/ for a TCP connection secured by SSL\/TLS. For example: tcp:\/\/localhost:1883 ssl:\/\/localhost:8883 If the port is not specified, it will default to 1883 for tcp:\/\/ URIs, and 8883 for ssl:\/\/ URIs. If serverURIs is set then it overrides the serverURI parameter passed in on the constructor of the MQTT client. When an attempt to connect is initiated the client will start with the first serverURI in the list and work through the list until a connection is established with a server. If a connection cannot be made to any of the servers then the connect attempt fails. Specifying a list of servers that a client may connect to has several uses: High Availability and reliable message delivery Some MQTT servers support a high availability feature where two or more equal MQTT servers share state. An MQTT client can connect to any of the equal servers and be assured that messages are reliably delivered and durable subscriptions are maintained no matter which server the client connects to. The cleansession flag must be set to false if durable subscriptions and\/or reliable message delivery is required. Hunt List A set of servers may be specified that are not equal (as in the high availability option). As no state is shared across the servers reliable message delivery and durable subscriptions are not valid. The cleansession flag must be set to true if the hunt list mode is used",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.willMqttProperties": {
			"name": "camel.sink.endpoint.willMqttProperties",
			"description": "Sets the Last Will and Testament (LWT) for the connection. In the event that this client unexpectedly loses its connection to the server, the server will publish a message to itself using the supplied details. The MQTT properties set for the message.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.willPayload": {
			"name": "camel.sink.endpoint.willPayload",
			"description": "Sets the Last Will and Testament (LWT) for the connection. In the event that this client unexpectedly loses its connection to the server, the server will publish a message to itself using the supplied details. The byte payload for the message.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.willQos": {
			"name": "camel.sink.endpoint.willQos",
			"description": "Sets the Last Will and Testament (LWT) for the connection. In the event that this client unexpectedly loses its connection to the server, the server will publish a message to itself using the supplied details. The quality of service to publish the message at (0, 1 or 2).",
			"defaultValue": "1",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.willRetained": {
			"name": "camel.sink.endpoint.willRetained",
			"description": "Sets the Last Will and Testament (LWT) for the connection. In the event that this client unexpectedly loses its connection to the server, the server will publish a message to itself using the supplied details. Whether or not the message should be retained.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.willTopic": {
			"name": "camel.sink.endpoint.willTopic",
			"description": "Sets the Last Will and Testament (LWT) for the connection. In the event that this client unexpectedly loses its connection to the server, the server will publish a message to itself using the supplied details. The topic to publish to.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.lazyStartProducer": {
			"name": "camel.sink.endpoint.lazyStartProducer",
			"description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.client": {
			"name": "camel.sink.endpoint.client",
			"description": "To use an existing mqtt client",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.customWebSocketHeaders": {
			"name": "camel.sink.endpoint.customWebSocketHeaders",
			"description": "Sets the Custom WebSocket Headers for the WebSocket Connection.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.executorServiceTimeout": {
			"name": "camel.sink.endpoint.executorServiceTimeout",
			"description": "Set the time in seconds that the executor service should wait when terminating before forcefully terminating. It is not recommended to change this value unless you are absolutely sure that you need to.",
			"defaultValue": "1",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.httpsHostnameVerificationEnabled": {
			"name": "camel.sink.endpoint.httpsHostnameVerificationEnabled",
			"description": "Whether SSL HostnameVerifier is enabled or not. The default value is true.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.password": {
			"name": "camel.sink.endpoint.password",
			"description": "Password to be used for authentication against the MQTT broker",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.socketFactory": {
			"name": "camel.sink.endpoint.socketFactory",
			"description": "Sets the SocketFactory to use. This allows an application to apply its own policies around the creation of network sockets. If using an SSL connection, an SSLSocketFactory can be used to supply application-specific security settings.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.sslClientProps": {
			"name": "camel.sink.endpoint.sslClientProps",
			"description": "Sets the SSL properties for the connection. Note that these properties are only valid if an implementation of the Java Secure Socket Extensions (JSSE) is available. These properties are not used if a custom SocketFactory has been set. The following properties can be used: com.ibm.ssl.protocol One of: SSL, SSLv3, TLS, TLSv1, SSL_TLS. com.ibm.ssl.contextProvider Underlying JSSE provider. For example IBMJSSE2 or SunJSSE com.ibm.ssl.keyStore The name of the file that contains the KeyStore object that you want the KeyManager to use. For example \/mydir\/etc\/key.p12 com.ibm.ssl.keyStorePassword The password for the KeyStore object that you want the KeyManager to use. The password can either be in plain-text, or may be obfuscated using the static method: com.ibm.micro.security.Password.obfuscate(char password). This obfuscates the password using a simple and insecure XOR and Base64 encoding mechanism. Note that this is only a simple scrambler to obfuscate clear-text passwords. com.ibm.ssl.keyStoreType Type of key store, for example PKCS12, JKS, or JCEKS. com.ibm.ssl.keyStoreProvider Key store provider, for example IBMJCE or IBMJCEFIPS. com.ibm.ssl.trustStore The name of the file that contains the KeyStore object that you want the TrustManager to use. com.ibm.ssl.trustStorePassword The password for the TrustStore object that you want the TrustManager to use. The password can either be in plain-text, or may be obfuscated using the static method: com.ibm.micro.security.Password.obfuscate(char password). This obfuscates the password using a simple and insecure XOR and Base64 encoding mechanism. Note that this is only a simple scrambler to obfuscate clear-text passwords. com.ibm.ssl.trustStoreType The type of KeyStore object that you want the default TrustManager to use. Same possible values as keyStoreType. com.ibm.ssl.trustStoreProvider Trust store provider, for example IBMJCE or IBMJCEFIPS. com.ibm.ssl.enabledCipherSuites A list of which ciphers are enabled. Values are dependent on the provider, for example: SSL_RSA_WITH_AES_128_CBC_SHA;SSL_RSA_WITH_3DES_EDE_CBC_SHA. com.ibm.ssl.keyManager Sets the algorithm that will be used to instantiate a KeyManagerFactory object instead of using the default algorithm available in the platform. Example values: IbmX509 or IBMJ9X509. com.ibm.ssl.trustManager Sets the algorithm that will be used to instantiate a TrustManagerFactory object instead of using the default algorithm available in the platform. Example values: PKIX or IBMJ9X509.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.sslHostnameVerifier": {
			"name": "camel.sink.endpoint.sslHostnameVerifier",
			"description": "Sets the HostnameVerifier for the SSL connection. Note that it will be used after handshake on a connection and you should do actions by yourself when hostname is verified error. There is no default HostnameVerifier",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.userName": {
			"name": "camel.sink.endpoint.userName",
			"description": "Username to be used for authentication against the MQTT broker",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.automaticReconnect": {
			"name": "camel.component.paho-mqtt5.automaticReconnect",
			"description": "Sets whether the client will automatically attempt to reconnect to the server if the connection is lost. If set to false, the client will not attempt to automatically reconnect to the server in the event that the connection is lost. If set to true, in the event that the connection is lost, the client will attempt to reconnect to the server. It will initially wait 1 second before it attempts to reconnect, for every failed reconnect attempt, the delay will double until it is at 2 minutes at which point the delay will stay at 2 minutes.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.brokerUrl": {
			"name": "camel.component.paho-mqtt5.brokerUrl",
			"description": "The URL of the MQTT broker.",
			"defaultValue": "\"tcp:\/\/localhost:1883\"",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.cleanStart": {
			"name": "camel.component.paho-mqtt5.cleanStart",
			"description": "Sets whether the client and server should remember state across restarts and reconnects. If set to false both the client and server will maintain state across restarts of the client, the server and the connection. As state is maintained: Message delivery will be reliable meeting the specified QOS even if the client, server or connection are restarted. The server will treat a subscription as durable. If set to true the client and server will not maintain state across restarts of the client, the server or the connection. This means Message delivery to the specified QOS cannot be maintained if the client, server or connection are restarted The server will treat a subscription as non-durable",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.clientId": {
			"name": "camel.component.paho-mqtt5.clientId",
			"description": "MQTT client identifier. The identifier must be unique.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.configuration": {
			"name": "camel.component.paho-mqtt5.configuration",
			"description": "To use the shared Paho configuration",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.connectionTimeout": {
			"name": "camel.component.paho-mqtt5.connectionTimeout",
			"description": "Sets the connection timeout value. This value, measured in seconds, defines the maximum time interval the client will wait for the network connection to the MQTT server to be established. The default timeout is 30 seconds. A value of 0 disables timeout processing meaning the client will wait until the network connection is made successfully or fails.",
			"defaultValue": "30",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.filePersistenceDirectory": {
			"name": "camel.component.paho-mqtt5.filePersistenceDirectory",
			"description": "Base directory used by file persistence. Will by default use user directory.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.keepAliveInterval": {
			"name": "camel.component.paho-mqtt5.keepAliveInterval",
			"description": "Sets the keep alive interval. This value, measured in seconds, defines the maximum time interval between messages sent or received. It enables the client to detect if the server is no longer available, without having to wait for the TCP\/IP timeout. The client will ensure that at least one message travels across the network within each keep alive period. In the absence of a data-related message during the time period, the client sends a very small ping message, which the server will acknowledge. A value of 0 disables keepalive processing in the client. The default value is 60 seconds",
			"defaultValue": "60",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.maxReconnectDelay": {
			"name": "camel.component.paho-mqtt5.maxReconnectDelay",
			"description": "Get the maximum time (in millis) to wait between reconnects",
			"defaultValue": "128000",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.persistence": {
			"name": "camel.component.paho-mqtt5.persistence",
			"description": "Client persistence to be used - memory or file. One of: [FILE] [MEMORY]",
			"defaultValue": "\"MEMORY\"",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"FILE",
				"MEMORY"
			]
		},
		"camel.component.paho-mqtt5.qos": {
			"name": "camel.component.paho-mqtt5.qos",
			"description": "Client quality of service level (0-2).",
			"defaultValue": "2",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.receiveMaximum": {
			"name": "camel.component.paho-mqtt5.receiveMaximum",
			"description": "Sets the Receive Maximum. This value represents the limit of QoS 1 and QoS 2 publications that the client is willing to process concurrently. There is no mechanism to limit the number of QoS 0 publications that the Server might try to send. The default value is 65535",
			"defaultValue": "65535",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.retained": {
			"name": "camel.component.paho-mqtt5.retained",
			"description": "Retain option",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.serverURIs": {
			"name": "camel.component.paho-mqtt5.serverURIs",
			"description": "Set a list of one or more serverURIs the client may connect to. Multiple servers can be separated by comma. Each serverURI specifies the address of a server that the client may connect to. Two types of connection are supported tcp:\/\/ for a TCP connection and ssl:\/\/ for a TCP connection secured by SSL\/TLS. For example: tcp:\/\/localhost:1883 ssl:\/\/localhost:8883 If the port is not specified, it will default to 1883 for tcp:\/\/ URIs, and 8883 for ssl:\/\/ URIs. If serverURIs is set then it overrides the serverURI parameter passed in on the constructor of the MQTT client. When an attempt to connect is initiated the client will start with the first serverURI in the list and work through the list until a connection is established with a server. If a connection cannot be made to any of the servers then the connect attempt fails. Specifying a list of servers that a client may connect to has several uses: High Availability and reliable message delivery Some MQTT servers support a high availability feature where two or more equal MQTT servers share state. An MQTT client can connect to any of the equal servers and be assured that messages are reliably delivered and durable subscriptions are maintained no matter which server the client connects to. The cleansession flag must be set to false if durable subscriptions and\/or reliable message delivery is required. Hunt List A set of servers may be specified that are not equal (as in the high availability option). As no state is shared across the servers reliable message delivery and durable subscriptions are not valid. The cleansession flag must be set to true if the hunt list mode is used",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.willMqttProperties": {
			"name": "camel.component.paho-mqtt5.willMqttProperties",
			"description": "Sets the Last Will and Testament (LWT) for the connection. In the event that this client unexpectedly loses its connection to the server, the server will publish a message to itself using the supplied details. The MQTT properties set for the message.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.willPayload": {
			"name": "camel.component.paho-mqtt5.willPayload",
			"description": "Sets the Last Will and Testament (LWT) for the connection. In the event that this client unexpectedly loses its connection to the server, the server will publish a message to itself using the supplied details. The byte payload for the message.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.willQos": {
			"name": "camel.component.paho-mqtt5.willQos",
			"description": "Sets the Last Will and Testament (LWT) for the connection. In the event that this client unexpectedly loses its connection to the server, the server will publish a message to itself using the supplied details. The quality of service to publish the message at (0, 1 or 2).",
			"defaultValue": "1",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.willRetained": {
			"name": "camel.component.paho-mqtt5.willRetained",
			"description": "Sets the Last Will and Testament (LWT) for the connection. In the event that this client unexpectedly loses its connection to the server, the server will publish a message to itself using the supplied details. Whether or not the message should be retained.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.willTopic": {
			"name": "camel.component.paho-mqtt5.willTopic",
			"description": "Sets the Last Will and Testament (LWT) for the connection. In the event that this client unexpectedly loses its connection to the server, the server will publish a message to itself using the supplied details. The topic to publish to.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.lazyStartProducer": {
			"name": "camel.component.paho-mqtt5.lazyStartProducer",
			"description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.autowiredEnabled": {
			"name": "camel.component.paho-mqtt5.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.paho-mqtt5.client": {
			"name": "camel.component.paho-mqtt5.client",
			"description": "To use a shared Paho client",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.customWebSocketHeaders": {
			"name": "camel.component.paho-mqtt5.customWebSocketHeaders",
			"description": "Sets the Custom WebSocket Headers for the WebSocket Connection.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.executorServiceTimeout": {
			"name": "camel.component.paho-mqtt5.executorServiceTimeout",
			"description": "Set the time in seconds that the executor service should wait when terminating before forcefully terminating. It is not recommended to change this value unless you are absolutely sure that you need to.",
			"defaultValue": "1",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.httpsHostnameVerificationEnabled": {
			"name": "camel.component.paho-mqtt5.httpsHostnameVerificationEnabled",
			"description": "Whether SSL HostnameVerifier is enabled or not. The default value is true.",
			"defaultValue": "true",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.password": {
			"name": "camel.component.paho-mqtt5.password",
			"description": "Password to be used for authentication against the MQTT broker",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.socketFactory": {
			"name": "camel.component.paho-mqtt5.socketFactory",
			"description": "Sets the SocketFactory to use. This allows an application to apply its own policies around the creation of network sockets. If using an SSL connection, an SSLSocketFactory can be used to supply application-specific security settings.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.sslClientProps": {
			"name": "camel.component.paho-mqtt5.sslClientProps",
			"description": "Sets the SSL properties for the connection. Note that these properties are only valid if an implementation of the Java Secure Socket Extensions (JSSE) is available. These properties are not used if a custom SocketFactory has been set. The following properties can be used: com.ibm.ssl.protocol One of: SSL, SSLv3, TLS, TLSv1, SSL_TLS. com.ibm.ssl.contextProvider Underlying JSSE provider. For example IBMJSSE2 or SunJSSE com.ibm.ssl.keyStore The name of the file that contains the KeyStore object that you want the KeyManager to use. For example \/mydir\/etc\/key.p12 com.ibm.ssl.keyStorePassword The password for the KeyStore object that you want the KeyManager to use. The password can either be in plain-text, or may be obfuscated using the static method: com.ibm.micro.security.Password.obfuscate(char password). This obfuscates the password using a simple and insecure XOR and Base64 encoding mechanism. Note that this is only a simple scrambler to obfuscate clear-text passwords. com.ibm.ssl.keyStoreType Type of key store, for example PKCS12, JKS, or JCEKS. com.ibm.ssl.keyStoreProvider Key store provider, for example IBMJCE or IBMJCEFIPS. com.ibm.ssl.trustStore The name of the file that contains the KeyStore object that you want the TrustManager to use. com.ibm.ssl.trustStorePassword The password for the TrustStore object that you want the TrustManager to use. The password can either be in plain-text, or may be obfuscated using the static method: com.ibm.micro.security.Password.obfuscate(char password). This obfuscates the password using a simple and insecure XOR and Base64 encoding mechanism. Note that this is only a simple scrambler to obfuscate clear-text passwords. com.ibm.ssl.trustStoreType The type of KeyStore object that you want the default TrustManager to use. Same possible values as keyStoreType. com.ibm.ssl.trustStoreProvider Trust store provider, for example IBMJCE or IBMJCEFIPS. com.ibm.ssl.enabledCipherSuites A list of which ciphers are enabled. Values are dependent on the provider, for example: SSL_RSA_WITH_AES_128_CBC_SHA;SSL_RSA_WITH_3DES_EDE_CBC_SHA. com.ibm.ssl.keyManager Sets the algorithm that will be used to instantiate a KeyManagerFactory object instead of using the default algorithm available in the platform. Example values: IbmX509 or IBMJ9X509. com.ibm.ssl.trustManager Sets the algorithm that will be used to instantiate a TrustManagerFactory object instead of using the default algorithm available in the platform. Example values: PKIX or IBMJ9X509.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.sslHostnameVerifier": {
			"name": "camel.component.paho-mqtt5.sslHostnameVerifier",
			"description": "Sets the HostnameVerifier for the SSL connection. Note that it will be used after handshake on a connection and you should do actions by yourself when hostname is verified error. There is no default HostnameVerifier",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.paho-mqtt5.userName": {
			"name": "camel.component.paho-mqtt5.userName",
			"description": "Username to be used for authentication against the MQTT broker",
			"priority": "MEDIUM",
			"required": "false"
		}
	}
}