- CPS-1014Getting issue details... STATUS
Introduce new attributes in the DMI Registry yang model as defined here.
The updated yang model with DataStoreSyncState is shown below,
Proposed yang model
module dmi-registry { yang-version 1.1; namespace "org:onap:cps:ncmp"; prefix dmi-reg; contact "toine.siebelink@est.tech"; revision "2022-05-10" { description "Added DataSyncEnabled, SyncState with State, LastSyncTime, DataStoreSyncState with Operational and Running syncstate"; } revision "2022-02-10" { description "Added State, LockReason, LockReasonDetails to aid with cmHandle sync and timestamp to aid with retry/timeout scenarios"; } revision "2021-12-13" { description "Added new list of public additional properties for a Cm-Handle which are exposed to clients of the NCMP interface"; } revision "2021-10-20" { description "Added dmi-data-service-name & dmi-model-service-name to allow separate DMI instances for each responsibility"; } revision "2021-05-20" { description "Initial Version"; } grouping LockReason { leaf reason { type string; } leaf details { type string; } } grouping SyncState { leaf syncState { type string; } leaf last-sync-time { type string; } } grouping DataStoreSyncState { container operational { uses SyncState; } container running { uses SyncState; } } container state { list cm-handles { key "id"; leaf id { type string; } leaf dmi-service-name { type string; } leaf dmi-data-service-name { type string; } leaf dmi-model-service-name { type string; } list additional-properties { key "name"; leaf name { type string; } leaf value { type string; } } list public-properties { key "name"; leaf name { type string; } leaf value { type string; } } leaf cmHandleState { type string; } container lock-reason { uses LockReason; } leaf last-update-time { type string; } leaf data-sync-enabled { type boolean; default "false"; } container data-sync-state { uses DataStoreSyncState; } } } }
Generated sample xml object
<?xml version='1.0' encoding='UTF-8'?> <data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0"> <state xmlns="org:onap:cps:ncmp"> <cm-handles> <id/> <dmi-service-name/> <dmi-data-service-name/> <dmi-model-service-name/> <additional-properties> <name/> <value/> </additional-properties> <public-properties> <name/> <value/> </public-properties> <cmHandleState/> <lock-reason> <reason/> <details/> </lock-reason> <last-update-time/> <data-sync-enabled>false</data-sync-enabled> <data-sync-state> <operational> <syncState/> <last-sync-time/> </operational> <running> <syncState/> <last-sync-time/> </running> </data-sync-state> </cm-handles> </state> </data>
Generate sample json object
{ "state": { "cm-handles": { "id": null, "dmi-service-name": null, "dmi-data-service-name": null, "dmi-model-service-name": null, "additional-properties": { "name": null, "value": null }, "public-properties": { "name": null, "value": null }, "cmHandleState": null, "lock-reason": { "reason": null, "details": null }, "last-update-time": null, "data-sync-enabled": "false", "data-sync-state": { "operational": { "syncState": null, "last-sync-time": null }, "running": { "syncState": null, "last-sync-time": null } } } } }