Interface Overview

Current Interface Description

There are 3 distinct parts to the DMI

i) Inventory: The Server side is NCMP, the client the DMI-Plugin

ii) model: The Server side is the DMI-Plugin, the client side is NCMP

iii) data: The server side is DMI-Plugin, the client side is NCMP

InterfaceResponsibilitiesTarget AudienceCurrent PrefixExamples URI'sProposed Change
xNF Model Sync
CPS-NCMP-I-01
  1.  Register Plug-in CM-Handles
DMI Plugin Instance/ncmp

/ncmp/v1/ch

Change prefix to /ncmpInventory

/ncmpInventory/v1/ch

CPS-645 - Getting issue details... STATUS

DMI-I-01
  1. Retrieve module-references
  2. Retrieve yang module resources
  3. Add Cm-Handle (temporary)
Internal/dmi

dmi/v1/ch/{cmHandle}/modules/

dmi/v1/ch/{cmHandle}/moduleResources

dmi/v1/inventory/cmHandles

No Uri Changes but 'Generic Data Request Body' is not needed for these methods:

  1. "Retrieve module-references" method only requires 'cmHandleProperties' in request body (payload)
  2. "Retrieve yang module resources" method requires both  'cmHandleProperties' and 'data' payload. 'Data' will contain a well defined  json (object) of module references

CPS-706 - Getting issue details... STATUS

xNF Data Access
CPS-E-05
  1. Read xNF Data
  2. Create (add) xNF Data
  3. Update xNF Data
  4. Delete xNF Data

External clients, CM Data consumers

(northbound)

/ncmp

ncmp/v1/ch/{cm-handle}/data/ds/ncmp-datastore:passthrough-operational

ncmp/v1/ch/{cm-handle}/data/ds/ncmp-datastore:passthrough-running

No Changes
DMI-I-01
  1. Read xNF Data
  2. Create (add) xNF Data
  3. Update xNF Data
  4. Delete xNF Data
Internal
(NCMP)
/dmi

dmi/v1/ch/{cmHandle}/data/ds/ncmp-datastore:passthrough-operational

dmi/v1/ch/{cmHandle}/data/ds/ncmp-datastore:passthrough-running

No changes required, all methods on this interface will use the 'generic data request body' for data access


Request Format for Data Access

request body
{
  “operation”: “<operation>”,         // Valid operations are: “create”, “read”, “update”, “patch” and “delete”.
                                      
  "dataType": "<dataType>",           // e.g. "application/yang.data"

    “data”: {                           // Embedded data as a String.
    <data>                            // required for create and update operations. Optional filter-data for read-operations
  },

  “cmHandleProperties”: {           // Additional properties for CM handle previously added by DMI plugin and stored in NCMP.
    <properties>
  }
}

  • No labels