Moving and Renaming eexisting subscription impl
[cps.git] / cps-ncmp-service / src / main / resources / models / dmi-registry@2023-08-23.yang
1 module dmi-registry {
2
3   yang-version 1.1;
4
5   namespace "org:onap:cps:ncmp";
6
7   prefix dmi-reg;
8
9   contact "toine.siebelink@est.tech";
10
11   revision "2023-08-23" {
12     description
13     "Added ModuleSetTag";
14   }
15
16   revision "2022-05-10" {
17     description
18     "Added DataSyncEnabled, SyncState with State, LastSyncTime, DataStoreSyncState with Operational and Running syncstate";
19   }
20
21   revision "2022-02-10" {
22     description
23     "Added State, LockReason, LockReasonDetails to aid with cmHandle sync and timestamp to aid with retry/timeout scenarios";
24   }
25
26   revision "2021-12-13" {
27     description
28     "Added new list of public additional properties for a Cm-Handle which are exposed to clients of the NCMP interface";
29   }
30
31   revision "2021-10-20" {
32     description
33     "Added dmi-data-service-name & dmi-model-service-name to allow separate DMI instances for each responsibility";
34   }
35
36   revision "2021-05-20" {
37     description
38     "Initial Version";
39   }
40
41   grouping LockReason {
42     leaf reason {
43       type string;
44     }
45     leaf details {
46       type string;
47     }
48   }
49
50   grouping SyncState {
51    leaf sync-state {
52      type string;
53    }
54    leaf last-sync-time {
55      type string;
56    }
57   }
58
59   grouping Datastores {
60     container operational {
61       uses SyncState;
62     }
63     container running {
64       uses SyncState;
65     }
66   }
67
68   container dmi-registry {
69     list cm-handles {
70       key "id";
71       leaf id {
72         type string;
73       }
74       leaf dmi-service-name {
75         type string;
76       }
77       leaf dmi-data-service-name {
78         type string;
79       }
80       leaf dmi-model-service-name {
81         type string;
82       }
83       leaf module-set-tag {
84         type string;
85       }
86
87       list additional-properties {
88         key "name";
89         leaf name {
90           type string;
91         }
92         leaf value {
93           type string;
94         }
95       }
96
97       list public-properties {
98         key "name";
99         leaf name {
100           type string;
101         }
102         leaf value {
103           type string;
104         }
105       }
106
107       container state {
108         leaf cm-handle-state {
109           type string;
110         }
111
112         container lock-reason {
113           uses LockReason;
114         }
115
116         leaf last-update-time {
117           type string;
118         }
119
120         leaf data-sync-enabled {
121           type boolean;
122           default "false";
123         }
124
125         container datastores {
126           uses Datastores;
127         }
128       }
129     }
130   }
131 }