{
	"connector": {
		"class": "org.apache.camel.kafkaconnector.thrift.CamelThriftSourceConnector",
		"artifactId": "camel-thrift-kafka-connector",
		"groupId": "org.apache.camel.kafkaconnector",
		"id": "camel-thrift-source",
		"type": "source",
		"version": "0.9.0",
		"description": "Call and expose remote procedures (RPC) with Apache Thrift data format and serialization mechanism."
	},
	"properties": {
		"camel.source.path.host": {
			"name": "camel.source.path.host",
			"description": "The Thrift server host name. This is localhost or 0.0.0.0 (if not defined) when being a consumer or remote server host name when using producer.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.path.port": {
			"name": "camel.source.path.port",
			"description": "The Thrift server port",
			"priority": "HIGH",
			"required": "true"
		},
		"camel.source.path.service": {
			"name": "camel.source.path.service",
			"description": "Fully qualified service name from the thrift descriptor file (package dot service definition name)",
			"priority": "HIGH",
			"required": "true"
		},
		"camel.source.endpoint.compressionType": {
			"name": "camel.source.endpoint.compressionType",
			"description": "Protocol compression mechanism type One of: [NONE] [ZLIB]",
			"defaultValue": "\"NONE\"",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"NONE",
				"ZLIB"
			]
		},
		"camel.source.endpoint.exchangeProtocol": {
			"name": "camel.source.endpoint.exchangeProtocol",
			"description": "Exchange protocol serialization type One of: [BINARY] [JSON] [SJSON] [COMPACT]",
			"defaultValue": "\"BINARY\"",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"BINARY",
				"JSON",
				"SJSON",
				"COMPACT"
			]
		},
		"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.clientTimeout": {
			"name": "camel.source.endpoint.clientTimeout",
			"description": "Client timeout for consumers",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.maxPoolSize": {
			"name": "camel.source.endpoint.maxPoolSize",
			"description": "The Thrift server consumer max thread pool size",
			"defaultValue": "10",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.poolSize": {
			"name": "camel.source.endpoint.poolSize",
			"description": "The Thrift server consumer initial thread pool size",
			"defaultValue": "1",
			"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.synchronous": {
			"name": "camel.source.endpoint.synchronous",
			"description": "Sets whether synchronous processing should be strictly used",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.negotiationType": {
			"name": "camel.source.endpoint.negotiationType",
			"description": "Security negotiation type One of: [PLAINTEXT] [SSL] [SASL]",
			"defaultValue": "\"PLAINTEXT\"",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"PLAINTEXT",
				"SSL",
				"SASL"
			]
		},
		"camel.source.endpoint.sslParameters": {
			"name": "camel.source.endpoint.sslParameters",
			"description": "Configuration parameters for SSL\/TLS security negotiation",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.thrift.bridgeErrorHandler": {
			"name": "camel.component.thrift.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.thrift.autowiredEnabled": {
			"name": "camel.component.thrift.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.thrift.useGlobalSslContextParameters": {
			"name": "camel.component.thrift.useGlobalSslContextParameters",
			"description": "Determine if the thrift component is using global SSL context parameters",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		}
	}
}