Merge "Update context-instance xpath format according to latest changes in config...
[controller.git] / opendaylight / md-sal / model / model-flow-base / src / main / yang / group-types.yang
index 8e77d26ea4afe61eea770873fea7d05a7bbd4818..25e8e7aa577968ffc20fccaac459c1e958f4d586 100644 (file)
@@ -3,8 +3,8 @@ module opendaylight-group-types {
     prefix group;
 
     import ietf-inet-types {prefix inet; revision-date "2010-09-24";}
-    import ietf-yang-types {prefix yang; revision-date "2010-09-24";}
-    import opendaylight-flow-types {prefix flow-types;revision-date 2013-10-26";}
+    import ietf-yang-types {prefix yang; revision-date "2010-09-24";}   
+    import opendaylight-action-types {prefix action;}
 
     revision "2013-10-18" {
         description "Initial revision of group service";
@@ -18,13 +18,23 @@ module opendaylight-group-types {
         leaf group-type {
             type enumeration {
                 enum group-all;
-                enum group_select;
-                enum group_indirect;
-                enum group_ff;
+                enum group-select;
+                enum group-indirect;
+                enum group-ff;
             }
         }
     }
     
+    typedef group-capabilities { 
+               type enumeration {
+                enum select-weight;
+                enum select-liveness;
+                enum chaining;
+                enum chaining-checks;
+            }   
+        }
+    
+    
     grouping group {
         
         uses group-types;
@@ -41,6 +51,14 @@ module opendaylight-group-types {
             type string; 
         }
         
+        leaf install {
+            type boolean; 
+        } 
+        
+        leaf barrier {
+            type boolean; 
+        }       
+        
         container buckets {
             list bucket {
                 key "order";
@@ -60,30 +78,11 @@ module opendaylight-group-types {
                     type uint32;
                 }
                 
-                container actions {
-                    list action {
-                        key "action-order";
-                        leaf action-order {
-                            type int32;
-                        }
-            
-                        uses flow-types:action;
-                    }
-                }
+                uses action:action-list;
             }
         }
     }
     
-    grouping group-statistics-request {
-        list group-stats {
-            key "group-id";         
-            
-            leaf group-id {
-                type int32;
-            }           
-        }
-    }
-    
     grouping group-statistics {
             
         leaf group-id {
@@ -129,7 +128,51 @@ module opendaylight-group-types {
         }       
     }
 
+    grouping group-features {
+        leaf types {
+            type bits {
+               bit group-all;
+               bit group-select;
+               bit group-indirect;
+               bit group-ff;
+            }
+        }
+            
+        leaf capabilities { 
+               type bits {
+                bit select-weight;
+                bit select-liveness;
+                bit chaining;
+                bit chaining-checks;
+            }   
+        }
+
+        leaf-list max-groups {
+            type uint32;
+            description "Maximum number of groups for each type";
+            max-elements 4;
+        }
+            
+        leaf-list actions {
+            type uint32;
+            description "Bitmap number OFPAT_* that are supported";
+            max-elements 4;
+        }
+    }
+    
+    grouping group-statistics-request {
+        list group-stats {
+            key "group-id";         
+            
+            leaf group-id {
+                type int32;
+            }           
+        }
+    }
+    
+    
     grouping group-statistics-reply {
+       
         list group-stats {
             key "group-stats-order";
             leaf group-stats-order {
@@ -140,10 +183,10 @@ module opendaylight-group-types {
         }
     }
     
-    grouping group-desc-stats {
+    grouping group-desc-stats-reply {
+       
         list group-desc-stats {
             key "order-id";         
-            
             leaf order-id {
                 type int32;
             }
@@ -152,34 +195,8 @@ module opendaylight-group-types {
         }
     }
     
-    grouping group-features {
-        list group-features {
-            key "order";
-            leaf order {
-                type int32;
-            }
-            
-            uses group-types;
-            leaf capabilities { 
-                type enumeration {
-                    enum select-weight;
-                    enum select-liveness;
-                    enum chaining;
-                    enum chaining-checks;
-                }   
-            }
-
-            leaf-list max-groups {
-                type uint32;
-                description "Maximum number of groups for each type";
-                max-elements 4;
-            }
-            
-            leaf-list actions {
-                type uint32;
-                description "Bitmap number OFPAT_* that are supported";
-                max-elements 4;
-            }
-        }
-    }    
+    grouping group-features-reply {
+       uses group-features;
+    }
+    
 }
\ No newline at end of file