{
	"connector": {
		"class": "org.apache.camel.kafkaconnector.solr.CamelSolrSinkConnector",
		"artifactId": "camel-solr-kafka-connector",
		"groupId": "org.apache.camel.kafkaconnector",
		"id": "camel-solr-sink",
		"type": "sink",
		"version": "0.7.3",
		"description": "Perform operations against Apache Lucene Solr."
	},
	"properties": {
		"camel.sink.path.url": {
			"name": "camel.sink.path.url",
			"description": "Hostname and port for the solr server",
			"priority": "HIGH",
			"required": "true"
		},
		"camel.sink.endpoint.allowCompression": {
			"name": "camel.sink.endpoint.allowCompression",
			"description": "Server side must support gzip or deflate for this to have any effect",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.connectionTimeout": {
			"name": "camel.sink.endpoint.connectionTimeout",
			"description": "connectionTimeout on the underlying HttpConnectionManager",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.defaultMaxConnectionsPerHost": {
			"name": "camel.sink.endpoint.defaultMaxConnectionsPerHost",
			"description": "maxConnectionsPerHost on the underlying HttpConnectionManager",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.followRedirects": {
			"name": "camel.sink.endpoint.followRedirects",
			"description": "indicates whether redirects are used to get to the Solr server",
			"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.maxRetries": {
			"name": "camel.sink.endpoint.maxRetries",
			"description": "Maximum number of retries to attempt in the event of transient errors",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.maxTotalConnections": {
			"name": "camel.sink.endpoint.maxTotalConnections",
			"description": "maxTotalConnection on the underlying HttpConnectionManager",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.requestHandler": {
			"name": "camel.sink.endpoint.requestHandler",
			"description": "Set the request handler to be used",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.soTimeout": {
			"name": "camel.sink.endpoint.soTimeout",
			"description": "Read timeout on the underlying HttpConnectionManager. This is desirable for queries, but probably not for indexing",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.streamingQueueSize": {
			"name": "camel.sink.endpoint.streamingQueueSize",
			"description": "Set the queue size for the StreamingUpdateSolrServer",
			"defaultValue": "10",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.streamingThreadCount": {
			"name": "camel.sink.endpoint.streamingThreadCount",
			"description": "Set the number of threads for the StreamingUpdateSolrServer",
			"defaultValue": "2",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.synchronous": {
			"name": "camel.sink.endpoint.synchronous",
			"description": "Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported).",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.password": {
			"name": "camel.sink.endpoint.password",
			"description": "Sets password for basic auth plugin enabled servers",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.username": {
			"name": "camel.sink.endpoint.username",
			"description": "Sets username for basic auth plugin enabled servers",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.collection": {
			"name": "camel.sink.endpoint.collection",
			"description": "Set the collection name which the solrCloud server could use",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.sink.endpoint.zkHost": {
			"name": "camel.sink.endpoint.zkHost",
			"description": "Set the ZooKeeper host information which the solrCloud could use, such as zkhost=localhost:8123.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.solr.lazyStartProducer": {
			"name": "camel.component.solr.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.solr.autowiredEnabled": {
			"name": "camel.component.solr.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"
		}
	}
}