Refactoring Subscription Create LCM use case
- Client to NCMP: CmSubscriptionNcmpInEvent
- NCMP to DMI: CmSubscriptionDmiInEvent
- DMI to NCMP: CmSubscriptionDmiOutEvent
- NCMP to Client: CmSubscriptionNcmpOutEvent
- code package changed from avcsubscription to cmsubscription
- Other classes name as per the events naming above
- Test classes refactored
- NO LOGIC changes incorporated in this patch
Issue-ID: CPS-1831
Change-Id: Id5ad5f799007deaaf6d6fc0f402c130339263d09
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
diff --git a/cps-ncmp-events/src/main/resources/schemas/cmsubscription/cm-subscription-dmi-in-event-schema-1.0.0.json b/cps-ncmp-events/src/main/resources/schemas/cmsubscription/cm-subscription-dmi-in-event-schema-1.0.0.json
new file mode 100644
index 0000000..3750bd0
--- /dev/null
+++ b/cps-ncmp-events/src/main/resources/schemas/cmsubscription/cm-subscription-dmi-in-event-schema-1.0.0.json
@@ -0,0 +1,121 @@
+{
+ "$schema": "https://json-schema.org/draft/2019-09/schema",
+ "$id": "urn:cps:org.onap.cps.ncmp.events:cm-subscription-dmi-in-event-schema:1.0.0",
+ "$ref": "#/definitions/CmSubscriptionDmiInEvent",
+ "definitions": {
+ "CmSubscriptionDmiInEvent": {
+ "description": "The payload for subscription event to be forwarded to dmi plugins.",
+ "javaType": "org.onap.cps.ncmp.events.cmsubscription1_0_0.ncmp_to_dmi.CmSubscriptionDmiInEvent",
+ "properties": {
+ "data": {
+ "properties": {
+ "dataType": {
+ "description": "The datatype content.",
+ "properties": {
+ "dataCategory": {
+ "description": "The category type of the data",
+ "type": "string"
+ },
+ "dataProvider": {
+ "description": "The provider name of the data",
+ "type": "string"
+ },
+ "dataspace": {
+ "description": "The dataspace name",
+ "type": "string"
+ }
+ },
+ "required": [
+ "dataCategory",
+ "dataProvider",
+ "dataspace"
+ ],
+ "type": "object",
+ "additionalProperties": false
+ },
+ "predicates": {
+ "description": "Additional values to be added into the subscription",
+ "properties": {
+ "datastore": {
+ "description": "datastore which is to be used by the subscription",
+ "type": "string"
+ },
+ "targets": {
+ "description": "CM Handles to be targeted by the subscription",
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/CmHandle"
+ }
+ },
+ "datastore-xpath-filter": {
+ "description": "filter to be applied to the CM Handles through this event",
+ "type": "string"
+ }
+ },
+ "required": [
+ "datastore",
+ "targets",
+ "datastore-xpath-filter"
+ ],
+ "type": "object",
+ "additionalProperties": false
+ },
+ "subscription": {
+ "description": "The subscription details.",
+ "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"
+ ],
+ "type": "object",
+ "additionalProperties": false
+ }
+ },
+ "required": [
+ "dataType",
+ "predicates",
+ "subscription"
+ ],
+ "type": "object",
+ "additionalProperties": false
+ }
+ },
+ "type": "object",
+ "additionalProperties": false,
+ "required": [
+ "data"
+ ]
+ },
+ "CmHandle": {
+ "description": "The CM handle information",
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "additional-properties": {
+ "existingJavaType": "java.util.Map<String,String>"
+ }
+ },
+ "required": [
+ "id",
+ "additional-properties"
+ ],
+ "additionalProperties": false
+ }
+ }
+}
\ No newline at end of file
diff --git a/cps-ncmp-events/src/main/resources/schemas/cmsubscription/cm-subscription-dmi-out-event-schema-1.0.0.json b/cps-ncmp-events/src/main/resources/schemas/cmsubscription/cm-subscription-dmi-out-event-schema-1.0.0.json
new file mode 100644
index 0000000..c08a4ea
--- /dev/null
+++ b/cps-ncmp-events/src/main/resources/schemas/cmsubscription/cm-subscription-dmi-out-event-schema-1.0.0.json
@@ -0,0 +1,70 @@
+{
+ "$schema": "https://json-schema.org/draft/2019-09/schema",
+ "$id": "urn:cps:org.onap.cps.ncmp.events:cm-subscription-dmi-out-event-schema:1.0.0",
+ "$ref": "#/definitions/CmSubscriptionDmiOutEvent",
+ "definitions": {
+ "SubscriptionStatus": {
+ "description": "The subscription status information",
+ "type": "object",
+ "properties": {
+ "id": {
+ "type": "string"
+ },
+ "status" : {
+ "type": "string",
+ "enum": [
+ "ACCEPTED",
+ "REJECTED",
+ "PENDING"
+ ]
+ },
+ "details" : {
+ "type": "string"
+ }
+ },
+ "required": [
+ "id",
+ "status"
+ ],
+ "additionalProperties": false
+ },
+ "CmSubscriptionDmiOutEvent" : {
+ "description": "The payload for subscription response event.",
+ "type": "object",
+ "javaType": "org.onap.cps.ncmp.events.cmsubscription1_0_0.dmi_to_ncmp.CmSubscriptionDmiOutEvent",
+ "properties": {
+ "data": {
+ "type": "object",
+ "properties": {
+ "clientId": {
+ "type": "string"
+ },
+ "subscriptionName": {
+ "type": "string"
+ },
+ "dmiName": {
+ "type": "string"
+ },
+ "subscriptionStatus": {
+ "type": "array",
+ "items": {
+ "$ref": "#/definitions/SubscriptionStatus"
+ }
+ }
+ },
+ "required": [
+ "clientId",
+ "subscriptionName",
+ "dmiName",
+ "subscriptionStatus"
+ ],
+ "additionalProperties": false
+ }
+ },
+ "additionalProperties": false,
+ "required": [
+ "data"
+ ]
+ }
+ }
+}
\ No newline at end of file
diff --git a/cps-ncmp-events/src/main/resources/schemas/cmsubscription/cm-subscription-ncmp-in-event-schema-1.0.0.json b/cps-ncmp-events/src/main/resources/schemas/cmsubscription/cm-subscription-ncmp-in-event-schema-1.0.0.json
new file mode 100644
index 0000000..818a8e7
--- /dev/null
+++ b/cps-ncmp-events/src/main/resources/schemas/cmsubscription/cm-subscription-ncmp-in-event-schema-1.0.0.json
@@ -0,0 +1,99 @@
+{
+ "$id": "urn:cps:org.onap.cps.ncmp.events:cm-subscription-ncmp-in-event:1.0.0",
+ "$ref": "#/definitions/CmSubscriptionNcmpInEvent",
+ "$schema": "https://json-schema.org/draft/2019-09/schema",
+ "definitions": {
+ "CmSubscriptionNcmpInEvent": {
+ "description": "The payload for subscription event.",
+ "javaType": "org.onap.cps.ncmp.events.cmsubscription1_0_0.client_to_ncmp.CmSubscriptionNcmpInEvent",
+ "properties": {
+ "data": {
+ "properties": {
+ "dataType": {
+ "description": "The datatype content.",
+ "properties": {
+ "dataCategory": {
+ "description": "The category type of the data",
+ "type": "string"
+ },
+ "dataProvider": {
+ "description": "The provider name of the data",
+ "type": "string"
+ },
+ "dataspace": {
+ "description": "The dataspace name",
+ "type": "string"
+ }
+ },
+ "required": [
+ "dataCategory",
+ "dataProvider",
+ "dataspace"
+ ],
+ "type": "object",
+ "additionalProperties": false
+ },
+ "predicates": {
+ "description": "Additional values to be added into the subscription",
+ "properties": {
+ "datastore": {
+ "description": "datastore which is to be used by the subscription",
+ "type": "string"
+ },
+ "targets": {
+ "description": "CM Handles to be targeted by the subscription",
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ },
+ "datastore-xpath-filter": {
+ "description": "filter to be applied to the CM Handles through this event",
+ "type": "string"
+ }
+ },
+ "required": [
+ "datastore",
+ "targets",
+ "datastore-xpath-filter"
+ ],
+ "type": "object",
+ "additionalProperties": false
+ },
+ "subscription": {
+ "description": "The subscription details.",
+ "properties": {
+ "clientID": {
+ "description": "The clientID",
+ "type": "string"
+ },
+ "name": {
+ "description": "The name of the subscription",
+ "type": "string"
+ }
+ },
+ "required": [
+ "clientID",
+ "name"
+ ],
+ "type": "object",
+ "additionalProperties": false
+ }
+ },
+ "required": [
+ "dataType",
+ "predicates",
+ "subscription"
+ ],
+ "type": "object",
+ "additionalProperties": false
+ }
+ },
+ "type": "object",
+ "additionalProperties": false,
+ "required": [
+ "data"
+ ]
+ }
+ }
+}
\ No newline at end of file
diff --git a/cps-ncmp-events/src/main/resources/schemas/cmsubscription/cm-subscription-ncmp-out-event-schema-1.0.0.json b/cps-ncmp-events/src/main/resources/schemas/cmsubscription/cm-subscription-ncmp-out-event-schema-1.0.0.json
new file mode 100644
index 0000000..9c0c28b
--- /dev/null
+++ b/cps-ncmp-events/src/main/resources/schemas/cmsubscription/cm-subscription-ncmp-out-event-schema-1.0.0.json
@@ -0,0 +1,69 @@
+{
+ "$schema": "https://json-schema.org/draft/2019-09/schema",
+ "$id": "urn:cps:org.onap.cps.ncmp.events:cm-subscription-ncmp-out-event-schema:1.0.0",
+ "$ref": "#/definitions/CmSubscriptionNcmpOutEvent",
+ "definitions": {
+ "CmSubscriptionNcmpOutEvent": {
+ "description": "The payload for avc subscription event outcome message.",
+ "type": "object",
+ "javaType": "org.onap.cps.ncmp.events.cmsubscription1_0_0.ncmp_to_client.CmSubscriptionNcmpOutEvent",
+ "additionalProperties": false,
+ "properties": {
+ "data": {
+ "$ref": "#/definitions/data"
+ }
+ },
+ "required": [
+ "data"
+ ]
+ },
+ "data": {
+ "type": "object",
+ "description": "The actual data containing information about the pending and rejected targets",
+ "additionalProperties": false,
+ "properties": {
+ "statusCode": {
+ "type": "integer"
+ },
+ "statusMessage": {
+ "type": "string"
+ },
+ "additionalInfo": {
+ "type": "object",
+ "additionalProperties": false,
+ "properties": {
+ "rejected": {
+ "$ref": "#/definitions/additionalInfoDetails"
+ },
+ "pending": {
+ "$ref": "#/definitions/additionalInfoDetails"
+ }
+ }
+ }
+ },
+ "required": [
+ "statusCode",
+ "statusMessage"
+ ]
+ },
+ "additionalInfoDetails": {
+ "type": "array",
+ "items": {
+ "type": "object",
+ "description": "Details for the target cmhandles",
+ "additionalProperties": false,
+ "properties": {
+ "details": {
+ "type": "string"
+ },
+ "targets": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ }
+ }
+ }
+ }
+ }
+ }
+}
\ No newline at end of file