summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cps-ri/src/main/resources/changelog/changelog-master.yaml2
-rw-r--r--cps-ri/src/main/resources/changelog/db/changes/23-yang-resource-index.yaml31
-rw-r--r--docs/cm-notification-subscriptions.rst20
-rw-r--r--docs/schemas/dmidataavc/avc-event-schema-1.0.0.json88
4 files changed, 137 insertions, 4 deletions
diff --git a/cps-ri/src/main/resources/changelog/changelog-master.yaml b/cps-ri/src/main/resources/changelog/changelog-master.yaml
index 5909ef149b..2011655c37 100644
--- a/cps-ri/src/main/resources/changelog/changelog-master.yaml
+++ b/cps-ri/src/main/resources/changelog/changelog-master.yaml
@@ -20,3 +20,5 @@ databaseChangeLog:
file: changelog/db/changes/01-createCPSTables.yaml
- include:
file: changelog/db/changes/22-fragment-id-sequence.yaml
+ - include:
+ file: changelog/db/changes/23-yang-resource-index.yaml
diff --git a/cps-ri/src/main/resources/changelog/db/changes/23-yang-resource-index.yaml b/cps-ri/src/main/resources/changelog/db/changes/23-yang-resource-index.yaml
new file mode 100644
index 0000000000..0dff471dc1
--- /dev/null
+++ b/cps-ri/src/main/resources/changelog/db/changes/23-yang-resource-index.yaml
@@ -0,0 +1,31 @@
+# ============LICENSE_START=======================================================
+# Copyright (C) 2024 Nordix Foundation.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# SPDX-License-Identifier: Apache-2.0
+# ============LICENSE_END=========================================================
+
+databaseChangeLog:
+ - changeSet:
+ author: cps
+ id: 23
+ changes:
+ - createIndex:
+ columns:
+ - column:
+ name: module_name
+ - column:
+ name: revision
+ indexName: IDX_YANG_RESOURCE_MODULE_NAME_AND_REVISION
+ tableName: yang_resource
diff --git a/docs/cm-notification-subscriptions.rst b/docs/cm-notification-subscriptions.rst
index 14e871addc..e1d1c2f800 100644
--- a/docs/cm-notification-subscriptions.rst
+++ b/docs/cm-notification-subscriptions.rst
@@ -6,14 +6,14 @@
.. _cmNotificationSubscriptions:
-CM Data Subscriptions
-#####################
+CM Data Subscriptions and Notifications
+#######################################
.. toctree::
:maxdepth: 1
-Introduction
-============
+CM Data Subscriptions
+=====================
CM Subscriptions are created to subscribe to notifications for CM related changes that happened in the network based on predicates.
Predicates can be used to filter on CM Handle (id), Datastore and Xpath.
@@ -44,5 +44,17 @@ The response for the involved subscription participants for the Create and Delet
**Note.** The Cm Subscription feature relies on the DMI Plugin support for applying the subscriptions. This support is currently not implemented in the ONAP DMI Plugin.
+CM Data Notifications
+=====================
+CM Notifications are triggered by any change in the network, provided the client has already set up a CM Subscription to receive such notifications. Once the events are generated, they are processed by NCMP and forwarded to the client in the same format.
+
+**Note.** Currently, CM Notifications are sent regardless of the CM Subscriptions. Notifications controlled by CM Subscription have not yet been delivered.
+
+The CM Notification Event follows the structure outlined in the schema below:
+
+:download:`CM Data Notification Event Schema <schemas/dmidataavc/avc-event-schema-1.0.0.json>`
+
+**Note.** NCMP uses the CM Notification event key from the source topic to forward notifications to the client, ensuring that the order of notifications within a topic partition is maintained during forwarding.
+**Note.** If the notification key from the source topic is null, NCMP cannot guarantee the order of events within a topic partition when forwarding.
diff --git a/docs/schemas/dmidataavc/avc-event-schema-1.0.0.json b/docs/schemas/dmidataavc/avc-event-schema-1.0.0.json
new file mode 100644
index 0000000000..474520d142
--- /dev/null
+++ b/docs/schemas/dmidataavc/avc-event-schema-1.0.0.json
@@ -0,0 +1,88 @@
+{
+ "$schema": "https://json-schema.org/draft/2019-09/schema",
+ "$id": "urn:cps:org.onap.cps.ncmp.events:avc-event-schema:1.0.0",
+ "$ref": "#/definitions/AvcEvent",
+ "definitions": {
+ "Edit": {
+ "additionalProperties": false,
+ "properties": {
+ "edit-id": {
+ "type": "string"
+ },
+ "operation": {
+ "type": "string"
+ },
+ "target": {
+ "type": "string"
+ },
+ "value": {
+ "type": "object",
+ "existingJavaType": "java.lang.Object"
+ }
+ },
+ "required": [
+ "edit-id",
+ "operation",
+ "target"
+ ]
+ },
+ "AvcEvent": {
+ "description": "The payload for AVC event.",
+ "type": "object",
+ "javaType": "org.onap.cps.ncmp.events.avc1_0_0.AvcEvent",
+ "properties": {
+ "data": {
+ "description": "The AVC event content compliant with RFC8641 format",
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "push-change-update": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "datastore-changes": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "ietf-yang-patch:yang-patch": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "patch-id": {
+ "type": "string"
+ },
+ "edit": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/Edit"
+ }
+ }
+ },
+ "required": [
+ "patch-id",
+ "edit"
+ ]
+ }
+ },
+ "required": [
+ "ietf-yang-patch:yang-patch"
+ ]
+ }
+ },
+ "required": [
+ "datastore-changes"
+ ]
+ }
+ },
+ "required": [
+ "push-change-update"
+ ]
+ }
+ },
+ "required": [
+ "data"
+ ],
+ "additionalProperties": false
+ }
+ }
+} \ No newline at end of file