From 900261c1935dba87179d2e4aa36cede4826186ca Mon Sep 17 00:00:00 2001 From: "halil.cakal" Date: Mon, 8 May 2023 14:18:26 +0100 Subject: Subscription Create Event Outcome Kafka Part - Add subscription event outcome schema with java type for pojos - Add subscription event outcome json for testing - Add mapper to convert subscription response to event outcome - Add a bean to handle subscription response outcome tasks - Change response consumer to publish outcome for client app - Change response timeout task to publish outcome for client app - Change subscription persistance to read datanodes - Add helper to extract cm handle to status mapping from data nodes event - Fix code smells Issue-ID: CPS-1507 Change-Id: I70195073490f456f014e53c1f59d1b6761d18cd4 Signed-off-by: halil.cakal --- .../schemas/avc-subscription-event-outcome-v1.json | 81 ++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 cps-ncmp-events/src/main/resources/schemas/avc-subscription-event-outcome-v1.json (limited to 'cps-ncmp-events/src') diff --git a/cps-ncmp-events/src/main/resources/schemas/avc-subscription-event-outcome-v1.json b/cps-ncmp-events/src/main/resources/schemas/avc-subscription-event-outcome-v1.json new file mode 100644 index 0000000000..34970ac1c3 --- /dev/null +++ b/cps-ncmp-events/src/main/resources/schemas/avc-subscription-event-outcome-v1.json @@ -0,0 +1,81 @@ +{ + "$schema": "https://json-schema.org/draft/2019-09/schema", + "$id": "urn:cps:org.onap.cps.ncmp.events:avc-subscription-event-outcome:v1", + "$ref": "#/definitions/SubscriptionEventOutcome", + "definitions": { + "SubscriptionEventOutcome": { + "description": "The payload for avc subscription event outcome message.", + "type": "object", + "javaType" : "org.onap.cps.ncmp.events.avc.subscription.v1.SubscriptionEventOutcome", + "properties": { + "version": { + "description": "The outcome event type version", + "type": "string" + }, + "eventType": { + "description": "The event type", + "type": "string", + "enum": [ + "COMPLETE_OUTCOME", + "PARTIAL_OUTCOME" + ] + }, + "event": { + "$ref": "#/definitions/event" + } + }, + "required": [ + "version", + "eventType", + "event" + ] + }, + "event": { + "description": "The event content for outcome message.", + "type": "object", + "javaType": "InnerSubscriptionEventOutcome", + "properties": { + "subscription": { + "description": "The subscription details.", + "type": "object", + "properties": { + "clientID": { + "description": "The clientID", + "type": "string" + }, + "name": { + "description": "The name of the subscription", + "type": "string" + } + }, + "required": [ + "clientID", + "name" + ] + }, + "predicates": { + "description": "Additional values to be added into the subscription outcome", + "type": "object", + "properties": { + "rejectedTargets": { + "description": "Rejected CM Handles to be responded by the subscription", + "type": "array" + }, + "acceptedTargets": { + "description": "Accepted CM Handles to be responded by the subscription", + "type": "array" + }, + "pendingTargets": { + "description": "Pending CM Handles to be responded by the subscription", + "type": "array" + } + } + } + }, + "required": [ + "subscription", + "predicates" + ] + } + } +} \ No newline at end of file -- cgit 1.2.3-korg