Versions Compared

Key

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

...

Flow Step

Short description

Message Details

Notes

1

Bulk Get Request


Code Block
title/v1/batch/data/ds/{datastore-name}
collapsetrue
body:
{"cmhandleIds":["cm-1",...,"cm-n"]


Define new get operation "getResourceDataForCmHandles" into ncmp.yml

2Ack Client Request


Code Block
titleResponse 200
collapsetrue
{"requestId":"123"}



3DMI Bulk Request


Code Block
title/v1/ch/batch/data/ds/{datastore-name}&topic=topicParamInQuery
collapsetrue
body: {"Cmhandles":["cm-1",...,"cm-n"],"requestId":123}


The DMI PLugin should be told (included in request) the client topic so that NCMP does not have to 'remember' to relation between request id and client topic!



4Ack Client Request


Code Block
titleResponse 202
collapsetrue



5Kafka Messages from DMI to NCMP


Code Block
titleTopic: ncmp-async-m2m
collapsetrue
Message Details TBD



6Kafka Message(s) from NCMP to Client 
Table


Code Block
titleTopic: <client topic>
collapsetrue
Message Details TBD



7Alternative for 4/5 → Non responding DMI. NCMP will have to create error message detailing cm-handles
See decision # 8 and 9
8

Response message structure ? (Flow no. 5)

Non responding DMI-

plugin

plugin 


Code Block
titleNon responding DMI-plugin 
collapsetrue
{
"timestamp":"2019/02/27 13:35:10",
  "status": 503, 
"requestId":123,
  "message": "DMI Service Unavailable, {service-name}"
 }



9

Response message structure ? (Flow no. 5)

Non existing cm handles


Code Block
titleNon existing cm handles
Success 
collapse
  • Failed
  • TBD
    true
    {
    	"timestamp":"2019/02/27 13:34:24",
    "status":404,
    "requestId":123,
    	"error":"cm handle not found",
    	"message":{"Cmhandles":["cm-1",...,"cm-n"]}
    }



    109URL  pattern for DMI-Plugin bulk endpoints

    Existing DMI endpoints are : 

    /v1/ch/{cmHandle}/data/ds/{datastore-name}


    datastore-name:

    1. ncmp-datastore:passthrough-operational
    2. ncmp-datastore:passthrough-running

     ...&topic=topicParamInQuery


    CPS Proposed :

    /v1/ch/batch/data/ds/{datastore-name}

     ...&topic=topicParamInQuery

    cm handle ids and requestid into body


    ...