...
Code Block |
---|
language | bash |
---|
title | Subscription Create Event (Schema 1) |
---|
|
topic subscription
id generated by client
source "SCO-9989752"
specversion "1.0"
type subscriptionCreated
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": {
“targets” : [“cmHandle1”, “cmHandle2”, “cmHandle3”] # cmhandle targets
"datastore": “passthrough-operational",
"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//”
}
} |
NCMP
...
saves in CPS
Luke Gleeson (Unlicensed)
...
Code Block |
---|
language | text |
---|
title | Input Schema (Schema 3) - Consumed |
---|
|
{
"version":topic: ncmp-dmi-cm-avc-subscription-dminame1
id uuid
source "SCO-9989752"
specversion "1.0",
type subscriptionCreated
time
"eventType":"CREATE",dataschema org.onap.ncmp.dmi.cm.subscription:1.0.0
data
{
"eventdata":{
"subscription":{
"clientID":"SCO-9989752",
"name":"cm-subscription-001",
"isTagged":false
},
"dataType":{
"dataspace":"ALL",
"dataCategory":"CM",
"dataProvider":"CM-SERVICE",
"schemaName":"org.onap.ncmp:cm-network-avc-event.rfc8641",
"schemaVersion":"1.0"
},
"predicates":{
"targets":[
{"cmHandle1": ["shape":"circle"]},
{"cmHandle2": ["shape":"square"]},
{"cmHandle3": ["shape":"traingle"]}
],
"datastore":"passthrough-running",
"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//"
}
}
} |
...
Code Block |
---|
language | text |
---|
title | Output Schema (Schema 4) - Produced |
---|
|
topic: dmi-ncmp-cm-avc-subscription
id uuid
source <dmiName>
specversion "1.0"
type subscriptionStatus
time
correlationID: clientId:subscriptionName
dataschema org.onap.ncmp.dmi.cm.subscription:1.0.0
data
{
"clientId":"SCO-9989752",
"subscriptionName":"cm-subscription-001",
"dmiName":"ncmp-dmi-plugin",
"cmHandleIdToStatussubscriptionStatus":[
{
id : <cmhandleid>,
status "CmHandle1":"ACCEPTED",
"CmHandle2":"REJECTED": rejected | accepted,
message : <some message>
},
{...}
]
} |
Notes
- dmiName in Output Schema is populated from application.yml of DMI-plugin.
- DMI-plugin subscribes to the topic to consume Input Schema given in application.yml of DMI-plugin.
...
Proposed outcome (Schema 5)
Code Block |
---|
|
{
"version":topic: subscription-response
id uuid
source <dmiName>
specversion "1.0",
type subscriptionStatus
“eventId”time
correlationID: “dse345r-df43”,
“eventCorrelationId” : <the-subscription-id-issued-for-original-client-subscription-request>,
"eventType": "subscriptionResponse",
“eventTime” : <time>,
clientId:subscriptionName
dataschema org.onap.ncmp.dmi.cm.subscription:1.0.0
data
{
"data": {
“statusCode” : 201, # Some error code reflecting partial success. **
“statusMessage” : “Partially Applied Subscription”,
“additionalInfo” : {
“fail” : {
“details” : “faulty subscription format for target(s)”,
“targets” : [“cmhandle1”, “cmhandle2”, “cmhandle3”]
},
“pending” : {
“details” : “EMS/node connectivity issues, retrying”,
“targets” : [“cmhandle4”, “cmhandle5”, “cmhandle6”]
}
}
}
** 202 could indicate complete failure –
"data": {
“statusCode” : 202, # Some error code reflecting complete rejection of the request
“statusMessage” : “Subscription rejected : Faulty Subscription Data”,
“additionalInfo” : {
“fail” : {
“details” : “//NRxxCellDU is not a valid subscription type”
},
Have another for Pending CMHandles gone to accepted |
Open Question: what headers do we need?
...