{
	"connector": {
		"class": "org.apache.camel.kafkaconnector.hazelcastinstance.CamelHazelcastinstanceSourceConnector",
		"artifactId": "camel-hazelcast-instance-kafka-connector",
		"groupId": "org.apache.camel.kafkaconnector",
		"id": "camel-hazelcast-instance-source",
		"type": "source",
		"version": "0.7.0-SNAPSHOT",
		"description": "Consume join\/leave events of a cache instance in a Hazelcast cluster."
	},
	"properties": {
		"camel.source.path.cacheName": {
			"name": "camel.source.path.cacheName",
			"description": "The name of the cache",
			"priority": "HIGH",
			"required": "true"
		},
		"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.defaultOperation": {
			"name": "camel.source.endpoint.defaultOperation",
			"description": "To specify a default operation to use, if no operation header has been provided. One of: [put] [delete] [get] [update] [query] [getAll] [clear] [putIfAbsent] [allAll] [removeAll] [retainAll] [evict] [evictAll] [valueCount] [containsKey] [containsValue] [keySet] [removevalue] [increment] [decrement] [setvalue] [destroy] [compareAndSet] [getAndAdd] [add] [offer] [peek] [poll] [remainingCapacity] [drainTo] [removeIf] [take] [publish] [readOnceHeal] [readOnceTail] [capacity]",
			"priority": "MEDIUM",
			"required": "false",
			"enum": [
				"put",
				"delete",
				"get",
				"update",
				"query",
				"getAll",
				"clear",
				"putIfAbsent",
				"allAll",
				"removeAll",
				"retainAll",
				"evict",
				"evictAll",
				"valueCount",
				"containsKey",
				"containsValue",
				"keySet",
				"removevalue",
				"increment",
				"decrement",
				"setvalue",
				"destroy",
				"compareAndSet",
				"getAndAdd",
				"add",
				"offer",
				"peek",
				"poll",
				"remainingCapacity",
				"drainTo",
				"removeIf",
				"take",
				"publish",
				"readOnceHeal",
				"readOnceTail",
				"capacity"
			]
		},
		"camel.source.endpoint.hazelcastInstance": {
			"name": "camel.source.endpoint.hazelcastInstance",
			"description": "The hazelcast instance reference which can be used for hazelcast endpoint.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.hazelcastInstanceName": {
			"name": "camel.source.endpoint.hazelcastInstanceName",
			"description": "The hazelcast instance reference name which can be used for hazelcast endpoint. If you don't specify the instance reference, camel use the default hazelcast instance from the camel-hazelcast instance.",
			"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, or Camel is allowed to use asynchronous processing (if supported).",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.hazelcast-instance.bridgeErrorHandler": {
			"name": "camel.component.hazelcast-instance.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.hazelcast-instance.autowiredEnabled": {
			"name": "camel.component.hazelcast-instance.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.hazelcast-instance.hazelcastInstance": {
			"name": "camel.component.hazelcast-instance.hazelcastInstance",
			"description": "The hazelcast instance reference which can be used for hazelcast endpoint. If you don't specify the instance reference, camel use the default hazelcast instance from the camel-hazelcast instance.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.component.hazelcast-instance.hazelcastMode": {
			"name": "camel.component.hazelcast-instance.hazelcastMode",
			"description": "The hazelcast mode reference which kind of instance should be used. If you don't specify the mode, then the node mode will be the default.",
			"defaultValue": "\"node\"",
			"priority": "MEDIUM",
			"required": "false"
		}
	}
}