summaryrefslogtreecommitdiffstats
path: root/cps-ncmp-events/src/main/resources/schemas/subscription/ncmp-to-dmi-subscription-event-schema-1.0.0.json
blob: 6e359f8aef6459f6c28e314d5c7a247fadd355c8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
{
  "$schema": "https://json-schema.org/draft/2019-09/schema",
  "$id": "urn:cps:org.onap.cps.ncmp.events:subscription-event-schema:1.0.0",
  "$ref": "#/definitions/SubscriptionEvent",
  "definitions": {
    "SubscriptionEvent": {
      "description": "The payload for subscription event to be forwarded to dmi plugins.",
      "javaType": "org.onap.cps.ncmp.events.avcsubscription1_0_0.ncmp_to_dmi.SubscriptionEvent",
      "properties": {
        "data": {
          "properties": {
            "dataType": {
              "description": "The datatype content.",
              "properties": {
                "dataCategory": {
                  "description": "The category type of the data",
                  "type": "string"
                },
                "dataProvider": {
                  "description": "The provider name of the data",
                  "type": "string"
                },
                "dataspace": {
                  "description": "The dataspace name",
                  "type": "string"
                }
              },
              "required": [
                "dataCategory",
                "dataProvider",
                "dataspace"
              ],
              "type": "object",
              "additionalProperties": false
            },
            "predicates": {
              "description": "Additional values to be added into the subscription",
              "properties": {
                "datastore": {
                  "description": "datastore which is to be used by the subscription",
                  "type": "string"
                },
                "targets": {
                  "description": "CM Handles to be targeted by the subscription",
                  "type": "array",
                  "items": {
                    "$ref": "#/definitions/CmHandle"
                  }
                },
                "datastore-xpath-filter": {
                  "description": "filter to be applied to the CM Handles through this event",
                  "type": "string"
                }
              },
              "required": [
                "datastore",
                "targets",
                "datastore-xpath-filter"
              ],
              "type": "object",
              "additionalProperties": false
            },
            "subscription": {
              "description": "The subscription details.",
              "properties": {
                "clientID": {
                  "description": "The clientID",
                  "type": "string"
                },
                "name": {
                  "description": "The name of the subscription",
                  "type": "string"
                },
                "isTagged": {
                  "description": "optional parameter, default is no",
                  "type": "boolean",
                  "default": false
                }
              },
              "required": [
                "clientID",
                "name"
              ],
              "type": "object",
              "additionalProperties": false
            }
          },
          "required": [
            "dataType",
            "predicates",
            "subscription"
          ],
          "type": "object",
          "additionalProperties": false
        }
      },
      "type": "object",
      "additionalProperties": false,
      "required": [
        "data"
      ]
    },
    "CmHandle": {
      "description": "The CM handle information",
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "additional-properties": {
          "existingJavaType": "java.util.Map<String,String>"
        }
      },
      "required": [
        "id",
        "additional-properties"
      ],
      "additionalProperties": false
    }
  }
}