You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

References

// put in related JIRA tickets and the reference here.

Assumptions

#

Issue

Notes

Decisions

1

The whole subscription event is deleted




Issues & Decisions

#

Issue

Notes

Decisions

1

Delete the subscription from the database?

  1. Subscription can be marked as deleted or removed from the database
  2. When are they deleted from db?

2What do we need to send to the DMI Plugin
  1. subscription name + client id
  2. + cmhandle ids?
  3. + cmhandle properties?
  4. + datastore?

Overview

EDM to NCMP

Subscription Create Event (Schema 1)


Subscription Create Event (Schema 1)

topic subscription
 
id generated by client
source "SCO-9989752"
specversion  "1.0"
type subscriptionDeleted
time
dataschema org.onap.ncmp.cm.subscription:1.0.0
data
 
{
  "data": {
    "subscription": {
      "clientID": "SCO-9989752",
      "name": "cm-subscription-001"
    },
    "dataType": {
      "dataspace": "ALL",
      "dataCategory": "CM",
      "dataProvider": "CM-SERVICE"
    },
      "predicates":{
         "datastore":"passthrough-running"
      }

}
 
"javaType": "org.onap.cps.ncmp.events.avcsubscription1_0_0.client_to_ncmp"


// Show input and output schema

// Any logic if we want to discuss and make decision

NCMP to DMI-Plugins


Input Schema (Schema 3) - Produced by NCMP and Consumed by DMI Plugins

topic: ncmp-dmi-cm-avc-subscription-dminame1
 
id uuid
source "SCO-9989752"
specversion  "1.0"
type subscriptionDeleted
time // ncmp will generate
dataschema org.onap.ncmp.dmi.cm.subscription:1.0.0
data
 
{
"data":{
      "subscription":{
         "clientID":"SCO-9989752",
         "name":"cm-subscription-001",
         "isTagged":false
      },
      "dataType":{
         "dataspace":"ALL",
         "dataCategory":"CM",
         "dataProvider":"CM-SERVICE"
      },
      "predicates":{
         "targets":[            
            {"id" : <cmhandleid>,
             "additional-properties": ["shape":"circle"]},    
            {"id" : <cmhandleid>,
             "additional-properties": ["shape":"triangle"]},   
            {"id" : <cmhandleid>,
             "additional-properties": ["shape":"square"]}
         ],
         "datastore":"passthrough-running",
         "datastore-xpath-filter":"//_3gpp-nr-nrm-gnbdufunction:GNBDUFunction/_3gpp-nr-nrm-nrcelldu:NRCellDU/ | //_3gpp-nr-nrm-gnbcuupfunction:GNBCUUPFunction// | //_3gpp-nr-nrm-gnbcucpfunction:GNBCUCPFunction/_3gpp-nr-nrm-nrcelldu:NRCellCU// | //_3gpp-nr-nrm-nrsectorcarrier:NRSectorCarrier//"
      }
   }
}
 
"javaType": "org.onap.cps.ncmp.events.avcsubscription1_0_0.ncmp_to_dmi"


DMI-Plugins to NCMP



Output Schema (Schema 4) - Produced by DMI Plugins

topic: dmi-ncmp-cm-avc-subscription
 
id uuid - generated by dmi-plugins
source <dmiName>
specversion  "1.0"
type subscriptionDeletedStatus
time - generated by dmi
correlationid: <clientId>:<subscriptionName>
dataschema org.onap.ncmp.dmi.cm.subscription:1.0.0
data
{
   "clientId":"SCO-9989752",
   "subscriptionName":"cm-subscription-001",
   "dmiName":"<dmiName>",
   "subscriptionStatus":[
      {
        id : <cmhandleid>,
        status : rejected | accepted,
        details : <some message>  // only present for rejected
    },
      {...}
   ]
}
 
"javaType": "org.onap.cps.ncmp.events.avcsubscription1_0_0.dmi_to_ncmp"


Notes

  1. dmiName in Output Schema is populated from application.yml of DMI-plugin.
  2. DMI-plugin subscribes to the topic to consume Input Schema given in application.yml of DMI-plugin.



application.yml of DMI-Plugin

dmi:
    service:
        name: ${DMI_SERVICE_NAME:ncmp-dmi-plugin}
app:
    dmi:
        avc:
            subscription-topic: ${DMI_CM_AVC_SUBSCRIPTION:ncmp-dmi-cm-avc-subscription-${dmi.service.name}}


NCMP to Client-Apps

Proposed outcome (Schema 5)

topic: subscription-response
 
id uuid - generated by NCMP
source <NCMP>
specversion  "1.0"
type subscriptionDeletedStatus
time // NCMP would generate
correlationid: clientId:subscriptionName
dataschema org.onap.ncmp.cm.subscription:1.0.0
data
 
{
  "data": {
       “statusCode” : 207,  # Some error code reflecting partial success.  **   //  To be discussed with the whole team
       “statusMessage” : “Partially Applied Subscription”,
       “additionalInfo” : {
           “rejected” :  [{
                “details” : “faulty subscription format for target(s)”, // need to finalize the detailed message for grouping.
                “targets” : [“cmhandle1”, “cmhandle2”, “cmhandle3”]
           },
            {
                “details” : “faulty subscription format for target(s) - xyz”, // need to finalize the detailed message for grouping.
                “targets” : [“cmhandle1”]
           }
],
           “pending” : {
                “details” : “EMS/node connectivity issues, retrying”,
                “targets” : [“cmhandle4”, “cmhandle5”, “cmhandle6”]
       }
  }
}
 
// we dont have to send the accepted cmhandle details.
  
** 202 could indicate complete failure –
    "data": {
       “statusCode” : 406,  # Some error code reflecting complete rejection of the request
       “statusMessage” : “Subscription rejected : Faulty Subscription Data”,
       “additionalInfo” : {
           “rejected” :  {
                “details” : “//NRxxCellDU is not a valid subscription type”
           },
 
Have another for Pending CMHandles gone to accepted
 
"javaType": "org.onap.cps.ncmp.events.avcsubscription1_0_0.ncmp_to_client"

  • No labels