Refactor ReconciliationServiceImpl
[openflowplugin.git] / applications / southbound-cli / src / main / yang / reconciliation.yang
1 module reconciliation {
2
3     namespace "urn:opendaylight:params:xml:ns:yang:openflowplugin:app:reconciliation:service";
4     prefix reconciliation;
5
6     import ietf-yang-types {prefix yang; revision-date "2013-07-15";}
7     revision "2018-02-27" {
8         description "Initial revision for reconciliation";
9     }
10
11     container reconciliation-counter {
12         description "Number of reconciliation triggered for openflow nodes";
13         config false;
14         list reconcile-counter {
15             key node-id;
16             leaf node-id {
17                 type uint64;
18             }
19             uses counter;
20         }
21     }
22
23     grouping counter {
24         leaf success-count {
25             type uint32;
26             default 0;
27         }
28         leaf failure-count {
29             type uint32;
30             default 0;
31         }
32         leaf last-request-time {
33              description "Timestamp when reconciliation was last requested";
34              type yang:date-and-time;
35         }
36     }
37
38     rpc reconcile {
39         description "Request the reconciliation for given device or set of devices to the controller.";
40         input {
41             leaf-list nodes {
42                 description "List of nodes to be reconciled";
43                 type uint64;
44             }
45
46             leaf reconcile-all-nodes {
47                 description "Flag to indicate that all nodes to be reconciled";
48                 type boolean;
49                 default false;
50             }
51         }
52
53         output {
54              leaf result {
55                  type boolean;
56              }
57
58              leaf-list inprogress-nodes {
59                  description "List of nodes currently reconciliation mode";
60                  type uint64;
61              }
62         }
63     }
64 }