summaryrefslogtreecommitdiffstats
path: root/cps-ncmp-events/src/main/resources/schemas/avc-subscription-event-v1.json
blob: feff48c36a3d1a6bd263ceb99ed88a2d488307d3 (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
{
  "$schema": "https://json-schema.org/draft/2019-09/schema",
  "$id": "urn:cps:org.onap.cps.ncmp.events:avc-subscription-event:v1",
  "$ref": "#/definitions/SubscriptionEvent",
  "definitions": {
    "SubscriptionEvent": {
      "description": "The payload for avc subscription event.",
      "type": "object",
      "properties": {
        "version": {
          "description": "The event type version",
          "type": "string"
        },
        "eventType": {
          "description": "The event type",
          "type": "string",
          "enum": ["CREATE"]
        },
        "event": {
          "$ref": "#/definitions/event"
        }
      },
      "required": [
        "version",
        "eventContent"
      ],
      "additionalProperties": false
    },
    "event": {
      "description": "The event content.",
      "type": "object",
      "javaType": "InnerSubscriptionEvent",
      "properties": {
        "subscription": {
          "description": "The subscription details.",
          "type": "object",
          "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"
          ]
        },
        "dataType": {
          "description": "The datatype content.",
          "type": "object",
          "properties": {
            "dataspace": {
              "description": "The dataspace name",
              "type": "string"
            },
            "dataCategory": {
              "description": "The category type of the data",
              "type": "string"
            },
            "dataProvider": {
              "description": "The provider name of the data",
              "type": "string"
            },
            "schemaName": {
              "description": "The name of the schema",
              "type": "string"
            },
            "schemaVersion": {
              "description": "The version of the schema",
              "type": "string"
            }
          }
        },
        "required": [
          "dataspace",
          "dataCategory",
          "dataProvider",
          "schemaName",
          "schemaVersion"
        ],
        "predicates": {
          "description": "Additional values to be added into the subscription",
          "type" : "object",
          "properties": {
            "targets": {
              "description": "CM Handles to be targeted by the subscription",
              "type" : "array"
            },
            "datastore": {
              "description": "datastore which is to be used by the subscription",
              "type": "string"
            },
            "xpath-filter": {
              "description": "filter to be applied to the CM Handles through this event",
              "type": "string"
            }
          },
          "required": ["datastore"]
        }
      }
    },
    "required": [
        "subscription",
        "dataType"
      ]
    }
}