Create YANG builders for all relevant model types 54/48254/16
authorTomas Slusny <tomas.slusny@pantheon.tech>
Fri, 11 Nov 2016 11:25:27 +0000 (12:25 +0100)
committerTomas Slusny <tomas.slusny@pantheon.tech>
Mon, 12 Dec 2016 13:45:22 +0000 (14:45 +0100)
Add new *message builders to flow, group, meter and port
YANG models to allow us to serialize and deserialize them
properly.
Add dependency on openflowjava for model-flow-base
Update set-tp-src and set-tp-dst yang with ip-protocol

See also: bug 7137

Change-Id: Ie552e5b06778ec0d0d803e34b9628fb1c627d1ab
Signed-off-by: Tomas Slusny <tomas.slusny@pantheon.tech>
features-he/src/main/features/features.xml
features/src/main/features/features.xml
model/model-flow-base/pom.xml
model/model-flow-base/src/main/yang/opendaylight-action-types.yang
model/model-flow-base/src/main/yang/opendaylight-flow-types.yang
model/model-flow-base/src/main/yang/opendaylight-group-types.yang
model/model-flow-base/src/main/yang/opendaylight-meter-types.yang
model/model-flow-base/src/main/yang/opendaylight-port-types.yang

index 3a8ccfe97178d0eeed4936a88ba6cc6b97e45f3a..e5bf0fcedbe6a4c3022a62e2ff50a2f503f21244 100644 (file)
         description="OpenDaylight :: OpenflowPlugin :: NSF :: Model">
         <!-- general models -->
         <feature version='${mdsal.model.version}'>odl-mdsal-models</feature>
-       <bundle>mvn:org.opendaylight.controller.model/model-inventory/{{VERSION}}</bundle>
-       <bundle>mvn:org.opendaylight.controller.model/model-topology/{{VERSION}}</bundle>
+        <bundle>mvn:org.opendaylight.controller.model/model-inventory/{{VERSION}}</bundle>
+        <bundle>mvn:org.opendaylight.controller.model/model-topology/{{VERSION}}</bundle>
         <!-- openflow specific models -->
+        <feature version ="${openflowjava.version}">odl-openflowjava-protocol</feature>
         <bundle>mvn:org.opendaylight.openflowplugin.model/model-flow-base/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.openflowplugin.model/model-flow-statistics/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.openflowplugin.model/model-flow-service/{{VERSION}}</bundle>
index 759b551dc8f9168aeb6770446a39fa6399e4210f..b14caa1be37424320b1c5688d378040c8bde4795 100644 (file)
@@ -59,6 +59,7 @@
         <bundle>mvn:org.opendaylight.controller.model/model-inventory/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.controller.model/model-topology/{{VERSION}}</bundle>
         <!-- openflow specific models -->
+        <feature version="${openflowjava.version}">odl-openflowjava-protocol</feature>
         <bundle>mvn:org.opendaylight.openflowplugin.model/model-flow-base/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.openflowplugin.model/model-flow-statistics/{{VERSION}}</bundle>
         <bundle>mvn:org.opendaylight.openflowplugin.model/model-flow-service/{{VERSION}}</bundle>
index 9ed1619afe64daf1ebd6a5b828c118fc8b3b36d6..268436dfed11c25243cdf739a77c5ce49681d1e4 100644 (file)
       <groupId>org.opendaylight.mdsal.model</groupId>
       <artifactId>opendaylight-l2-types</artifactId>
     </dependency>
+    <dependency>
+      <groupId>org.opendaylight.openflowjava</groupId>
+      <artifactId>openflow-protocol-api</artifactId>
+    </dependency>
   </dependencies>
 
   <scm>
index 86f35e97e88183c37807963fb59b6a94ed85fca4..efc8616acdc0e1a06a819227aac846379e65c5c5 100644 (file)
@@ -310,6 +310,11 @@ module opendaylight-action-types {
                  leaf port {
                      type inet:port-number;
                  }
+                 leaf ip-protocol {
+                     description "IP protocol.";
+                     type uint8;
+                     default 0;
+                 }
              }
 
             }
