diff --git a/component.json b/component.json new file mode 100644 index 0000000..c8336e9 --- /dev/null +++ b/component.json @@ -0,0 +1,315 @@ +{ + "component": { + "kind": "component", + "name": "tahu-host", + "title": "Tahu Host Application", + "description": "Sparkplug B Host Application support over MQTT using Eclipse Tahu", + "deprecated": false, + "firstVersion": "4.8.0", + "label": "messaging,iot,monitoring", + "javaType": "org.apache.camel.component.tahu.TahuHostComponent", + "supportLevel": "Stable", + "groupId": "org.apache.camel", + "artifactId": "camel-tahu", + "version": "4.10.2", + "scheme": "tahu-host", + "extendsScheme": "", + "syntax": "tahu-host:hostId", + "async": false, + "api": false, + "consumerOnly": true, + "producerOnly": false, + "lenientProperties": false, + "browsable": false, + "remote": true + }, + "headers": { + "CamelTahuMessageType": { + "index": 0, + "kind": "header", + "displayName": "", + "group": "consumer", + "label": "", + "required": false, + "javaType": "String", + "enum": [ + "NBIRTH", + "NDATA", + "NDEATH", + "DBIRTH", + "DDATA", + "DDEATH" + ], + "deprecated": false, + "deprecationNote": "", + "autowired": false, + "secret": false, + "description": "The Sparkplug message type of the message", + "constantName": "org.apache.camel.component.tahu.TahuConstants#MESSAGE_TYPE" + }, + "CamelTahuEdgeNodeDescriptor": { + "index": 1, + "kind": "header", + "displayName": "", + "group": "consumer", + "label": "", + "required": false, + "javaType": "String", + "deprecated": false, + "deprecationNote": "", + "autowired": false, + "secret": false, + "description": "The Sparkplug edge node descriptor string source of a message or metric", + "constantName": "org.apache.camel.component.tahu.TahuConstants#EDGE_NODE_DESCRIPTOR" + }, + "CamelTahuMessageTimestamp": { + "index": 2, + "kind": "header", + "displayName": "", + "group": "consumer", + "label": "", + "required": false, + "javaType": "Long", + "deprecated": false, + "deprecationNote": "", + "autowired": false, + "secret": false, + "description": "The timestamp of a Sparkplug message", + "constantName": "org.apache.camel.component.tahu.TahuConstants#MESSAGE_TIMESTAMP" + }, + "CamelTahuMessageUUID": { + "index": 3, + "kind": "header", + "displayName": "", + "group": "consumer", + "label": "", + "required": false, + "javaType": "java.util.UUID", + "deprecated": false, + "deprecationNote": "", + "autowired": false, + "secret": false, + "description": "The UUID of a Sparkplug message", + "constantName": "org.apache.camel.component.tahu.TahuConstants#MESSAGE_UUID" + }, + "CamelTahuMessageSequenceNumber": { + "index": 4, + "kind": "header", + "displayName": "", + "group": "consumer", + "label": "", + "required": false, + "javaType": "Long", + "deprecated": false, + "deprecationNote": "", + "autowired": false, + "secret": false, + "description": "The sequence number of a Sparkplug message", + "constantName": "org.apache.camel.component.tahu.TahuConstants#MESSAGE_SEQUENCE_NUMBER" + } + }, + "properties": { + "hostId": { + "index": 0, + "kind": "path", + "displayName": "Host Id", + "group": "consumer", + "label": "consumer", + "required": true, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "deprecationNote": "", + "autowired": false, + "secret": false, + "description": "ID for the host application" + }, + "checkClientIdLength": { + "index": 1, + "kind": "parameter", + "displayName": "Check Client Id Length", + "group": "common", + "label": "common", + "required": false, + "type": "boolean", + "javaType": "boolean", + "deprecated": false, + "deprecationNote": "", + "autowired": false, + "secret": false, + "defaultValue": false, + "configurationClass": "org.apache.camel.component.tahu.TahuConfiguration", + "configurationField": "configuration", + "description": "MQTT client ID length check enabled" + }, + "clientId": { + "index": 2, + "kind": "parameter", + "displayName": "Client Id", + "group": "common", + "label": "common", + "required": true, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "deprecationNote": "", + "autowired": false, + "secret": false, + "configurationClass": "org.apache.camel.component.tahu.TahuConfiguration", + "configurationField": "configuration", + "description": "MQTT client ID to use for all server definitions, rather than specifying the same one for each. Note that if neither the 'clientId' parameter nor an 'MqttClientId' are defined for an MQTT Server, a random MQTT Client ID will be generated automatically, prefaced with 'Camel'" + }, + "keepAliveTimeout": { + "index": 3, + "kind": "parameter", + "displayName": "Keep Alive Timeout", + "group": "common", + "label": "common", + "required": false, + "type": "integer", + "javaType": "int", + "deprecated": false, + "deprecationNote": "", + "autowired": false, + "secret": false, + "defaultValue": 30, + "configurationClass": "org.apache.camel.component.tahu.TahuConfiguration", + "configurationField": "configuration", + "description": "MQTT connection keep alive timeout, in seconds" + }, + "rebirthDebounceDelay": { + "index": 4, + "kind": "parameter", + "displayName": "Rebirth Debounce Delay", + "group": "common", + "label": "common", + "required": false, + "type": "integer", + "javaType": "long", + "deprecated": false, + "deprecationNote": "", + "autowired": false, + "secret": false, + "defaultValue": 5000, + "configurationClass": "org.apache.camel.component.tahu.TahuConfiguration", + "configurationField": "configuration", + "description": "Delay before recurring node rebirth messages will be sent" + }, + "servers": { + "index": 5, + "kind": "parameter", + "displayName": "Servers", + "group": "common", + "label": "common", + "required": true, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "deprecationNote": "", + "autowired": false, + "secret": false, + "configurationClass": "org.apache.camel.component.tahu.TahuConfiguration", + "configurationField": "configuration", + "description": "MQTT server definitions, given with the following syntax in a comma-separated list: MqttServerName:(MqttClientId:)(tcp/ssl)://hostname(:port),..." + }, + "bridgeErrorHandler": { + "index": 6, + "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": 7, + "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": 8, + "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." + }, + "password": { + "index": 9, + "kind": "parameter", + "displayName": "Password", + "group": "security", + "label": "security", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "deprecationNote": "", + "autowired": false, + "secret": true, + "configurationClass": "org.apache.camel.component.tahu.TahuConfiguration", + "configurationField": "configuration", + "description": "Password for MQTT server authentication" + }, + "sslContextParameters": { + "index": 10, + "kind": "parameter", + "displayName": "Ssl Context Parameters", + "group": "security", + "label": "security", + "required": false, + "type": "object", + "javaType": "org.apache.camel.support.jsse.SSLContextParameters", + "deprecated": false, + "deprecationNote": "", + "autowired": false, + "secret": false, + "configurationClass": "org.apache.camel.component.tahu.TahuConfiguration", + "configurationField": "configuration", + "description": "SSL configuration for MQTT server connections" + }, + "username": { + "index": 11, + "kind": "parameter", + "displayName": "Username", + "group": "security", + "label": "security", + "required": false, + "type": "string", + "javaType": "java.lang.String", + "deprecated": false, + "deprecationNote": "", + "autowired": false, + "secret": true, + "configurationClass": "org.apache.camel.component.tahu.TahuConfiguration", + "configurationField": "configuration", + "description": "Username for MQTT server authentication" + } + } +} \ No newline at end of file