refactor cmsubscription code

- Moved cmsubscription to the impl package instead of api.
- Below packages are renamed or newly created for code and tests
  - moved ..api.cmsubsription to ..impl.cmsubscription
  - renamed ..api.cmsubscription.mappers to ..impl.cmsubscription.ncmp
    or dmi as per the functionality
  - renamed ..api.cmsubscription.model to ..impl.cmsubscription.models
  - removed ..api.cmsubscription.producer/consumer and classes moved to  ..impl.cmsubscription.ncmp/dmi
  - new package ..impl.cmsubscription.cache to hold cache config and
    cache operations
  - new package ..impl.cmsubscription.avc to hold the CmAvcEventConsumer
    for the notifications emitted as a result of the subscriptions
  - Removed the prefix CmNotificationSubscription for majority of the classes , not removed for Config and model classes
  - Renamed the schemas and package structure as per the code refactoring

Note: *EventsFacade and *MappersFacade to be removed in the next
patchset

Issue-ID: CPS-2298
Change-Id: I1d788ab745d65965570e28beaefa511cbe4a8547
Signed-off-by: mpriyank <priyank.maheshwari@est.tech>
diff --git a/cps-ncmp-events/src/main/resources/schemas/cmnotificationsubscription/ncmp-in-event-schema-1.0.0.json b/cps-ncmp-events/src/main/resources/schemas/cmnotificationsubscription/ncmp-in-event-schema-1.0.0.json
new file mode 100644
index 0000000..f8b6c2e
--- /dev/null
+++ b/cps-ncmp-events/src/main/resources/schemas/cmnotificationsubscription/ncmp-in-event-schema-1.0.0.json
@@ -0,0 +1,73 @@
+{
+  "$id": "urn:cps:org.onap.cps.ncmp.events:cm-notification-subscription-ncmp-in-event:1.0.0",
+  "$ref": "#/definitions/NcmpInEvent",
+  "$schema": "https://json-schema.org/draft/2019-09/schema",
+  "definitions": {
+    "NcmpInEvent": {
+      "description": "The payload for subscription merge event.",
+      "javaType": "org.onap.cps.ncmp.impl.cmnotificationsubscription_1_0_0.client_to_ncmp.NcmpInEvent",
+      "properties": {
+        "data": {
+          "properties": {
+            "subscriptionId": {
+              "description": "The subscription details.",
+              "type": "string"
+            },
+            "predicates": {
+              "type": "array",
+              "description": "Additional values to be added into the subscription",
+              "items": {
+                "type": "object",
+                "properties": {
+                  "targetFilter": {
+                    "description": "CM Handles to be targeted by the subscription",
+                    "type": "array",
+                    "items": {
+                      "type": "string"
+                    }
+                  },
+                  "scopeFilter": {
+                    "type": "object",
+                    "properties": {
+                      "datastore": {
+                        "description": "Datastore which is to be used by the subscription",
+                        "type": "string",
+                        "enum": ["ncmp-datastore:passthrough-operational", "ncmp-datastore:passthrough-running"]
+                      },
+                      "xpathFilter": {
+                        "description": "Filter to be applied to the CM Handles through this event",
+                        "type": "array",
+                        "items": {
+                          "type": "string"
+                        }
+                      }
+                    },
+                    "additionalProperties": false,
+                    "required": [
+                      "xpathFilter"
+                    ]
+                  }
+                },
+                "additionalProperties": false,
+                "required": [
+                  "targetFilter"
+                ]
+              },
+              "additionalProperties": false
+            }
+          },
+          "required": [
+            "subscriptionId"
+          ],
+          "type": "object",
+          "additionalProperties": false
+        }
+      },
+      "type": "object",
+      "additionalProperties": false,
+      "required": [
+        "data"
+      ]
+    }
+  }
+}
\ No newline at end of file