@@ -318,6 +323,11 @@ module opendaylight-action-types {
                  leaf port {
                      type inet:port-number;
                  }
+                 leaf ip-protocol {
+                     description "IP protocol.";
+                     type uint8;
+                     default 0;
+                 }
              }
 
             }
index 9de9cb7215173d72f6cf923efc0d4ca66986c6c8..b07c4bfe2b1ca129551eaf78e8e0be97c4fc38a4 100644 (file)
@@ -6,6 +6,8 @@ module opendaylight-flow-types {
     import opendaylight-match-types {prefix match; revision-date "2013-10-26";}
     import opendaylight-action-types {prefix action;}
     import opendaylight-meter-types {prefix meter; revision-date "2013-09-18";}
+    import openflow-protocol { prefix ofproto; revision-date "2013-07-31"; }
+    import openflow-types { prefix oft; revision-date "2013-07-31"; }
 
     revision "2013-10-26" {
         description "Initial revision of flow service";
@@ -268,4 +270,13 @@ module opendaylight-flow-types {
             uses match:match;
         }
     }
+
+    container flow-message {
+        uses flow;
+        uses ofproto:ofHeader;
+
+        leaf command {
+            type oft:flow-mod-command;
+        }
+    }
 }
index 42f94104ed31210763de328ffccb8d2a1afdcc02..e012172a1b1dacf11a9e97ccd4b60a3106f0ed30 100644 (file)
@@ -4,6 +4,8 @@ module opendaylight-group-types {
 
     import ietf-yang-types {prefix yang; revision-date "2013-07-15";}
     import opendaylight-action-types {prefix action;}
+    import openflow-protocol { prefix ofproto; revision-date "2013-07-31"; }
+    import openflow-types { prefix oft; revision-date "2013-07-31"; }
 
     revision "2013-10-18" {
         description "Initial revision of group service";
@@ -214,7 +216,7 @@ module opendaylight-group-types {
         }
     }
     
-    
+
     grouping group-statistics-reply {
        
         list group-stats {
@@ -249,5 +251,13 @@ module opendaylight-group-types {
             uses group;
         }
     }
-    
+
+    container group-message {
+        uses group;
+        uses ofproto:ofHeader;
+
+        leaf command {
+            type oft:group-mod-command;
+        }
+    }
 }
index 0f9f89c45f66669a879b537ca7c4e70495f76f9f..a6c7af67cebfc8eb22d2f6a894b82092dd7a5e8c 100644 (file)
@@ -3,6 +3,8 @@ module opendaylight-meter-types {
     prefix meter;
 
     import ietf-yang-types {prefix yang; revision-date "2013-07-15";}
+    import openflow-protocol { prefix ofproto; revision-date "2013-07-31"; }
+    import openflow-types { prefix oft; revision-date "2013-07-31"; }
 
 
     revision "2013-09-18" {
@@ -277,5 +279,14 @@ module opendaylight-meter-types {
     grouping meter-features-reply {
        uses meter-features;
     }
+
+    container meter-message {
+        uses meter;
+        uses ofproto:ofHeader;
+
+        leaf command {
+            type oft:meter-mod-command;
+        }
+    }
     
 }
index d1ed3c489d0f29cc227d82ed1273c33004c43999..bc0da3629b22b4a2fbbddf9e3aa062930337b36a 100644 (file)
@@ -4,7 +4,8 @@ module opendaylight-port-types {
 
     import ietf-yang-types {prefix yang; revision-date "2013-07-15";}
     import opendaylight-queue-types {prefix queue-types; revision-date "2013-09-25";}
-    
+    import openflow-protocol { prefix ofproto; revision-date "2013-07-31"; }
+
     revision "2013-09-25" {
         description "Initial revision of Port Inventory model";
     }
@@ -178,4 +179,9 @@ module opendaylight-port-types {
             }            
         }    
     }
+
+    container port-message {
+        uses common-port;
+        uses ofproto:ofHeader;
+    }
 }