Eliminate blueprint for southbound-cli commands
[openflowplugin.git] / model / model-flow-statistics / src / main / yang / opendaylight-queue-statistics.yang
1 module opendaylight-queue-statistics {
2     namespace "urn:opendaylight:queue:statistics";
3     prefix queuestat;
4
5     import flow-capable-transaction {prefix tr; revision-date "2015-03-04";}
6     import yang-ext {prefix ext; revision-date "2013-07-09";}
7     import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
8     import flow-node-inventory {prefix flow-node;revision-date "2013-08-19";}
9     import opendaylight-queue-types {prefix queue-types;revision-date "2013-09-25";}
10     import opendaylight-statistics-types {prefix stat-types;revision-date "2013-09-25";}
11     import opendaylight-multipart-types { prefix multipart; revision-date "2017-01-12"; }
12
13     description "Openflowplugin queue statistics structures.";
14
15     contact
16         "Anilkumar Vishnoi
17         Email: avishnoi@in.ibm.com";
18
19     revision "2013-12-16" {
20         description "Initial revision of queue statistics model";
21     }
22
23     //Augment queue statistics data to the flow-capable-node-connector
24     augment "/inv:nodes/inv:node/inv:node-connector/flow-node:queue" {
25         description "Openflow queue statistics data into the queue node.";
26         ext:augment-identifier "flow-capable-node-connector-queue-statistics-data";
27         uses flow-capable-node-connector-queue-statistics;
28     }
29
30     grouping flow-capable-node-connector-queue-statistics {
31         description "TODO::simplify;";
32         container flow-capable-node-connector-queue-statistics {
33             uses stat-types:generic-queue-statistics;
34         }
35     }
36
37     //RPC calls to fetch queue statistics
38     grouping queue-id-and-statistics-map {
39         list queue-id-and-statistics-map {
40             key "queue-id node-connector-id";
41             leaf queue-id {
42                 type queue-types:queue-id;
43             }
44             leaf node-connector-id {
45                 type inv:node-connector-id;
46             }
47
48             uses stat-types:generic-queue-statistics;
49         }
50     }
51
52     rpc get-all-queues-statistics-from-all-ports {
53         status deprecated;
54         description "Get statistics for all the queues attached to all the ports from the node";
55
56         input {
57             uses inv:node-context-ref;
58         }
59         output {
60             uses queue-id-and-statistics-map;
61             uses tr:transaction-aware;
62         }
63     }
64
65     rpc get-all-queues-statistics-from-given-port {
66         status deprecated;
67         description "Get statistics for all queues for given port of the node";
68
69         input {
70             uses inv:node-context-ref;
71             leaf node-connector-id {
72                 type inv:node-connector-id;
73             }
74         }
75         output {
76             uses queue-id-and-statistics-map;
77             uses tr:transaction-aware;
78         }
79     }
80
81     rpc get-queue-statistics-from-given-port {
82         status deprecated;
83         description "Get statistics for given queues from given port of the node";
84
85         input {
86             uses inv:node-context-ref;
87             leaf node-connector-id {
88                 type inv:node-connector-id;
89             }
90             leaf queue-id {
91                 type queue-types:queue-id;
92             }
93         }
94         output {
95             uses queue-id-and-statistics-map;
96             uses tr:transaction-aware;
97         }
98     }
99
100     //Notification for port statistics update
101
102     notification queue-statistics-update {
103         status deprecated;
104
105         uses inv:node;
106         uses queue-id-and-statistics-map;
107         uses tr:multipart-transaction-aware;
108     }
109
110     augment "/multipart:multipart-reply/multipart:multipart-reply-body" {
111         case multipart-reply-queue-stats {
112             uses queue-id-and-statistics-map;
113         }
114     }
115
116     augment "/multipart:multipart-request/multipart:multipart-request-body" {
117         case multipart-request-queue-stats {
118             leaf queue-id {
119                 type queue-types:queue-id;
120             }
121
122             leaf node-connector-id {
123                 type inv:node-connector-id;
124             }
125         }
126     }
127 }