{
  "component": {
    "kind": "component",
    "name": "ignite-events",
    "title": "Ignite Events",
    "description": "Receive events from an Ignite cluster by creating a local event listener.",
    "deprecated": false,
    "firstVersion": "2.17.0",
    "label": "messaging,cache,clustering",
    "javaType": "org.apache.camel.component.ignite.events.IgniteEventsComponent",
    "supportLevel": "Stable",
    "groupId": "org.apache.camel.springboot",
    "artifactId": "camel-ignite-starter",
    "version": "4.6.0-SNAPSHOT",
    "scheme": "ignite-events",
    "extendsScheme": "",
    "syntax": "ignite-events:endpointId",
    "async": false,
    "api": false,
    "consumerOnly": true,
    "producerOnly": false,
    "lenientProperties": false,
    "remote": true
  },
  "componentProperties": {
    "bridgeErrorHandler": { "index": 0, "kind": "property", "displayName": "Bridge Error Handler", "group": "consumer", "label": "consumer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions (if possible) occurred while the Camel consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. Important: This is only possible if the 3rd party component allows Camel to be alerted if an exception was thrown. Some components handle this internally only, and therefore bridgeErrorHandler is not possible. In other situations we may improve the Camel component to hook into the 3rd party component and make this possible for future releases. 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." },
    "configurationResource": { "index": 1, "kind": "property", "displayName": "Configuration Resource", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "java.lang.Object", "deprecated": false, "autowired": false, "secret": false, "description": "The resource from where to load the configuration. It can be a: URL, String or InputStream type." },
    "ignite": { "index": 2, "kind": "property", "displayName": "Ignite", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "org.apache.ignite.Ignite", "deprecated": false, "autowired": false, "secret": false, "description": "To use an existing Ignite instance." },
    "igniteConfiguration": { "index": 3, "kind": "property", "displayName": "Ignite Configuration", "group": "consumer", "label": "", "required": false, "type": "object", "javaType": "org.apache.ignite.configuration.IgniteConfiguration", "deprecated": false, "autowired": false, "secret": false, "description": "Allows the user to set a programmatic ignite configuration." },
    "autowiredEnabled": { "index": 4, "kind": "property", "displayName": "Autowired Enabled", "group": "advanced", "label": "advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "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." }
  },
  "properties": {
    "endpointId": { "index": 0, "kind": "path", "displayName": "Endpoint Id", "group": "consumer", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "description": "The endpoint ID (not used)." },
    "clusterGroupExpression": { "index": 1, "kind": "parameter", "displayName": "Cluster Group Expression", "group": "consumer", "label": "consumer", "required": false, "type": "object", "javaType": "org.apache.camel.component.ignite.ClusterGroupExpression", "deprecated": false, "autowired": false, "secret": false, "description": "The cluster group expression." },
    "events": { "index": 2, "kind": "parameter", "displayName": "Events", "group": "consumer", "label": "consumer", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "autowired": false, "secret": false, "defaultValue": "EVTS_ALL", "description": "The event types to subscribe to as a comma-separated string of event constants as defined in EventType. For example: EVT_CACHE_ENTRY_CREATED,EVT_CACHE_OBJECT_REMOVED,EVT_IGFS_DIR_CREATED." },
    "propagateIncomingBodyIfNoReturnValue": { "index": 3, "kind": "parameter", "displayName": "Propagate Incoming Body If No Return Value", "group": "consumer", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": true, "description": "Sets whether to propagate the incoming body if the return type of the underlying Ignite operation is void." },
    "treatCollectionsAsCacheObjects": { "index": 4, "kind": "parameter", "displayName": "Treat Collections As Cache Objects", "group": "consumer", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Sets whether to treat Collections as cache objects or as Collections of items to insert\/update\/compute, etc." },
    "bridgeErrorHandler": { "index": 5, "kind": "parameter", "displayName": "Bridge Error Handler", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "autowired": false, "secret": false, "defaultValue": false, "description": "Allows for bridging the consumer to the Camel routing Error Handler, which mean any exceptions (if possible) occurred while the Camel consumer is trying to pickup incoming messages, or the likes, will now be processed as a message and handled by the routing Error Handler. Important: This is only possible if the 3rd party component allows Camel to be alerted if an exception was thrown. Some components handle this internally only, and therefore bridgeErrorHandler is not possible. In other situations we may improve the Camel component to hook into the 3rd party component and make this possible for future releases. 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." },
    "exceptionHandler": { "index": 6, "kind": "parameter", "displayName": "Exception Handler", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "object", "javaType": "org.apache.camel.spi.ExceptionHandler", "optionalPrefix": "consumer.", "deprecated": false, "autowired": false, "secret": false, "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." },
    "exchangePattern": { "index": 7, "kind": "parameter", "displayName": "Exchange Pattern", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "object", "javaType": "org.apache.camel.ExchangePattern", "enum": [ "InOnly", "InOut" ], "deprecated": false, "autowired": false, "secret": false, "description": "Sets the exchange pattern when the consumer creates an exchange." }
  }
}
