Working with wildcards and subscription update which will be taken care by a separate epic.
Subscription create ( done as part of a different story )
Merging of the ongoing subscriptions.
Assumptions
#
Issue
Notes
Decisions
1
Delete use case works for a valid ongoing subscription only.
2
Works only for the passthrough datastores.
Issues & Decisions
#
Issue
Notes
Decisions
1
Delete the subscription from the database?
When do we actually delete the subscription from CPS DB ? We plan to do it when we receive response from the DMI plugins and the underlying subscriptions from the devices are deleted.
2
What do we need to send to the DMI Plugin so that they are able to decide that how to delete the ongoing subscription.
subscription name + client id
+ cmhandle ids?
+ cmhandle properties?
+ datastore?
3
Who should be able to retry and make sure the subscriptions are deleted from the respective DMIs managing the devices.
kieran mccarthy The agenda for the next meeting. We can decide then.
More on the "DELETING" stage ( if we want to have it )
kieran mccarthy As discussed on , The DME should be able to maintain Subscription State and make decision when to retry based on the response outcome we provide to it for create and/or delete use cases.
4
DME to NCMP Event to have targets and datastore-xpath-filter information for the subscription delete use case ?
kieran mccarthy As per the discussion today we agreed to use targets , datastore-xpath-filters and datastores for the subscription delete use case.
5
Do we send additional properties from NCMP to DMI
Are additional properties needed to delete the subscription
Overview
Subscription Delete Sequence Diagram
Schema Definitions
DME to NCMP Cm Subscription Delete Request
DME to NCMP Cm Subscription Delete RequestExpand source
id : random-UUID
version : "1.0"
source : "DME"
type : "subscriptionDeleteRequest",
dataschema : org.onap.ncmp.cm.subscription:1.0.0 {
"data": {
"subscriptionId": "unique subscription id" // mandatory
}
NCMP to DMI-Plugin Subscription Request
NCMP to DMI-Plugin Subscription RequestExpand source
id : random UUID
version : 1.0
source : "NCMP"
type : "subscriptionDeleteRequest"
dataschema : org.onap.ncmp.dmi.cm.subscription:1.0.0
correlationId ( concatenation of subscriptionId and dmi-plugin-name with a separator)
{
"data": {
"cmhandles" : [ // mandatory
{
"cmHandleId": "cmhandle1",
"private-properties": {...}
},
{
"cmHandleId": "cmhandle2",
"private-properties": {...}
},
{
"cmHandleId": "cmhandle3",
"private-properties": {...}
}
]
"predicates": [
{
“targetFilter” : [“cmHandle1”, “cmHandle2”, "cmhandle3"], // mandatory
"scopeFilter" : {
"datastore": “ncmp-datastore:passthrough-operational or ncmp-datastore:passthrough-running", // optional. default is passthrough-operational
"xpath-filter": list of valid xpaths // mandatory
}
},
{
“targetFilter” : [“cmHandle1”, “cmHandle2”, "cmhandle3"],
"scopeFilter" : {
"datastore": “ncmp-datastore:passthrough-operational or ncmp-datastore:passthrough-running", // optional. default is passthrough-operational
"xpath-filter": list of valid xpaths *
}
}
]
}
DMI-Plugin to NCMP Cm Subscription Delete Response
DMI-Plugin to NCMP Cm Subscription Delete ResponseExpand source
id : random UUID
version : "1.0"
source : <dmi-plugin-name>
type : "subcriptionDeleteResponse"
dataschema : org.onap.ncmp.dmi.cm.subscription:1.0.0
correlation-id : ( concatenation of subscriptionId and dmi-plugin-name with a separator)
{
"data" : {
"statusCode": "1/104", // mandatory
"statusMessage" : "ACCEPTED/REJECTED" // mandatory
}
}
NCMP to DME Cm Subscription Delete Response
NCMP to DME Cm Subscription Delete ResponseExpand source