NCMP : forward bulk response messages to client topic

Issue-ID: CPS-1557
Signed-off-by: raviteja.karumuri <raviteja.karumuri@est.tech>
Change-Id: I0ea040e98987f992f46105afea0a171c4031d64f
diff --git a/cps-ncmp-events/src/main/resources/schemas/async/batch-event-headers-1.0.0.json b/cps-ncmp-events/src/main/resources/schemas/async/batch-event-headers-1.0.0.json
new file mode 100644
index 0000000..bbcadcd
--- /dev/null
+++ b/cps-ncmp-events/src/main/resources/schemas/async/batch-event-headers-1.0.0.json
@@ -0,0 +1,55 @@
+{
+  "$schema": "https://json-schema.org/draft/2019-09/schema",
+  "$id": "urn:cps:org.onap.cps.ncmp.events.async:batch-event-headers:1.0.0",
+  "$ref": "#/definitions/BatchEventHeaders",
+  "definitions": {
+    "BatchEventHeaders": {
+      "description": "The header information of the Batch event.",
+      "type": "object",
+      "javaType" : "org.onap.cps.ncmp.events.async.BatchEventHeadersV1",
+      "properties": {
+        "eventId": {
+          "description": "The unique id for identifying the event.",
+          "type": "string"
+        },
+        "eventCorrelationId": {
+          "description": "The request id received by NCMP as an acknowledgement.",
+          "type": "string"
+        },
+        "eventTime": {
+          "description": "The time of the event. It should be in RFC format ('yyyy-MM-dd'T'HH:mm:ss.SSSZ').",
+          "type": "string"
+        },
+        "eventTarget": {
+          "description": "The destination topic to forward the consumed event.",
+          "type": "string"
+        },
+        "eventSource": {
+          "description": "The source of the event.",
+          "type": "string"
+        },
+        "eventType": {
+          "description": "The type of the Batch event.",
+          "type": "string"
+        },
+        "eventSchema": {
+          "description": "The schema of the Batch event payload.",
+          "type": "string"
+        },
+        "eventSchemaVersion": {
+          "description": "The schema version of the Batch event payload.",
+          "type": "string"
+        }
+      },
+      "required": [
+        "eventId",
+        "eventCorrelationId",
+        "eventTarget",
+        "eventType",
+        "eventSchema",
+        "eventSchemaVersion"
+      ],
+      "additionalProperties": false
+    }
+  }
+}
\ No newline at end of file
diff --git a/cps-ncmp-events/src/main/resources/schemas/async/batch-event-schema-1.0.0.json b/cps-ncmp-events/src/main/resources/schemas/async/batch-event-schema-1.0.0.json
new file mode 100644
index 0000000..da836ff
--- /dev/null
+++ b/cps-ncmp-events/src/main/resources/schemas/async/batch-event-schema-1.0.0.json
@@ -0,0 +1,67 @@
+{
+  "$schema": "https://json-schema.org/draft/2019-09/schema",
+  "$id": "urn:cps:org.onap.cps.ncmp.events.async:batch-event-schema:1.0.0",
+  "$ref": "#/definitions/BatchDataResponseEvent",
+  "definitions": {
+    "BatchDataResponseEvent": {
+      "description": "The payload of batch event.",
+      "type": "object",
+      "javaType" : "org.onap.cps.ncmp.events.async.BatchDataResponseEventV1",
+      "properties": {
+        "event": {
+          "description": "The payload content of the requested data.",
+          "type": "object",
+          "javaType" : "org.onap.cps.ncmp.events.async.BatchDataEvent",
+          "properties": {
+            "batch-responses": {
+              "description": "An array of batch responses which contains both success and failure",
+              "type": "array",
+              "items": {
+                "type": "object",
+                "properties": {
+                  "operationId": {
+                    "description": "Used to distinguish multiple operations using same cmhandleId",
+                    "type": "string"
+                  },
+                  "ids": {
+                    "description": "Id's of the cmhandles",
+                    "type": "array"
+                  },
+                  "status-code": {
+                    "description": "which says success or failure (0-99) are for success and (100-199) are for failure",
+                    "type": "string"
+                  },
+                  "status-message": {
+                    "description": "Human readable message, Which says what the response has",
+                    "type": "string"
+                  },
+                  "data": {
+                    "description": "Contains the requested data response.",
+                    "type": "object",
+                    "existingJavaType": "java.lang.Object",
+                    "additionalProperties": false
+                  }
+                },
+                "required": [
+                  "operationId",
+                  "ids",
+                  "status-code",
+                  "status-message"
+                ],
+                "additionalProperties": false
+              }
+            }
+          },
+          "required": [
+            "batch-responses"
+          ],
+          "additionalProperties": false
+        }
+      },
+      "required": [
+        "event"
+      ],
+      "additionalProperties": false
+    }
+  }
+}
\ No newline at end of file