Fixed discard-changes for mdsal netconf, mapping code cleanup.
[controller.git] / opendaylight / md-sal / model / model-flow-statistics / src / main / yang / opendaylight-port-statistics.yang
1 module opendaylight-port-statistics {
2     namespace "urn:opendaylight:port:statistics";
3     prefix portstat;
4
5     import flow-capable-transaction {prefix tr;}
6     import yang-ext {prefix ext; revision-date "2013-07-09";}
7     import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
8     import opendaylight-statistics-types {prefix stat-types;revision-date "2013-09-25";}
9
10     contact
11         "Anilkumar Vishnoi
12         Email: avishnoi@in.ibm.com";
13
14     revision "2013-12-14" {
15         description "Initial revision of port statistics model";
16     }
17
18     //Augment port statistics data to the flow-capable-node-connector
19     augment "/inv:nodes/inv:node/inv:node-connector" {
20         ext:augment-identifier "flow-capable-node-connector-statistics-data";
21         uses flow-capable-node-connector-statistics;
22     }
23     
24     grouping flow-capable-node-connector-statistics {
25         container flow-capable-node-connector-statistics {
26             //config "false";
27             uses stat-types:node-connector-statistics;
28         }
29     }
30     
31     // RPC calls
32     rpc get-all-node-connectors-statistics {
33         description "Get statistics for all node connectors from the node";
34         input {
35             uses inv:node-context-ref;
36         }
37         output {
38             uses node-connector-statistics-and-port-number-map;
39             uses tr:transaction-aware;
40         }
41     }
42
43     rpc get-node-connector-statistics {
44         description "Get statistics for given node connector from the node";
45         input {
46             uses inv:node-context-ref;
47             leaf node-connector-id {
48                 type inv:node-connector-id;
49             }
50         }
51         output {
52             uses stat-types:node-connector-statistics;
53             uses tr:transaction-aware;
54         }
55     }
56
57     //Notification for node connector statistics update
58     grouping node-connector-statistics-and-port-number-map {
59         description "List of map - node connectors and their statistics";
60         list node-connector-statistics-and-port-number-map {
61             key "node-connector-id";
62             leaf node-connector-id {
63                 type inv:node-connector-id;
64             }
65             uses stat-types:node-connector-statistics;
66         }
67     }
68
69     notification node-connector-statistics-update {
70         uses inv:node;
71         uses node-connector-statistics-and-port-number-map;
72         uses tr:multipart-transaction-aware;
73     }
74 }