summaryrefslogtreecommitdiffstats
path: root/mod/component-json-schemas/dcae-cli-v3-draft/dmaap-schema.json
diff options
context:
space:
mode:
authorMichael Hwang <mhwang@research.att.com>2019-11-12 16:04:20 -0500
committerMichael Hwang <mhwang@research.att.com>2019-12-13 16:46:11 -0500
commitc698e66797bad69b4c77b26b487bf8322989beb0 (patch)
treee40a8449728768107e4ab4c1ac506af13230a580 /mod/component-json-schemas/dcae-cli-v3-draft/dmaap-schema.json
parent9cb529e42f5625f2fa802e21919b10f814a89ca7 (diff)
Copy dcae-cli->onboardingapi, copy component specs
Issue-ID: DCAEGEN2-1860 Change-Id: I4805398c76479fad51cbdb74470ccc8f706ce9dc Signed-off-by: Michael Hwang <mhwang@research.att.com>
Diffstat (limited to 'mod/component-json-schemas/dcae-cli-v3-draft/dmaap-schema.json')
-rw-r--r--mod/component-json-schemas/dcae-cli-v3-draft/dmaap-schema.json149
1 files changed, 149 insertions, 0 deletions
diff --git a/mod/component-json-schemas/dcae-cli-v3-draft/dmaap-schema.json b/mod/component-json-schemas/dcae-cli-v3-draft/dmaap-schema.json
new file mode 100644
index 0000000..1c36972
--- /dev/null
+++ b/mod/component-json-schemas/dcae-cli-v3-draft/dmaap-schema.json
@@ -0,0 +1,149 @@
+{
+ "$id": "http://onap.org/dcaegen2/platform/dmaap",
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "title": "Schema for dmaap inputs",
+ "type": "object",
+
+ "oneOf": [
+ { "$ref": "#/definitions/message_router" },
+ { "$ref": "#/definitions/data_router" },
+ { "$ref": "#/definitions/kafka" }
+ ],
+
+ "definitions": {
+
+ "message_router": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "type": "string",
+ "enum": ["message_router"]
+ },
+ "aaf_credentials": {
+ "$ref": "#/definitions/aaf_credentials"
+ },
+ "aaf_username": {
+ "description": "Used for backward compatibility. Use aaf_credentials object in new code.",
+ "type": "string"
+ },
+ "aaf_password": {
+ "description": "Used for backward compatibility. Use aaf_credentials object in new code.",
+ "type": "string"
+ },
+ "dmaap_info": {
+ "$ref":"#/definitions/dmaap_info"
+ }
+ },
+ "required": [
+ "type",
+ "dmaap_info"
+ ],
+ "additionalProperties": false
+ },
+
+ "data_router": {
+ "type": "object",
+ "$comment": "This is currently not specified in schema. However, it is specified in RTD documentation. TODO: specify schema for DMaaP DR",
+ "properties": {
+ "type": {
+ "type": "string",
+ "enum": ["data_router"]
+ }
+ },
+ "required": [
+ "type"
+ ],
+ "additionalProperties": true
+ },
+
+ "dmaap_info": {
+ "type": "object",
+ "properties": {
+ "client_role": {
+ "type": "string"
+ },
+ "client_id": {
+ "type": "string"
+ },
+ "location": {
+ "type": "string"
+ },
+ "topic_url": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "topic_url"
+ ],
+ "additionalProperties": false
+ },
+
+ "kafka": {
+ "type": "object",
+ "properties": {
+ "type": {
+ "type": "string",
+ "enum": ["kafka"]
+ },
+ "aaf_credentials": {
+ "$ref": "#/definitions/aaf_credentials"
+ },
+ "kafka_info": {
+ "$ref": "#/definitions/kafka_info"
+ }
+ },
+ "required": [
+ "type",
+ "kafka_info"
+ ],
+ "additionalProperties": false
+ },
+
+ "kafka_info": {
+ "type": "object",
+ "description": "Defines Kafka-specific topid properties",
+ "properties": {
+ "client_role": {
+ "type": "string"
+ },
+ "client_id": {
+ "type": "string"
+ },
+ "bootstrap_servers": {
+ "description": "Comma separated list of Kafka bootstrap servers as defined in Kafka documentation",
+ "type": "string"
+ },
+ "topic_name": {
+ "description": "Name of the topic",
+ "type": "string"
+ },
+ "consumer_group_id": {
+ "description": "Can be specifed only for subscribers. More details in Kafka documentation on group.id property",
+ "type": "string"
+ },
+ "max_payload_size_bytes": {
+ "description": "Maximum payload size in bytes. Can be used for validation or creating Kafka client properties.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "bootstrap_servers",
+ "topic_name"
+ ],
+ "additionalProperties": false
+ },
+
+ "aaf_credentials": {
+ "type": "object",
+ "properties": {
+ "username": {
+ "type": "string"
+ },
+ "password": {
+ "type": "string"
+ }
+ },
+ "additionalProperties": false
+ }
+ }
+}