From 52950bd82f680261458c082bd6d592fb4a14de12 Mon Sep 17 00:00:00 2001 From: JosephKeenan Date: Tue, 27 Sep 2022 16:12:30 +0100 Subject: [PATCH] Async External Schema and related Read the doc -updated cps-events to include schema and related information for async operations Issue-ID: CPS-1166 Signed-off-by: JosephKeenan Change-Id: I1d40b5dd650663c1089119a60304b0490dedb8e1 --- docs/cps-events.rst | 39 ++++ ...cmp-async-request-response-event-schema-v1.json | 197 +++++++++++++++++++++ 2 files changed, 236 insertions(+) create mode 100644 docs/schemas/ncmp-async-request-response-event-schema-v1.json diff --git a/docs/cps-events.rst b/docs/cps-events.rst index dce1a30fe..df37de363 100644 --- a/docs/cps-events.rst +++ b/docs/cps-events.rst @@ -11,6 +11,45 @@ CPS Events CPS-NCMP ******** +Async events are triggered when a valid topic has been detected in a passthrough operation. + +:download:`NCMP request response event schema ` + +Event header +^^^^^^^^^^^^^ + +.. code-block:: json + + { + "eventId" : "001", + "eventCorrelationId" : "cps-001", + "eventTime" : "2022-09-28T12:24:21.003+0000", + "eventTarget" : "test-topic", + "eventType" : "org.onap.cps.ncmp.event.model.DmiAsyncRequestResponseEvent", + "eventSchema" : "urn:cps:org.onap.cps.ncmp.event.model.DmiAsyncRequestResponseEvent:v1", + "forwarded-Event" : { ... } + } + +Forwarded-Event Payload +^^^^^^^^^^^^^^^^^^^^^^^ + +.. code-block:: json + + "Forwarded-Event": { + "eventId" : "002", + "eventCorrelationId" : "cps-001", + "eventTime" : "2022-09-28T12:24:18.340+0000", + "eventTarget" : "test-topic", + "eventType" : "org.onap.cps.ncmp.event.model.DmiAsyncRequestResponseEvent", + "eventSchema" : "urn:cps:org.onap.cps.ncmp.event.model.DmiAsyncRequestResponseEvent:v1", + "eventSource" : "org.onap.cps.ncmp.dmi", + "response-data-schema" : "urn:cps:org.onap.cps.ncmp.event.model.DmiAsyncRequestResponseEvent:v1", + "response-status" : "OK", + "response-code" : "200", + "response-data" : { ... } + } + + Lifecycle Management (LCM) Event ================================ diff --git a/docs/schemas/ncmp-async-request-response-event-schema-v1.json b/docs/schemas/ncmp-async-request-response-event-schema-v1.json new file mode 100644 index 000000000..51c2cf4d4 --- /dev/null +++ b/docs/schemas/ncmp-async-request-response-event-schema-v1.json @@ -0,0 +1,197 @@ +{ + "$schema": "https://json-schema.org/draft/2019-09/schema", + "$id": "urn:cps:org.onap.cps.ncmp.events:ncmp-async-request-response-event-schema:v1", + "$ref": "#/definitions/NcmpAsyncRequestResponseEvent", + "definitions": { + "NcmpAsyncRequestResponseEvent": { + "description": "The payload for CPS async request response event.", + "type": "object", + "properties": { + "eventId": { + "description": "The unique id identifying the event generated by DMI.", + "type": "string" + }, + "eventCorrelationId": { + "description": "The request id passed by NCMP.", + "type": "string" + }, + "eventTime": { + "description": "The time of the event. The expected format is 'yyyy-MM-dd'T'HH:mm:ss.SSSZ'.", + "type": "string" + }, + "eventTarget": { + "description": "The target of the event.", + "type": "string" + }, + "eventType": { + "description": "The type of the event.", + "type": "string" + }, + "eventSchema": { + "description": "The event schema for async request response events.", + "type": "string" + }, + "eventSchemaVersion": { + "description": "The event schema version for async request response events.", + "type": "string" + }, + "event": { + "$ref": "#/definitions/Event" + }, + "forwardedEvent": { + "$ref": "#/definitions/Forwarded-Event" + } + }, + "required": [ + "eventId", + "eventCorrelationId", + "eventTime", + "eventTarget", + "eventType", + "eventSchema", + "eventSchemaVersion" + ] + }, + "Forwarded-Event": { + "description": "The event content.", + "type": "object", + "properties": { + "eventId": { + "description": "The unique id identifying the event generated by DMI.", + "type": "string" + }, + "eventCorrelationId": { + "description": "The request id passed by NCMP.", + "type": "string" + }, + "eventTime": { + "description": "The time of the event. The expected format is 'yyyy-MM-dd'T'HH:mm:ss.SSSZ'.", + "type": "string" + }, + "eventTarget": { + "description": "The target of the event.", + "type": "string" + }, + "eventType": { + "description": "The type of the event.", + "type": "string" + }, + "eventSchema": { + "description": "The event schema for async request response events.", + "type": "string" + }, + "eventSchemaVersion": { + "description": "The event schema version for async request response events.", + "type": "string" + }, + "eventSource": { + "description": "The source of the event.", + "type": "string" + }, + "response-data-schema": { + "description": "The received schema of response data", + "type": "string" + }, + "response-status": { + "description": "The received status of the response.", + "type": "string" + }, + "response-code": { + "description": "The received code of the response.", + "type": "string" + }, + "forwardedEventData": { + "description": "The data payload", + "type": "object", + "properties": { + "forwardedEventPayload": { + "type": "object" + } + } + }, + "required": [ + "eventId", + "eventCorrelationId", + "eventTime", + "eventTarget", + "eventType", + "eventSchema", + "eventSchemaVersion", + "eventSource", + "response-data-schema", + "response-status", + "response-code", + "forwardedEventData" + ] + } + }, + "Event": { + "description": "The event content.", + "type": "object", + "properties": { + "eventId": { + "description": "The unique id identifying the event generated by DMI", + "type": "string" + }, + "eventCorrelationId": { + "description": "The request id passed by NCMP.", + "type": "string" + }, + "eventTime": { + "description": "The time of the event. The expected format is 'yyyy-MM-dd'T'HH:mm:ss.SSSZ'.", + "type": "string" + }, + "eventTarget": { + "description": "The target of the event.", + "type": "string" + }, + "eventType": { + "description": "The type of the event.", + "type": "string" + }, + "eventSchema": { + "description": "The event schema for async request response events.", + "type": "string" + }, + "eventSource": { + "description": "The source of the event.", + "type": "string" + }, + "response-data-schema": { + "description": "The received schema of response data", + "type": "string" + }, + "response-status": { + "description": "The received status of the response.", + "type": "string" + }, + "response-code": { + "description": "The received code of the response.", + "type": "string" + }, + "response-data": { + "description": "The data payload", + "type": "object", + "properties": { + "payload": { + "type": "object" + } + } + }, + "required": [ + "eventId", + "eventCorrelationId", + "eventTarget", + "eventTime", + "eventType", + "eventSchema", + "eventSource", + "response-data-schema", + "response-status", + "response-code", + "event-data" + ] + } + } + } +} \ No newline at end of file -- 2.16.6