Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

References


Assumptions

#

Issue

Notes

Decisions

1





Issues & Decisions

#

Issue

Notes

Decisions

1





Overview

This page only contains the details used for starting the development on the Merging of Subscriptions use case. Just the straight forward scenarios will be covered and the overall solution will be build on top of it.


Schema Definitions


  1. DME to NCMP Subscription Request

    Code Block
    titleDME to NCMP Subscription Request
    linenumberstrue
    collapsetrue
    Header values ( all cloud events header )
    
    
    {
      "data": {
        "subscriptionId": "unique subscription id",
        "predicates": [
    	{
            “targets” :  list of cmhandles
            "datastore": “ncmp-datastore:passthrough-operational or ncmp-datastore:passthrough-running",
            "datastore-xpath-filter": list of valid xpaths
      
        }
    	]
    }



  2. NCMP to DMI-Plugin Subscription Request

    Code Block
    titleNCMP to DMI-Plugin Subscription Request
    linenumberstrue
    collapsetrue
    // correlationId for tracking
    {
      "data": {
       
    	"cmhandles" : [
    	{
    		"cmHandleId": "cmhandle1",
    		"private-properties": {...} 
    	},
    	{
    		"cmHandleId": "cmhandle2",
    		"private-properties": {...}
    	},
    	{
    		"cmHandleId": "cmhandle3",
    		"private-properties": {...}
    	}
    	]
        "predicates": [
    	{
            “targets” :  [“cmHandle1”, “cmHandle2”, "cmhandle3"]
            "datastore": “ncmp-datastore:passthrough-operational",
            "datastore-xpath-filter": ["p1/c1", "p2/c2"]
      
        },
    	{
            “targets” :  [“cmHandle1”]
            "datastore": “ncmp-datastore:passthrough-running",
            "datastore-xpath-filter": ["p3/c3", "p4/c4"]
        }
    	]
    }



  3. DMI-Plugin to NCMP Subscription Response

    Code Block
    titleDMI-Plugin to NCMP Subscription Response
    linenumberstrue
    collapsetrue
    Headers will have relevant fields including the subscriptionId
    
    // correlationId for tracking - to link with NCMP. ( get clarity )
    { 
    "data" : {
    
       "dmiName":"<dmiName>", 
       "statusCode": "1", // open issue for the status codes ( whether to use the same for DMI to NCMP  as for NCMP to Clients)
       "statusMessage" : "accepted/rejected"
    }
    }



  4. NCMP to DME Subscription Response

    Code Block
    titleNCMP to DME Subscription Response
    linenumberstrue
    collapsetrue
    Headers will have relevant fields including the subscriptionId
    
    {
      "data": {
    		"subscriptionId": "sample-subscription-id",
    		"accepted-targets" : ["ch-1", ...],
    		"rejected-targets" : ["ch-1", ...],
    		"pending-targets" : ["ch-1", ...],
      }
    }