Remove trailing whitespace
[openflowjava.git] / openflow-protocol-api / src / main / yang / openflow-instruction.yang
index 6380841f350672638f141c6ba55e5f6f526ef802..671556e104bc83a4e2503d31a2e4c3f62391049f 100644 (file)
@@ -1,75 +1,61 @@
-module openflow-instruction {
+/*
+ * Copyright (c) 2013 Pantheon Technologies s.r.o. and others. All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+
+ module openflow-instruction {
     namespace "urn:opendaylight:openflow:common:instruction";
     prefix "ofinstruction";
 
     import openflow-types { prefix oft; }
 
     revision "2013-07-31" {
-       // description "Initial model";
+        description "OpenFlow 1.3 - instruction model";
     }
 
     identity goto_table {
-        //description " Setup the next table in the lookup pipeline";
-        base oft:instruction;
+        description " Setup the next table in the lookup pipeline";
+        base oft:instruction-base;
     }
     identity write_metadata {
-        //description " Setup the metadata field for use later in     pipeline";
-        base oft:instruction;
+        description " Setup the metadata field for use later in     pipeline";
+        base oft:instruction-base;
     }
     identity write_actions {
         description " Write the action(s) onto the datapath action set";
-        base oft:instruction;
+        base oft:instruction-base;
     }
     identity apply_actions {
         description " Applies the action(s) immediately";
-        base oft:instruction;
+        base oft:instruction-base;
     }
     identity clear_actions {
         description " Clears all actions from the datapath action set";
-        base oft:instruction;
+        base oft:instruction-base;
     }
     identity meter {
         description " Apply meter (rate limiter)";
-        base oft:instruction;
+        base oft:instruction-base;
     }
     identity experimenter {
         description "Experimenter instruction";
-        base oft:instruction;
-    }
-
-    // Structures
-
-    grouping goto-table {
-        description " Setup the next table in the lookup pipeline";
-        leaf table {
-            type oft:table-id; // 
-        }
-    }
-    grouping write-metadata {
-        description " Setup the metadata field for use later in     pipeline";
-        leaf metadata {
-            type oft:metadata;
-        }
-        leaf mask {
-            type oft:metadata;
-        }
-    }
-    
-    grouping meter {
-        description " Apply meter (rate limiter)";
-        leaf meter-id {
-            type oft:meter-id;
-        }
+        base oft:instruction-base;
     }
 
-    container instruction {
-        uses instructions;
+    container instruction-container {
+        uses instructions-grouping;
     }
 
-    grouping instructions {
-        leaf type {
-            type identityref {
-                base oft:instruction;
+    grouping instructions-grouping {
+        list instruction {
+            config false;
+            leaf type {
+                type identityref {
+                    base oft:instruction-base;
+                }
             }
         }
     }