Versions Compared

Key

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

...

The state of a given cmhandle consists of the cmhandle state itself as well as the synchronization state information related to the model instance data related to the cmhandle.  Below shows the makeup of this state follow by the allowed cmhandle state transitions.


            Image Removed Image Added


NCMP CRUD / Action requests are only allowed if state.cmhandleState == READY.

...

CmHandle state transitions : Image Removed


Excerpt
Image Added


Supported NCMP API Requests  (CPS-E-05):  

No Format

------ Sync : Get the current state of a cmhandle when cmhandle is READY ----------------
    Request (sync)
           GET  {ncmp-root}/ncmp/v1/ch/<cmhandle>/state
           Accept: application/json

     Response 
           "state" : {
                "cmHandleState" : "READY",
                "dataSyncEnabled" : true,
                "dataStoreSyncStatedataSyncState" : {  *
                   operationalStoreStateoperational {
                       "state" : "SYNCHRONIZED",
                       "lastSyncTime" : "2022-04-01 07:37:20"
                   }
                }
            }    

*  runningStoreState is not included in response asif it does not exist / is not supported (yet)           
   

------ Sync :Get the current state of a cmhandle when cmhandle is LOCKED ---------------
    Request (sync)
           GET  {ncmp-root}/ncmp/v1/ch/<cmhandle>/state
           Accept: application/json

     Response 
           "state" : {
               "cmHandleState" : "LOCKED",
               "lockReason"    : {
                     "reason"  : "LOCKED_MISBEHAVING",
                     "details" : "Error recovering Modules for cmhandle"
                }
            }
               

------ Async : Get the current state of a cmhandle when cmhandle is READY ---------------- 
     Request (async)
            GET  {ncmp-root}/ncmp/v1/ch/<cmhandle>/state?topic=<topic-name>
            Accept: application/json

    Response 
            {
               "requestId" : "dffrtg56-rt56"
            }

    Event :

             "requestId" : "dffrtg56-rt56",
             "data" : {
                 "cmhandle" : "dfsdgfw454df",
                 "state" : {
                    "cmHandleState" : "READY",
                    "dataSyncEnabled" : true,
                    "dataStoreSyncStatedataSyncState" : {
                        operationalStoreStateoperational { 
                            "state" : "SYNCHRONIZED",
                           "lastSyncTime" : "2022-04-01 07:37:20"
                       }
                    }
                }
              }
                  

...