pyang fixes for statistics module
[controller.git] / opendaylight / md-sal / model / model-flow-statistics / src / main / yang / opendaylight-flow-table-statistics.yang
diff --git a/opendaylight/md-sal/model/model-flow-statistics/src/main/yang/opendaylight-flow-table-statistics.yang b/opendaylight/md-sal/model/model-flow-statistics/src/main/yang/opendaylight-flow-table-statistics.yang
new file mode 100644 (file)
index 0000000..ab84f50
--- /dev/null
@@ -0,0 +1,68 @@
+module opendaylight-flow-table-statistics {
+    namespace "urn:opendaylight:flow:table:statistics";
+    prefix flowtablestat;
+
+       import flow-capable-transaction {prefix tr;}
+    import yang-ext {prefix ext; revision-date "2013-07-09";}
+    import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
+    import flow-node-inventory {prefix flow-node;revision-date "2013-08-19";}
+    import opendaylight-table-types {prefix table-types;revision-date "2013-10-26";}
+    import opendaylight-statistics-types {prefix stat-types;revision-date "2013-09-25";}
+    
+
+    contact
+        "Anilkumar Vishnoi
+        Email: avishnoi@in.ibm.com";
+
+    revision "2013-12-15" {
+        description "Initial revision of flow table statistics model";
+    }
+    
+    //Augment flow table statistics data to the table
+       augment "/inv:nodes/inv:node/flow-node:table" {
+        ext:augment-identifier "flow-table-statistics-data";
+        uses flow-table-statistics;
+    }
+       
+       grouping flow-table-statistics {
+        container flow-table-statistics {
+            //config "false";
+               uses stat-types:generic-table-statistics;
+        }
+       }    
+    
+    //RPC calls to fetch flow table statistics
+    grouping flow-table-and-statistics-map {
+       list flow-table-and-statistics-map {
+               key "table-id";
+               leaf table-id {
+                       type table-types:table-id;
+               }
+               uses stat-types:generic-table-statistics;
+       }
+    }
+    
+    rpc get-flow-tables-statistics {
+       description "Fetch statistics of all the flow tables present on the tarnet node";
+       input {
+               uses inv:node-context-ref;
+       }
+       output {
+               uses flow-table-and-statistics-map;
+               uses tr:transaction-aware;
+       }
+    }
+    
+    //Notification to receive table statistics update
+    
+    notification flow-table-statistics-update {
+       description "Receive flow table statistics update";
+       
+               leaf moreReplies {
+            type boolean;
+        }
+        uses inv:node;
+               uses flow-table-and-statistics-map;
+               uses tr:transaction-aware;
+    }
+}