added notification to group and meter
[controller.git] / opendaylight / md-sal / model / model-flow-service / src / main / yang / flow-node-inventory.yang
index 76c172bcf07fa8c11729731a9b06d7cb6aab40b4..61980d99d4e1f98a7f05b6de399865a637ff3de4 100644 (file)
@@ -5,66 +5,128 @@ module flow-node-inventory {
     import yang-ext {prefix ext;}
     import ietf-inet-types {prefix inet;}
     import ietf-yang-types {prefix yang;}
+    import opendaylight-port-types {prefix port;}
     import opendaylight-inventory {prefix inv;}
     
     revision "2013-08-19" {
         description "Flow Capable Node extensions to the nventory model";
     }
     
-    grouping flow-capable-node-capabilities {
+    
+    grouping feature {
+        leaf support-state {
+            type inv:support-type;
+        }
+    }
+
+    grouping queue {
+         leaf queue-id {
+            type uint32;
+            description "id for the specific queue";
+            mandatory true; 
+        }
+        container properties {
+            leaf minimum-rate {
+                type uint32;
+            }
+            leaf maximum-rate{
+                type uint32;
+            }
+        }
+    }
+
+    grouping table {
+
+
+    }
+
+    grouping flow-node {
+
+        leaf manufacturer {
+            type string;
+        }
+        leaf hardware {
+            type string;
+        }
+        leaf software {
+            type string;
+        }
+        leaf serial-number {
+            type string;
+        }
+        leaf description {
+            type string;
+        }
+
         container tables {
-            leaf support-state {
-                type inv:support-type;
+            uses feature;
+            list table {
+                uses table;
             }
-            
         }
         
         container group-tables {
-        
+            uses feature;
         }
         
         container supported-match-types {
             list match-type {
+                uses feature;
                 leaf match {
                     type string; // FIXME: Add identity
                 }
-                leaf support-state {
-                    type inv:support-type;
-                }
+                
             }
         }
         
         container supported-instructions {
             list instruction-type {
+                uses feature;
                 leaf instruction {
                     type string; // FIXME: Add identity
                 }
-                
-                leaf support-state {
-                    type inv:support-type;
-                }
             }
         }
 
         container supported-actions {
             list action-type {
+                uses feature;
+
                 leaf action {
                     type string; // FIXME: Add identity
                 }
-                
-                leaf support-state {
-                    type inv:support-type;
-                }
             }
         }
     }
     
+    grouping flow-node-connector {
+
+        uses port:flow-capable-port;
+    }
+
     augment "/inv:nodes/inv:node" {
-        augment-identifier "flow-capable-node";
-        uses flow-capable-node-capabilities;
+        ext:augment-identifier "flow-capable-node";
+        uses flow-node;
     }
-    
-    notification node-capabilities-updated {
-        uses flow-capable-node-capabilities;
+
+    augment "/inv:nodes/inv:node/inv:node-connector" {
+        ext:augment-identifier "flow-capable-node-connector";
+        uses flow-node-connector;
+    }
+
+    augment "/inv:node-updated" {
+        ext:augment-identifier "flow-capable-node-updated";
+        uses flow-node;
+    }
+
+    augment "/inv:node-updated/inv:node-connector" {
+        //ext:identical-augment "flow-capable-node-connector";
+        ext:augment-identifier "flow-capable-node-connector-update-fields";
+        uses flow-node-connector;
+    }
+
+    augment "/inv:node-connector-updated" {
+        ext:augment-identifier "flow-capable-node-connector-updated";
+        uses flow-node-connector;
     }
 }
\ No newline at end of file