{
	"connector": {
		"class": "org.apache.camel.kafkaconnector.jcr.CamelJcrSourceConnector",
		"artifactId": "camel-jcr-kafka-connector",
		"groupId": "org.apache.camel.kafkaconnector",
		"id": "camel-jcr-source",
		"type": "source",
		"version": "0.7.0",
		"description": "Read and write nodes to\/from a JCR compliant content repository."
	},
	"properties": {
		"camel.source.path.host": {
			"name": "camel.source.path.host",
			"description": "Name of the javax.jcr.Repository to lookup from the Camel registry to be used.",
			"priority": "HIGH",
			"required": "true"
		},
		"camel.source.path.base": {
			"name": "camel.source.path.base",
			"description": "Get the base node when accessing the repository",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.deep": {
			"name": "camel.source.endpoint.deep",
			"description": "When isDeep is true, events whose associated parent node is at absPath or within its subgraph are received.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.eventTypes": {
			"name": "camel.source.endpoint.eventTypes",
			"description": "eventTypes (a combination of one or more event types encoded as a bit mask value such as javax.jcr.observation.Event.NODE_ADDED, javax.jcr.observation.Event.NODE_REMOVED, etc.).",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.nodeTypeNames": {
			"name": "camel.source.endpoint.nodeTypeNames",
			"description": "When a comma separated nodeTypeName list string is set, only events whose associated parent node has one of the node types (or a subtype of one of the node types) in this list will be received.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.noLocal": {
			"name": "camel.source.endpoint.noLocal",
			"description": "If noLocal is true, then events generated by the session through which the listener was registered are ignored. Otherwise, they are not ignored.",
			"defaultValue": "false",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.password": {
			"name": "camel.source.endpoint.password",
			"description": "Password for login",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.sessionLiveCheckInterval": {
			"name": "camel.source.endpoint.sessionLiveCheckInterval",
			"description": "Interval in milliseconds to wait before each session live checking The default value is 60000 ms.",
			"defaultValue": "60000L",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.sessionLiveCheckIntervalOnStart": {
			"name": "camel.source.endpoint.sessionLiveCheckIntervalOnStart",
			"description": "Interval in milliseconds to wait before the first session live checking. The default value is 3000 ms.",
			"defaultValue": "3000L",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.username": {
			"name": "camel.source.endpoint.username",
			"description": "Username for login",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.uuids": {
			"name": "camel.source.endpoint.uuids",
			"description": "When a comma separated uuid list string is set, only events whose associated parent node has one of the identifiers in the comma separated uuid list will be received.",
			"priority": "MEDIUM",
			"required": "false"
		},
		"camel.source.endpoint.workspaceName": {
			"name": "camel.source.endpoint.workspaceName",
			"description": "The workspace to access. If it's not specified then the default one will be used",
			"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.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.jcr.bridgeErrorHandler": {
			"name": "camel.component.jcr.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.jcr.autowiredEnabled": {
			"name": "camel.component.jcr.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"
		}
	}
}