Bug:701-Have Typed ErrorNotification for different node errors
[controller.git] / opendaylight / md-sal / model / model-flow-service / src / main / yang / sal-flow.yang
index 091bd43e1973ac8f2ec6aaea93717fe386e25af4..4cb1d08917a5040e06397d334df383cb99cac35e 100644 (file)
@@ -4,7 +4,9 @@ module sal-flow {
 
     import yang-ext {prefix ext; revision-date "2013-07-09";}
     import opendaylight-inventory {prefix inv;revision-date "2013-08-19";}
-    import opendaylight-flow-types {prefix types;revision-date "2013-10-26";}
+    import opendaylight-flow-types {prefix types;revision-date "2013-10-26";}    
+    import opendaylight-group-types {prefix group-type;revision-date 2013-10-18;}
+    import opendaylight-meter-types {prefix meter-type;revision-date "2013-09-18";}
     import flow-capable-transaction {prefix tr;}
     import flow-errors {prefix error;}
 
@@ -36,6 +38,33 @@ module sal-flow {
         uses types:flow;
     }
 
+    grouping base-node-error-notification {
+        leaf node {
+            ext:context-reference "inv:node-context";
+                type inv:node-ref;
+        }
+    }
+
+    grouping node-error-reference {
+        choice object-reference {
+            case flow-ref{
+                leaf flow-ref {
+                        type types:flow-ref;
+                }
+            }
+            case group-ref{
+                leaf group-ref {
+                    type group-type:group-ref;
+                }
+            }
+            case meter-ref{
+                leaf meter-ref {
+                    type meter-type:meter-ref;
+                }
+            }
+        }
+    }
+
     /** Base configuration structure **/
     grouping flow-update {
         uses "inv:node-context-ref";
@@ -122,6 +151,8 @@ module sal-flow {
         uses error:error-message;
         uses tr:transaction-aware;
         uses tr:transaction-metadata;
+        uses node-error-reference;
+        uses base-node-error-notification;
     }
     
     notification node-experimenter-error-notification {