Minor model refactor 12/5112/2
authorMichal Polkorab <michal.polkorab@pantheon.sk>
Tue, 4 Feb 2014 00:19:40 +0000 (16:19 -0800)
committerMichal Polkorab <michal.polkorab@pantheon.sk>
Wed, 12 Feb 2014 22:55:38 +0000 (14:55 -0800)
 - added "-grouping" to groupings to distinguish structures
 - moved match-grouping into openflow-extensible-match.yang
 - fixed actions structure (list action-list)
 - updated identities bases with "-base"
MERGE AFTER: https://git.opendaylight.org/gerrit/#/c/5109

Signed-off-by: Michal Polkorab <michal.polkorab@pantheon.sk>
Change-Id: Ie2bf3d446f8f5912796bd751e512189d6bf06018

41 files changed:
openflow-protocol-api/src/main/yang/openflow-action.yang
openflow-protocol-api/src/main/yang/openflow-augments.yang
openflow-protocol-api/src/main/yang/openflow-extensible-match.yang
openflow-protocol-api/src/main/yang/openflow-instruction.yang
openflow-protocol-api/src/main/yang/openflow-protocol.yang
openflow-protocol-api/src/main/yang/openflow-types.yang
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/deserialization/factories/MultipartReplyMessageFactory.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/deserialization/factories/OF10StatsReplyMessageFactory.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/FlowModInputMessageFactory.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/GroupModInputMessageFactory.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/MultipartRequestInputFactory.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/OF10FlowModInputMessageFactory.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/OF10PacketOutInputMessageFactory.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/PacketOutInputMessageFactory.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/util/ActionsDeserializer.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/util/ActionsSerializer.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/util/InstructionsDeserializer.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/util/InstructionsSerializer.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/util/MatchDeserializer.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/util/MatchIdsDeserializer.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/util/MatchIdsSerializer.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/util/MatchSerializer.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/util/OF10ActionsDeserializer.java
openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/util/OF10ActionsSerializer.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/deserialization/factories/MultipartReplyMessageFactoryTest.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/deserialization/factories/OF10StatsReplyMessageFactoryTest.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/FlowModInputMessageFactoryTest.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/GroupModInputMessageFactoryTest.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/OF10FlowModInputMessageFactoryTest.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/OF10PacketOutInputMessageFactoryTest.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/PacketOutInputMessageFactoryTest.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/multipart/TableFeaturesTest.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/util/ActionsDeserializerTest.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/util/ActionsSerializerTest.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/util/InstructionsDeserializerTest.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/util/InstructionsSerializerTest.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/util/MatchDeserializerTest.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/util/MatchSerializerTest.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/util/MatchSerializerTest2.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/util/OF10ActionsDeserializerTest.java
openflow-protocol-impl/src/test/java/org/opendaylight/openflowjava/protocol/impl/util/OF10ActionsSerializerTest.java

index 3f1168bd75799efbf48c55de3080efb5d14eb372..950d8b0c8142de764a84f02d2247b6e3ffbb6e48 100644 (file)
 
     identity output {
         description " Output to switch port. (both OF v1.0 and v1.3)";
-        base oft:action;
+        base oft:action-base;
     }
     identity copy_ttl_out {
         description " Copy TTL \"outwards\" -- from next-to-outermost to outermost ";
-        base oft:action;
+        base oft:action-base;
     }
     identity copy_ttl_in {
         description " Copy TTL \"inwards\" -- from outermost to next-to-outermost ";
-        base oft:action;
+        base oft:action-base;
     }
     identity set_mpls_ttl {
         description " MPLS TTL ";
-        base oft:action;
+        base oft:action-base;
     }
     identity dec_mpls_ttl {
         description " Decrement MPLS TTL ";
-        base oft:action;
+        base oft:action-base;
     }
     identity push_vlan {
         description " Push a new VLAN tag ";
-        base oft:action;
+        base oft:action-base;
     }
     identity pop_vlan {
         description " Pop the outer VLAN tag ";
-        base oft:action;
+        base oft:action-base;
     }
     identity push_mpls {
         description " Push a new MPLS tag ";
-        base oft:action;
+        base oft:action-base;
     }
     identity pop_mpls {
         description " Pop the outer MPLS tag ";
-        base oft:action;
+        base oft:action-base;
     }
     identity set_queue {
         description " Set queue id when outputting to a port ";
-        base oft:action;
+        base oft:action-base;
     }
     identity group {
         description " Apply group. ";
-        base oft:action;
+        base oft:action-base;
     }
     identity set_nw_ttl {
         description " IP TTL. ";
-        base oft:action;
+        base oft:action-base;
     }
     identity dec_nw_ttl {
         description " Decrement IP TTL. ";
-        base oft:action;
+        base oft:action-base;
     }
     identity set_field {
         description " Set a header field using OXM TLV format. ";
-        base oft:action;
+        base oft:action-base;
     }
     identity push_pbb {
         description " Push a new PBB service tag (I-TAG) ";
-        base oft:action;
+        base oft:action-base;
     }
     identity pop_pbb {
         description " Pop the outer PBB service tag (I-TAG) ";
-        base oft:action;
+        base oft:action-base;
     }
     identity experimenter {
         description "";
-        base oft:action;
+        base oft:action-base;
     }
     
     container actions-container {
-        uses actions;
+        uses actions-grouping;
     }
     
-    grouping actions {
-        list actions-list {
-            key "action";
-            container action {
-                leaf type {
-                    type identityref {
-                        base oft:action;
-                    }
+    grouping actions-grouping {
+        list action {
+            key "type";
+            leaf type {
+                type identityref {
+                    base oft:action-base;
                 }
             }
         }
     // OF1.0 structures
     identity set_vlan_vid {
         description "Set the 802.1q VLAN id (OF v1.0).";
-        base oft:action;
+        base oft:action-base;
     }
     identity set_vlan_pcp {
         description "Set the 802.1q priority (OF v1.0).";
-        base oft:action;
+        base oft:action-base;
     }
     identity strip_vlan {
         description "Strip the 802.1q header (OF v1.0).";
-        base oft:action;
+        base oft:action-base;
     }
     identity set_dl_src {
         description "Ethernet source address (OF v1.0).";
-        base oft:action;
+        base oft:action-base;
     }
     identity set_dl_dst {
         description "Ethernet destination address (OF v1.0).";
-        base oft:action;
+        base oft:action-base;
     }
     identity set_nw_src {
         description "IP source address (OF v1.0).";
-        base oft:action;
+        base oft:action-base;
     }
     identity set_nw_dst {
         description "IP destination address (OF v1.0).";
-        base oft:action;
+        base oft:action-base;
     }
     identity set_nw_tos {
         description "IP ToS (DSCP field, 6 bits) (OF v1.0).";
-        base oft:action;
+        base oft:action-base;
     }
     identity set_tp_src {
         description "TCP/UDP source port (OF v1.0).";
-        base oft:action;
+        base oft:action-base;
     }
     identity set_tp_dst {
         description "TCP/UDP destination port (OF v1.0).";
-        base oft:action;
+        base oft:action-base;
     }
     identity enqueue {
         description "Output to queue (OF v1.0).";
-        base oft:action;
+        base oft:action-base;
     }
 
 }
\ No newline at end of file
index a0ac66a5f6db360c84254f488a69b0c63d873b61..7fa157f440ed86762dea02e55e02fcb7ecf4da53 100644 (file)
      }\r
 \r
 // OFP_ACTION AUGMENTS\r
-     augment "/ofaction:actions-container/ofaction:actions-list/ofaction:action" {\r
+     augment "/ofaction:actions-container/ofaction:action" {\r
          ext:augment-identifier "port-action";\r
          leaf port {\r
              type oft:port-number;\r
          }\r
      }\r
-     augment "/ofaction:actions-container/ofaction:actions-list/ofaction:action" {\r
+     augment "/ofaction:actions-container/ofaction:action" {\r
          ext:augment-identifier "max-length-action";\r
          leaf max-length {\r
              type uint16;\r
          }\r
      }\r
-     augment "/ofaction:actions-container/ofaction:actions-list/ofaction:action" {\r
+     augment "/ofaction:actions-container/ofaction:action" {\r
          ext:augment-identifier "mpls-ttl-action";\r
          leaf mpls-ttl {\r
              type uint8;\r
          }\r
      }\r
-     augment "/ofaction:actions-container/ofaction:actions-list/ofaction:action" {\r
+     augment "/ofaction:actions-container/ofaction:action" {\r
          ext:augment-identifier "ethertype-action";\r
          leaf ethertype {\r
              type oft:ether-type;\r
          }\r
      }\r
-     augment "/ofaction:actions-container/ofaction:actions-list/ofaction:action" {\r
+     augment "/ofaction:actions-container/ofaction:action" {\r
          ext:augment-identifier "queue-id-action";\r
          leaf queue-id {\r
              type uint32;\r
          }\r
      }\r
-     augment "/ofaction:actions-container/ofaction:actions-list/ofaction:action" {\r
+     augment "/ofaction:actions-container/ofaction:action" {\r
          ext:augment-identifier "group-id-action";\r
          leaf group-id {\r
              type uint32;\r
          }\r
      }\r
-     augment "/ofaction:actions-container/ofaction:actions-list/ofaction:action" {\r
+     augment "/ofaction:actions-container/ofaction:action" {\r
          ext:augment-identifier "nw-ttl-action";\r
          leaf nw-ttl {\r
              type uint8;\r
          }\r
      }\r
-     augment "/ofaction:actions-container/ofaction:actions-list/ofaction:action" {\r
+     augment "/ofaction:actions-container/ofaction:action" {\r
          ext:augment-identifier "oxm-fields-action";\r
-         uses oxm:oxm-fields;\r
+         uses oxm:oxm-fields-grouping;\r
      }\r
-     augment "/ofaction:actions-container/ofaction:actions-list/ofaction:action" {\r
+     augment "/ofaction:actions-container/ofaction:action" {\r
          ext:augment-identifier "experimenter-action";\r
          leaf experimenter {\r
              type uint32;\r
          }\r
      }\r
      // OF1.0 structures\r
-     augment "/ofaction:actions-container/ofaction:actions-list/ofaction:action" {\r
+     augment "/ofaction:actions-container/ofaction:action" {\r
          ext:augment-identifier "vlan-vid-action";\r
          leaf vlan-vid {\r
              type uint16;\r
          }\r
      }\r
-     augment "/ofaction:actions-container/ofaction:actions-list/ofaction:action" {\r
+     augment "/ofaction:actions-container/ofaction:action" {\r
          ext:augment-identifier "vlan-pcp-action";\r
          leaf vlan-pcp {\r
              type uint8;\r
          }\r
      }\r
-     augment "/ofaction:actions-container/ofaction:actions-list/ofaction:action" {\r
+     augment "/ofaction:actions-container/ofaction:action" {\r
          ext:augment-identifier "dl-address-action";\r
          leaf dl-address {\r
              type yang:mac-address;\r
          }\r
      }\r
-     augment "/ofaction:actions-container/ofaction:actions-list/ofaction:action" {\r
+     augment "/ofaction:actions-container/ofaction:action" {\r
          ext:augment-identifier "nw-tos-action";\r
          leaf nw-tos {\r
              type uint8;\r
          }\r
      }\r
-     augment "/ofaction:actions-container/ofaction:actions-list/ofaction:action" {\r
+     augment "/ofaction:actions-container/ofaction:action" {\r
          ext:augment-identifier "ip-address-action";\r
          leaf ip-address {\r
              type inet:ipv4-address;\r
 // OFP_TABLE_FEATURES_PROPERTIES AUGMENTS\r
      augment "/ofproto:table-features-properties-container/ofproto:table-feature-properties" {\r
          ext:augment-identifier "instruction-related-table-feature-property";\r
-         uses ofinstruction:instructions;\r
+         uses ofinstruction:instructions-grouping;\r
      }\r
      augment "/ofproto:table-features-properties-container/ofproto:table-feature-properties" {\r
          ext:augment-identifier "next-table-related-table-feature-property";\r
      }\r
      augment "/ofproto:table-features-properties-container/ofproto:table-feature-properties" {\r
          ext:augment-identifier "action-related-table-feature-property";\r
-         uses ofaction:actions;\r
+         uses ofaction:actions-grouping;\r
      }\r
      augment "/ofproto:table-features-properties-container/ofproto:table-feature-properties" {\r
          ext:augment-identifier "oxm-related-table-feature-property";\r
-         uses oxm:oxm-fields;\r
+         uses oxm:oxm-fields-grouping;\r
      }\r
      augment "/ofproto:table-features-properties-container/ofproto:table-feature-properties" {\r
          ext:augment-identifier "experimenter-related-table-feature-property";\r
      }\r
 \r
 // OFP_INSTRUCTION AUGMENTS\r
-     augment "/ofinstruction:instruction-container/ofinstruction:instructions" {\r
+     augment "/ofinstruction:instruction-container/ofinstruction:instruction" {\r
          ext:augment-identifier "table-id-instruction";\r
          leaf table-id {\r
              type uint8;\r
          }\r
      }\r
-     augment "/ofinstruction:instruction-container/ofinstruction:instructions" {\r
+     augment "/ofinstruction:instruction-container/ofinstruction:instruction" {\r
          ext:augment-identifier "metadata-instruction";\r
          leaf metadata {\r
              type binary;\r
              type binary;\r
          }\r
      }\r
-     augment "/ofinstruction:instruction-container/ofinstruction:instructions" {\r
+     augment "/ofinstruction:instruction-container/ofinstruction:instruction" {\r
          ext:augment-identifier "actions-instruction";\r
-         uses ofaction:actions;\r
+         uses ofaction:actions-grouping;\r
      }\r
-     augment "/ofinstruction:instruction-container/ofinstruction:instructions" {\r
+     augment "/ofinstruction:instruction-container/ofinstruction:instruction" {\r
          ext:augment-identifier "meter-id-instruction";\r
          leaf meter-id {\r
              type uint32;\r
          }\r
      }\r
-     augment "/ofinstruction:instruction-container/ofinstruction:instructions" {\r
+     augment "/ofinstruction:instruction-container/ofinstruction:instruction" {\r
          ext:augment-identifier "experimenter-instruction";\r
          leaf experimenter {\r
              type uint32;\r
index 7caf73f0e792c069ee314beb80b2641540dbd24a..52da67203d731500d21e703601699adbd5d0fe39 100644 (file)
         }
 
         container oxm-container {
-            uses oxm-fields;
+            uses oxm-fields-grouping;
         }
         
-        grouping oxm-fields {
+        grouping oxm-fields-grouping {
             list match-entries {
                 description "OXM TLV-structures (Type Length Value)";
                 key "oxm-class oxm-match-field has-mask";
                 } 
             }
         }
-        
+
+        grouping match-grouping {
+            container match {
+                description "Match structure (OF v1.3)";
+                leaf type {
+                    type identityref {
+                        base oft:match-type-base;
+                    }
+                }
+                uses oxm-fields-grouping;
+            }
+        }
+
         // OF1.0 structures
         grouping match-v10-grouping {
             container match-v10 {
index 6e7c8a299c6bc06296fdce7dcbc2c664c9d7f968..91aedd00963d59d6d88f068aa370c20b7f717609 100644 (file)
 
     identity goto_table {
         description " Setup the next table in the lookup pipeline";
-        base oft:instruction;
+        base oft:instruction-base;
     }
     identity write_metadata {
         description " Setup the metadata field for use later in     pipeline";
-        base oft:instruction;
+        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;
+        base oft:instruction-base;
     }
 
     container instruction-container {
-        uses instructions;
+        uses instructions-grouping;
     }
 
-    grouping instructions {
-        list instructions {
+    grouping instructions-grouping {
+        list instruction {
             key "type";
             leaf type {
                 type identityref {
-                    base oft:instruction;
+                    base oft:instruction-base;
                 }
             }
         }
index d95b1e07b89c740ffb47ad2bd784ab544e13a376..63b21d645e3e67268c58802fcd2afef399ea02b9 100644 (file)
@@ -22,7 +22,7 @@
     }\r
 \r
     // Generic Structures\r
-        grouping port {\r
+        grouping port-grouping {\r
             reference "ofp_port";\r
             leaf port-no {\r
                 type uint32;\r
             }\r
         }\r
 \r
-        grouping match-grouping {\r
-            container match {\r
-                description "Match structure (OF v1.3)";\r
-                leaf type {\r
-                    type identityref {\r
-                        base oft:match-type-base;\r
-                    }\r
-                }\r
-                uses oxm:oxm-fields;\r
-            }\r
-        }\r
-\r
-        grouping buckets {\r
+        grouping buckets-grouping {\r
                 list buckets-list {\r
-                    uses bucket;\r
+                    uses bucket-grouping;\r
                 }\r
             }\r
 \r
-            grouping bucket {\r
+            grouping bucket-grouping {\r
                 description "Bucket for use in groups.";\r
                 leaf weight {\r
                     description "Relative weight of bucket. Only\r
                     type uint32;\r
                 }\r
 \r
-                uses ofaction:actions;\r
+                uses ofaction:actions-grouping;\r
             }\r
             \r
         container table-features-properties-container {\r
-            uses table-features-properties;\r
+            uses table-features-properties-grouping;\r
         }\r
 \r
-        grouping table-features-properties {\r
+        grouping table-features-properties-grouping {\r
             list table-feature-properties {\r
                 key "type";\r
                 leaf type {\r
                     type oft:action-type-v10;\r
                 }\r
                 list phy-port {\r
-                    uses port;\r
+                    uses port-grouping;\r
                 }\r
             }\r
             grouping get-config-request {\r
                     // Cookie of the flow entry that was looked up.\r
                     type uint64;\r
                 }\r
-                uses match-grouping;\r
+                uses oxm:match-grouping;\r
 \r
                 leaf data {\r
                     type binary;\r
                 leaf byte-count {\r
                     type uint64;\r
                 }\r
-                uses match-grouping;\r
+                uses oxm:match-grouping;\r
                 \r
                 // OF1.0 structures\r
                 uses oxm:match-v10-grouping;\r
                 \r
                 uses ofHeader;\r
                 \r
-                uses port;\r
+                uses port-grouping;\r
                 \r
                 leaf reason {\r
                     type oft:port-reason;\r
                 \r
                 uses ofHeader;\r
                 \r
-                uses ofaction:actions;\r
+                uses ofaction:actions-grouping;\r
                 \r
                 leaf data {\r
                     type binary;\r
                 leaf flags {\r
                     type oft:flow-mod-flags;\r
                 }\r
-                uses match-grouping;\r
+                uses oxm:match-grouping;\r
                 \r
-                uses ofinstruction:instructions;\r
+                uses ofinstruction:instructions-grouping;\r
                 \r
                 // OF1.0 structures\r
                 leaf flags-v10 {\r
                     type oft:flow-mod-flags-v10;\r
                 }\r
                 uses oxm:match-v10-grouping;\r
-                uses ofaction:actions;\r
+                uses ofaction:actions-grouping;\r
             } \r
             grouping group-mod {\r
                 reference "OFPT_GROUP_MOD message in Openflow Switch 1.3 Spec";\r
                     type oft:group-id;\r
                 }\r
                 \r
-                uses buckets;\r
+                uses buckets-grouping;\r
             }\r
             \r
             grouping port-mod {\r
                             leaf cookie-mask {\r
                                 type uint64;\r
                             }\r
-                            uses match-grouping;\r
+                            uses oxm:match-grouping;\r
                             \r
                             // OF1.0 structures\r
                             uses oxm:match-v10-grouping;\r
                             leaf cookie-mask {\r
                                 type uint64;\r
                             }\r
-                            uses match-grouping;\r
+                            uses oxm:match-grouping;\r
                             \r
                             // OF1.0 structures\r
                             uses oxm:match-v10-grouping;\r
                                 leaf max-entries {\r
                                     type uint32;\r
                                 }\r
-                                uses table-features-properties;\r
+                                uses table-features-properties-grouping;\r
                             }\r
                         }\r
                     }\r
                                 leaf byte-count {\r
                                     type uint64;\r
                                 }\r
-                                uses match-grouping;\r
+                                uses oxm:match-grouping;\r
                                 \r
-                                uses ofinstruction:instructions;\r
+                                uses ofinstruction:instructions-grouping;\r
                                 \r
                                 // OF1.0 structures\r
                                 uses oxm:match-v10-grouping;\r
-                                uses ofaction:actions;\r
+                                uses ofaction:actions-grouping;\r
                             }\r
                         }\r
                     }\r
                                 leaf group-id {\r
                                     type oft:group-id;\r
                                 }\r
-                                uses buckets;\r
+                                uses buckets-grouping;\r
                             }\r
                         }\r
                     }\r
                                 leaf max-entries {\r
                                     type uint32;\r
                                 }\r
-                                uses table-features-properties;\r
+                                uses table-features-properties-grouping;\r
                             }\r
                         }\r
                     }\r
                     case multipart-reply-port-desc-case {\r
                         container multipart-reply-port-desc {\r
                             list ports {\r
-                                uses port;\r
+                                uses port-grouping;\r
                             }\r
                         }\r
                     }\r
                 reference "OFPT_GET_ASYNC_REQUEST message in Openflow Switch 1.3 Spec";\r
                 /* Controller/switch message */\r
 \r
-                uses ofHeader;                \r
+                uses ofHeader;\r
             } \r
             grouping get-async-reply {\r
                 reference "OFPT_GET_ASYNC_REPLY message in Openflow Switch 1.3 Spec";\r
index 48fd179c2bb22c33359d87d41b9594c2abe4d90b..669c86f087e2fd7420b4f6ba1e0f3826a891e1c0 100644 (file)
         base oft:match-type-base;
     }
 
-    identity instruction {
+    identity instruction-base {
         description "Base identity for instruction types";
     }
 
-    identity action {
+    identity action-base {
         description "Base identity for action types";
     }
 
index f03563bdf5dd50afe47127096eef7aadf1989789..3ef96147d95b848333fb223fbbddfc6826214b7a 100644 (file)
@@ -33,7 +33,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.OxmRelatedTableFeaturePropertyBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.table.features.properties.container.table.feature.properties.NextTableIds;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.table.features.properties.container.table.feature.properties.NextTableIdsBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsList;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.ActionType;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.FlowModFlags;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.GroupCapabilities;
@@ -54,8 +54,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev13
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.TableFeaturesPropType;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.MultipartReplyMessage;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.MultipartReplyMessageBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.buckets.BucketsList;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.buckets.BucketsListBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.buckets.grouping.BucketsList;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.buckets.grouping.BucketsListBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.meter.band.header.meter.band.MeterBandDropCaseBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.meter.band.header.meter.band.MeterBandDscpRemarkCaseBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.meter.band.header.meter.band.MeterBandExperimenterCaseBuilder;
@@ -133,8 +133,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.reply.multipart.reply.body.multipart.reply.table.features._case.MultipartReplyTableFeaturesBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.reply.multipart.reply.body.multipart.reply.table.features._case.multipart.reply.table.features.TableFeatures;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.reply.multipart.reply.body.multipart.reply.table.features._case.multipart.reply.table.features.TableFeaturesBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.table.features.properties.TableFeatureProperties;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.table.features.properties.TableFeaturePropertiesBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.table.features.properties.grouping.TableFeatureProperties;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.table.features.properties.grouping.TableFeaturePropertiesBuilder;
 
 /**
  * Translates MultipartReply messages
@@ -293,7 +293,7 @@ public class MultipartReplyMessageFactory implements OFDeserializer<MultipartRep
             subInput.readBytes(byteCount);
             flowStatsBuilder.setByteCount(new BigInteger(1, byteCount));
             flowStatsBuilder.setMatch(MatchDeserializer.createMatch(subInput));
-            flowStatsBuilder.setInstructions(InstructionsDeserializer.createInstructions(subInput, subInput.readableBytes()));
+            flowStatsBuilder.setInstruction(InstructionsDeserializer.createInstructions(subInput, subInput.readableBytes()));
             flowStatsList.add(flowStatsBuilder.build());
         }
         flowBuilder.setFlowStats(flowStatsList);
@@ -392,7 +392,7 @@ public class MultipartReplyMessageFactory implements OFDeserializer<MultipartRep
             if (type.equals(TableFeaturesPropType.OFPTFPTINSTRUCTIONS)
                     || type.equals(TableFeaturesPropType.OFPTFPTINSTRUCTIONSMISS)) {
                 InstructionRelatedTableFeaturePropertyBuilder insBuilder = new InstructionRelatedTableFeaturePropertyBuilder();
-                insBuilder.setInstructions(InstructionsDeserializer.createInstructionIds(input, propertyLength - COMMON_PROPERTY_LENGTH));
+                insBuilder.setInstruction(InstructionsDeserializer.createInstructionIds(input, propertyLength - COMMON_PROPERTY_LENGTH));
                 builder.addAugmentation(InstructionRelatedTableFeatureProperty.class, insBuilder.build());
             } else if (type.equals(TableFeaturesPropType.OFPTFPTNEXTTABLES)
                     || type.equals(TableFeaturesPropType.OFPTFPTNEXTTABLESMISS)) {
@@ -412,7 +412,7 @@ public class MultipartReplyMessageFactory implements OFDeserializer<MultipartRep
                     || type.equals(TableFeaturesPropType.OFPTFPTAPPLYACTIONS)
                     || type.equals(TableFeaturesPropType.OFPTFPTAPPLYACTIONSMISS)) {
                 ActionRelatedTableFeaturePropertyBuilder actionBuilder = new ActionRelatedTableFeaturePropertyBuilder();
-                actionBuilder.setActionsList(ActionsDeserializer.createActionIds(input, propertyLength - COMMON_PROPERTY_LENGTH));
+                actionBuilder.setAction(ActionsDeserializer.createActionIds(input, propertyLength - COMMON_PROPERTY_LENGTH));
                 builder.addAugmentation(ActionRelatedTableFeatureProperty.class, actionBuilder.build());
             } else if (type.equals(TableFeaturesPropType.OFPTFPTMATCH)
                     || type.equals(TableFeaturesPropType.OFPTFPTWILDCARDS)
@@ -846,9 +846,9 @@ public class MultipartReplyMessageFactory implements OFDeserializer<MultipartRep
                 bucketsBuilder.setWatchPort(new PortNumber(input.readUnsignedInt()));
                 bucketsBuilder.setWatchGroup(input.readUnsignedInt());
                 input.skipBytes(PADDING_IN_BUCKETS_HEADER);
-                List<ActionsList> actionsList = ActionsDeserializer
-                        .createActionsList(input, bucketsLength - BUCKETS_HEADER_LENGTH);
-                bucketsBuilder.setActionsList(actionsList);
+                List<Action> actionsList = ActionsDeserializer
+                        .createActions(input, bucketsLength - BUCKETS_HEADER_LENGTH);
+                bucketsBuilder.setAction(actionsList);
                 bucketsList.add(bucketsBuilder.build());
                 actualLength += bucketsLength;
             }
index 94361a92bdb0600a904155ce684fa7c98edf60eb..a78d464394d7f7d2925423dff298c1104fdb20eb 100644 (file)
@@ -168,7 +168,7 @@ public class OF10StatsReplyMessageFactory implements OFDeserializer<MultipartRep
             byte[] byteCount = new byte[EncodeConstants.SIZE_OF_LONG_IN_BYTES];
             input.readBytes(byteCount);
             flowStatsBuilder.setByteCount(new BigInteger(1, byteCount));
-            flowStatsBuilder.setActionsList(OF10ActionsDeserializer
+            flowStatsBuilder.setAction(OF10ActionsDeserializer
                     .createActionsList(input, length - LENGTH_OF_FLOW_STATS));
             flowStatsList.add(flowStatsBuilder.build());
         }
index cb2a5f74bef6e412485feb95d34d44d3262b9420..ba4f97088e375efe7fa14980af28e1687474df95 100644 (file)
@@ -61,13 +61,13 @@ public class FlowModInputMessageFactory implements OFSerializer<FlowModInput> {
         out.writeShort(createFlowModFlagsBitmask(message.getFlags()));
         ByteBufUtils.padBuffer(PADDING_IN_FLOW_MOD_MESSAGE, out);
         MatchSerializer.encodeMatch(message.getMatch(), out);
-        InstructionsSerializer.encodeInstructions(message.getInstructions(), out);
+        InstructionsSerializer.encodeInstructions(message.getInstruction(), out);
     }
 
     @Override
     public int computeLength(FlowModInput message) {
         return MESSAGE_LENGTH + MatchSerializer.computeMatchLength(message.getMatch())
-                + InstructionsSerializer.computeInstructionsLength(message.getInstructions());
+                + InstructionsSerializer.computeInstructionsLength(message.getInstruction());
     }
 
     @Override
index a9a2c510d2b3d801a12dfc0f5b9053e9aad2e56d..c92db9886d2a3571f01cfc2655f5f874be72d679 100644 (file)
@@ -16,7 +16,7 @@ import org.opendaylight.openflowjava.protocol.impl.serialization.OFSerializer;
 import org.opendaylight.openflowjava.protocol.impl.util.ActionsSerializer;
 import org.opendaylight.openflowjava.protocol.impl.util.ByteBufUtils;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.GroupModInput;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.buckets.BucketsList;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.buckets.grouping.BucketsList;
 
 /**
  * Translates GroupMod messages
@@ -74,7 +74,7 @@ public class GroupModInputMessageFactory implements OFSerializer<GroupModInput>
                 outBuffer.writeInt(currentBucket.getWatchPort().getValue().intValue());
                 outBuffer.writeInt(currentBucket.getWatchGroup().intValue());
                 ByteBufUtils.padBuffer(PADDING_IN_BUCKET, outBuffer);
-                ActionsSerializer.encodeActions(currentBucket.getActionsList(), outBuffer);
+                ActionsSerializer.encodeActions(currentBucket.getAction(), outBuffer);
             }
         }
     }
@@ -82,7 +82,8 @@ public class GroupModInputMessageFactory implements OFSerializer<GroupModInput>
     private static int computeLengthOfBucket(BucketsList bucket) {
         int lengthOfBuckets = 0;
         if (bucket != null) {
-            lengthOfBuckets = LENGTH_OF_BUCKET_STRUCTURE + ActionsSerializer.computeLengthOfActions(bucket.getActionsList());
+            lengthOfBuckets = LENGTH_OF_BUCKET_STRUCTURE
+                    + ActionsSerializer.computeLengthOfActions(bucket.getAction());
         }
         return lengthOfBuckets;
     }
@@ -91,7 +92,8 @@ public class GroupModInputMessageFactory implements OFSerializer<GroupModInput>
         int lengthOfBuckets = 0;
         if (buckets != null) {
             for (BucketsList currentBucket : buckets) {
-                lengthOfBuckets += LENGTH_OF_BUCKET_STRUCTURE + ActionsSerializer.computeLengthOfActions(currentBucket.getActionsList());
+                lengthOfBuckets += LENGTH_OF_BUCKET_STRUCTURE
+                        + ActionsSerializer.computeLengthOfActions(currentBucket.getAction());
             }
         }
         return lengthOfBuckets;
index ac4a3105df3be1c964eb7509d8d5e5b041187854..0fdeff1cdc19b5f4341964cb42ff1b3def8beea2 100644 (file)
@@ -26,14 +26,14 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.NextTableRelatedTableFeatureProperty;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.OxmRelatedTableFeatureProperty;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.table.features.properties.container.table.feature.properties.NextTableIds;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsList;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.Experimenter;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.Instructions;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.grouping.Instruction;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.MultipartRequestFlags;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.MultipartType;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.TableConfig;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.TableFeaturesPropType;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntries;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntries;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.MultipartRequestInput;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.MultipartRequestBody;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.MultipartRequestAggregateCase;
@@ -61,7 +61,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.multipart.request.queue._case.MultipartRequestQueue;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.multipart.request.table.features._case.MultipartRequestTableFeatures;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.multipart.request.table.features._case.multipart.request.table.features.TableFeatures;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.table.features.properties.TableFeatureProperties;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.table.features.properties.grouping.TableFeatureProperties;
 
 /**
  * Translates MultipartRequest messages
@@ -241,7 +241,7 @@ public class MultipartRequestInputFactory implements OFSerializer<MultipartReque
                 if (featProp.getAugmentation(InstructionRelatedTableFeatureProperty.class) != null) {
                     InstructionRelatedTableFeatureProperty property =
                             featProp.getAugmentation(InstructionRelatedTableFeatureProperty.class);
-                    length += property.getInstructions().size() * STRUCTURE_HEADER_LENGTH;
+                    length += property.getInstruction().size() * STRUCTURE_HEADER_LENGTH;
                     length += paddingNeeded(length);
                 } else if (featProp.getAugmentation(NextTableRelatedTableFeatureProperty.class) != null) {
                     NextTableRelatedTableFeatureProperty property =
@@ -251,7 +251,7 @@ public class MultipartRequestInputFactory implements OFSerializer<MultipartReque
                 } else if (featProp.getAugmentation(ActionRelatedTableFeatureProperty.class) != null) {
                     ActionRelatedTableFeatureProperty property =
                             featProp.getAugmentation(ActionRelatedTableFeatureProperty.class);
-                    length += property.getActionsList().size() * STRUCTURE_HEADER_LENGTH;
+                    length += property.getAction().size() * STRUCTURE_HEADER_LENGTH;
                     length += paddingNeeded(length);
                 } else if (featProp.getAugmentation(OxmRelatedTableFeatureProperty.class) != null) {
                     OxmRelatedTableFeatureProperty property =
@@ -476,12 +476,12 @@ public class MultipartRequestInputFactory implements OFSerializer<MultipartReque
     private static void writeInstructionRelatedTableProperty(ByteBuf output,
             TableFeatureProperties property, byte code) {
         output.writeShort(code);
-        List<Instructions> instructions = property.
-                getAugmentation(InstructionRelatedTableFeatureProperty.class).getInstructions();
+        List<Instruction> instructions = property.
+                getAugmentation(InstructionRelatedTableFeatureProperty.class).getInstruction();
         int length = TABLE_FEAT_HEADER_LENGTH;
         int padding = 0;
         if (instructions != null) {
-            for (Instructions instruction : instructions) {
+            for (Instruction instruction : instructions) {
                 if (instruction.getType().isAssignableFrom(Experimenter.class)) {
                     length += EncodeConstants.EXPERIMENTER_IDS_LENGTH;
                 } else {
@@ -531,13 +531,13 @@ public class MultipartRequestInputFactory implements OFSerializer<MultipartReque
     private static void writeActionsRelatedTableProperty(ByteBuf output,
             TableFeatureProperties property, byte code) {
         output.writeShort(code);
-        List<ActionsList> actions = property.
-                getAugmentation(ActionRelatedTableFeatureProperty.class).getActionsList();
+        List<Action> actions = property.
+                getAugmentation(ActionRelatedTableFeatureProperty.class).getAction();
         int length = TABLE_FEAT_HEADER_LENGTH;
         int padding = 0;
         if (actions != null) {
-            for (ActionsList action : actions) {
-                if (action.getAction().getType().isAssignableFrom(Experimenter.class)) {
+            for (Action action : actions) {
+                if (action.getType().isAssignableFrom(Experimenter.class)) {
                     length += EncodeConstants.EXPERIMENTER_IDS_LENGTH;
                 } else {
                     length += STRUCTURE_HEADER_LENGTH;
index e4c1d583c307c3a2b618004e0df2e1ca748420e7..7fe217a6a5e725bd3f55074eed4358a1671808d5 100644 (file)
@@ -57,12 +57,12 @@ public class OF10FlowModInputMessageFactory implements OFSerializer<FlowModInput
         out.writeInt(message.getBufferId().intValue());
         out.writeShort(message.getOutPort().getValue().intValue());
         out.writeShort(createFlowModFlagsBitmask(message.getFlagsV10()));
-        OF10ActionsSerializer.encodeActionsV10(out, message.getActionsList());
+        OF10ActionsSerializer.encodeActionsV10(out, message.getAction());
     }
 
     @Override
     public int computeLength(FlowModInput message) {
-        return MESSAGE_LENGTH + OF10ActionsSerializer.computeActionsLength(message.getActionsList());
+        return MESSAGE_LENGTH + OF10ActionsSerializer.computeActionsLength(message.getAction());
     }
 
     @Override
index cf35ffff682e02126eb9e50489b97bbb0f8a5774..6684afaa0b360e7fbf979a3d477e09f9d442524f 100644 (file)
@@ -46,8 +46,8 @@ public class OF10PacketOutInputMessageFactory implements OFSerializer<PacketOutI
         ByteBufUtils.writeOFHeader(instance, message, out);
         out.writeInt(message.getBufferId().intValue());
         out.writeShort(message.getInPort().getValue().intValue());
-        out.writeShort(OF10ActionsSerializer.computeActionsLength(message.getActionsList()));
-        OF10ActionsSerializer.encodeActionsV10(out, message.getActionsList());
+        out.writeShort(OF10ActionsSerializer.computeActionsLength(message.getAction()));
+        OF10ActionsSerializer.encodeActionsV10(out, message.getAction());
         byte[] data = message.getData();
         if (data != null) {
             out.writeBytes(data);
@@ -56,7 +56,7 @@ public class OF10PacketOutInputMessageFactory implements OFSerializer<PacketOutI
 
     @Override
     public int computeLength(PacketOutInput message) {
-        int length = MESSAGE_LENGTH + OF10ActionsSerializer.computeActionsLength(message.getActionsList());
+        int length = MESSAGE_LENGTH + OF10ActionsSerializer.computeActionsLength(message.getAction());
         byte[] data = message.getData();
         if (data != null) {
             length += data.length;
index 4bdfec95ab682ec059e2658669a174779426e58e..443830bd388327ed92fe850674741aa9c9abc4c3 100644 (file)
@@ -48,9 +48,9 @@ public class PacketOutInputMessageFactory implements OFSerializer<PacketOutInput
         ByteBufUtils.writeOFHeader(instance, message, out);
         out.writeInt(message.getBufferId().intValue());
         out.writeInt(message.getInPort().getValue().intValue());
-        out.writeShort(ActionsSerializer.computeLengthOfActions(message.getActionsList()));
+        out.writeShort(ActionsSerializer.computeLengthOfActions(message.getAction()));
         ByteBufUtils.padBuffer(PADDING_IN_PACKET_OUT_MESSAGE, out);
-        ActionsSerializer.encodeActions(message.getActionsList(), out);
+        ActionsSerializer.encodeActions(message.getAction(), out);
         byte[] data = message.getData();
         if (data != null) {
             out.writeBytes(data);
@@ -60,7 +60,7 @@ public class PacketOutInputMessageFactory implements OFSerializer<PacketOutInput
     @Override
     public int computeLength(PacketOutInput message) {
         int length = MESSAGE_LENGTH;
-        length += ActionsSerializer.computeLengthOfActions(message.getActionsList());
+        length += ActionsSerializer.computeLengthOfActions(message.getAction());
         byte[] data = message.getData();
         if (data != null) {
             length += data.length;
index f4227fdcf978739815d70ce565efda7308f0e297..b3175232ddaf86f7de5cc12174cd515faf93b6c3 100644 (file)
@@ -48,9 +48,9 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev1
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetMplsTtl;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetNwTtl;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetQueue;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsList;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsListBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.actions.list.ActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.ActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.ActionBase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.EtherType;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortNumber;
 
@@ -74,71 +74,71 @@ public abstract class ActionsDeserializer {
      * @param actionsLength length of buckets
      * @return ActionsList
      */
-    public static List<ActionsList> createActionsList(ByteBuf input, int actionsLength) {
-        ActionsListBuilder actionsListBuilder = new ActionsListBuilder();
-        List<ActionsList> actionsList = new ArrayList<>();
+    public static List<Action> createActions(ByteBuf input, int actionsLength) {
+        List<Action> actions = new ArrayList<>();
         int length = 0;
         while (length < actionsLength) {
             int type = input.readUnsignedShort();
             int currentActionLength = input.readUnsignedShort();
+            ActionBuilder actionBuilder = new ActionBuilder();
             switch(type) {
             case 0:
-                actionsList.add(createOutputAction(input, actionsListBuilder));
+                actions.add(createOutputAction(input, actionBuilder));
                 break;
             case 11:
-                actionsList.add(createCopyTtlOutAction(input, actionsListBuilder));
+                actions.add(createCopyTtlOutAction(input, actionBuilder));
                 break;
             case 12:
-                actionsList.add(createCopyTtlInAction(input, actionsListBuilder));
+                actions.add(createCopyTtlInAction(input, actionBuilder));
                 break;
             case 15:
-                actionsList.add(createSetMplsTtlAction(input, actionsListBuilder));
+                actions.add(createSetMplsTtlAction(input, actionBuilder));
                 break;
             case 16:
-                actionsList.add(createDecMplsTtlOutAction(input, actionsListBuilder));
+                actions.add(createDecMplsTtlOutAction(input, actionBuilder));
                 break;
             case 17:
-                actionsList.add(createPushVlanAction(input, actionsListBuilder));
+                actions.add(createPushVlanAction(input, actionBuilder));
                 break;
             case 18:
-                actionsList.add(createPopVlanAction(input, actionsListBuilder));
+                actions.add(createPopVlanAction(input, actionBuilder));
                 break;
             case 19:
-                actionsList.add(createPushMplsAction(input, actionsListBuilder));
+                actions.add(createPushMplsAction(input, actionBuilder));
                 break;
             case 20:
-                actionsList.add(createPopMplsAction(input, actionsListBuilder));
+                actions.add(createPopMplsAction(input, actionBuilder));
                 break;
             case 21:
-                actionsList.add(createSetQueueAction(input, actionsListBuilder));
+                actions.add(createSetQueueAction(input, actionBuilder));
                 break;
             case 22:
-                actionsList.add(createGroupAction(input, actionsListBuilder));
+                actions.add(createGroupAction(input, actionBuilder));
                 break;
             case 23:
-                actionsList.add(createSetNwTtlAction(input, actionsListBuilder));
+                actions.add(createSetNwTtlAction(input, actionBuilder));
                 break;
             case 24:
-                actionsList.add(createDecNwTtlAction(input, actionsListBuilder));
+                actions.add(createDecNwTtlAction(input, actionBuilder));
                 break;
             case 25:
-                actionsList.add(createSetFieldAction(input, actionsListBuilder, currentActionLength));
+                actions.add(createSetFieldAction(input, actionBuilder, currentActionLength));
                 break;
             case 26:
-                actionsList.add(createPushPbbAction(input, actionsListBuilder));
+                actions.add(createPushPbbAction(input, actionBuilder));
                 break;
             case 27:
-                actionsList.add(createPopPbbAction(input, actionsListBuilder));
+                actions.add(createPopPbbAction(input, actionBuilder));
                 break;
             case 0xFFFF:
-                actionsList.add(createExperimenterAction(input, actionsListBuilder));
+                actions.add(createExperimenterAction(input, actionBuilder));
                 break;
             default:
                 break;
             }
             length += currentActionLength;
         } 
-        return actionsList;
+        return actions;
     }
 
     /**
@@ -147,16 +147,14 @@ public abstract class ActionsDeserializer {
      * @param actionsLength length of actions
      * @return ActionsList
      */
-    public static List<ActionsList> createActionIds(ByteBuf input, int actionsLength) {
-        List<ActionsList> actionsList = new ArrayList<>();
+    public static List<Action> createActionIds(ByteBuf input, int actionsLength) {
+        List<Action> actionsList = new ArrayList<>();
         int length = 0;
         ActionBuilder builder;
-        ActionsListBuilder listBuilder;
         while (length < actionsLength) {
+            builder = new ActionBuilder();
             int type = input.readUnsignedShort();
             int currentActionLength = input.readUnsignedShort();
-            builder = new ActionBuilder();
-            listBuilder = new ActionsListBuilder();
             switch(type) {
             case 0:
                 builder.setType(Output.class);
@@ -215,49 +213,44 @@ public abstract class ActionsDeserializer {
             default: 
                 break;
             }
-            listBuilder.setAction(builder.build());
-            actionsList.add(listBuilder.build());
+            actionsList.add(builder.build());
             length += currentActionLength;
         } 
         return actionsList;
     }
 
-    private static ActionsList createEmptyHeader(Class<? extends org.opendaylight.yang.gen.v1.
-            urn.opendaylight.openflow.common.types.rev130731.Action> action,
-            ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
+    private static Action createEmptyHeader(Class<? extends ActionBase> action,
+            ByteBuf in, ActionBuilder actionBuilder) {
         actionBuilder.setType(action);
         in.skipBytes(PADDING_IN_ACTIONS_HEADER);
-        actionsListBuilder.setAction(actionBuilder.build());
-        return actionsListBuilder.build();
+        return actionBuilder.build();
     }
     
-    private static ActionsList createCopyTtlInAction(ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        return createEmptyHeader(CopyTtlIn.class, in, actionsListBuilder);
+    private static Action createCopyTtlInAction(ByteBuf in, ActionBuilder actionBuilder) {
+        return createEmptyHeader(CopyTtlIn.class, in, actionBuilder);
     }
 
-    private static ActionsList createCopyTtlOutAction(ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        return createEmptyHeader(CopyTtlOut.class, in, actionsListBuilder);
+    private static Action createCopyTtlOutAction(ByteBuf in, ActionBuilder actionBuilder) {
+        return createEmptyHeader(CopyTtlOut.class, in, actionBuilder);
     }
     
-    private static ActionsList createDecMplsTtlOutAction(ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        return createEmptyHeader(DecMplsTtl.class, in, actionsListBuilder);
+    private static Action createDecMplsTtlOutAction(ByteBuf in, ActionBuilder actionBuilder) {
+        return createEmptyHeader(DecMplsTtl.class, in, actionBuilder);
     }
     
-    private static ActionsList createPopVlanAction(ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        return createEmptyHeader(PopVlan.class, in, actionsListBuilder);
+    private static Action createPopVlanAction(ByteBuf in, ActionBuilder actionBuilder) {
+        return createEmptyHeader(PopVlan.class, in, actionBuilder);
     }
     
-    private static ActionsList createDecNwTtlAction(ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        return createEmptyHeader(DecNwTtl.class, in, actionsListBuilder);
+    private static Action createDecNwTtlAction(ByteBuf in, ActionBuilder actionBuilder) {
+        return createEmptyHeader(DecNwTtl.class, in, actionBuilder);
     }
     
-    private static ActionsList createPopPbbAction(ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        return createEmptyHeader(PopPbb.class, in, actionsListBuilder);
+    private static Action createPopPbbAction(ByteBuf in, ActionBuilder actionBuilder) {
+        return createEmptyHeader(PopPbb.class, in, actionBuilder);
     }
     
-    private static ActionsList createOutputAction(ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
+    private static Action createOutputAction(ByteBuf in, ActionBuilder actionBuilder) {
         actionBuilder.setType(Output.class);
         PortActionBuilder port = new PortActionBuilder();
         port.setPort(new PortNumber(in.readUnsignedInt()));
@@ -265,99 +258,83 @@ public abstract class ActionsDeserializer {
         MaxLengthActionBuilder maxLen = new MaxLengthActionBuilder();
         maxLen.setMaxLength(in.readUnsignedShort());
         actionBuilder.addAugmentation(MaxLengthAction.class, maxLen.build());
-        actionsListBuilder.setAction(actionBuilder.build());
         in.skipBytes(PADDING_IN_OUTPUT_ACTIONS_HEADER);
-        return actionsListBuilder.build();
+        return actionBuilder.build();
     }
     
-    private static ActionsList createSetMplsTtlAction(ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
+    private static Action createSetMplsTtlAction(ByteBuf in, ActionBuilder actionBuilder) {
         actionBuilder.setType(SetMplsTtl.class);
         MplsTtlActionBuilder mplsTtl = new MplsTtlActionBuilder();
         mplsTtl.setMplsTtl(in.readUnsignedByte());
         actionBuilder.addAugmentation(MplsTtlAction.class, mplsTtl.build());
-        actionsListBuilder.setAction(actionBuilder.build());
         in.skipBytes(PADDING_IN_SET_MPLS_TTL_ACTIONS_HEADER);
-        return actionsListBuilder.build();
+        return actionBuilder.build();
     }
     
-    private static ActionsList createPushAction(Class<? extends org.opendaylight.yang.gen.
-            v1.urn.opendaylight.openflow.common.types.rev130731.Action> action,
-            ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
+    private static Action createPushAction(Class<? extends ActionBase> action,
+            ByteBuf in, ActionBuilder actionBuilder) {
         actionBuilder.setType(action);
         EthertypeActionBuilder etherType = new EthertypeActionBuilder();
         etherType.setEthertype(new EtherType(in.readUnsignedShort()));
         actionBuilder.addAugmentation(EthertypeAction.class, etherType.build());
-        actionsListBuilder.setAction(actionBuilder.build());
         in.skipBytes(PADDING_IN_PUSH_VLAN_ACTIONS_HEADER);
-        return actionsListBuilder.build();
+        return actionBuilder.build();
     }
     
-    private static ActionsList createPushVlanAction(ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        return createPushAction(PushVlan.class, in, actionsListBuilder);
+    private static Action createPushVlanAction(ByteBuf in, ActionBuilder actionBuilder) {
+        return createPushAction(PushVlan.class, in, actionBuilder);
     }
     
-    private static ActionsList createPushMplsAction(ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        return createPushAction(PushMpls.class, in, actionsListBuilder);
+    private static Action createPushMplsAction(ByteBuf in, ActionBuilder actionBuilder) {
+        return createPushAction(PushMpls.class, in, actionBuilder);
     }
     
-    private static ActionsList createPopMplsAction(ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        return createPushAction(PopMpls.class, in, actionsListBuilder);
+    private static Action createPopMplsAction(ByteBuf in, ActionBuilder actionBuilder) {
+        return createPushAction(PopMpls.class, in, actionBuilder);
     }
     
-    private static ActionsList createPushPbbAction(ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        return createPushAction(PushPbb.class, in, actionsListBuilder);
+    private static Action createPushPbbAction(ByteBuf in, ActionBuilder actionBuilder) {
+        return createPushAction(PushPbb.class, in, actionBuilder);
     }
     
-    private static ActionsList createSetQueueAction(ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
+    private static Action createSetQueueAction(ByteBuf in, ActionBuilder actionBuilder) {
         actionBuilder.setType(SetQueue.class);
         QueueIdActionBuilder queueId = new QueueIdActionBuilder();
         queueId.setQueueId(in.readUnsignedInt());
         actionBuilder.addAugmentation(QueueIdAction.class, queueId.build());
-        actionsListBuilder.setAction(actionBuilder.build());
-        return actionsListBuilder.build();
+        return actionBuilder.build();
     }
     
-    private static ActionsList createGroupAction(ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
+    private static Action createGroupAction(ByteBuf in, ActionBuilder actionBuilder) {
         actionBuilder.setType(Group.class);
         GroupIdActionBuilder group = new GroupIdActionBuilder();
         group.setGroupId(in.readUnsignedInt());
         actionBuilder.addAugmentation(GroupIdAction.class, group.build());
-        actionsListBuilder.setAction(actionBuilder.build());
-        return actionsListBuilder.build();
+        return actionBuilder.build();
     }
     
-    private static ActionsList createExperimenterAction(ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
+    private static Action createExperimenterAction(ByteBuf in, ActionBuilder actionBuilder) {
         actionBuilder.setType(Experimenter.class);
         ExperimenterActionBuilder experimenter = new ExperimenterActionBuilder();
         experimenter.setExperimenter(in.readUnsignedInt());
         actionBuilder.addAugmentation(ExperimenterAction.class, experimenter.build());
-        actionsListBuilder.setAction(actionBuilder.build());
-        return actionsListBuilder.build();
+        return actionBuilder.build();
     }
     
-    private static ActionsList createSetNwTtlAction(ByteBuf in, ActionsListBuilder actionsListBuilder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
+    private static Action createSetNwTtlAction(ByteBuf in, ActionBuilder actionBuilder) {
         actionBuilder.setType(SetNwTtl.class);
         NwTtlActionBuilder nwTtl = new NwTtlActionBuilder();
         nwTtl.setNwTtl(in.readUnsignedByte());
         actionBuilder.addAugmentation(NwTtlAction.class, nwTtl.build());
-        actionsListBuilder.setAction(actionBuilder.build());
         in.skipBytes(PADDING_IN_NW_TTL_ACTIONS_HEADER);
-        return actionsListBuilder.build();
+        return actionBuilder.build();
     }
     
-    private static ActionsList createSetFieldAction(ByteBuf in, ActionsListBuilder actionsListBuilder, int actionLength) {
-        ActionBuilder actionBuilder = new ActionBuilder();
+    private static Action createSetFieldAction(ByteBuf in, ActionBuilder actionBuilder, int actionLength) {
         actionBuilder.setType(SetField.class);
         OxmFieldsActionBuilder matchEntries = new OxmFieldsActionBuilder();
         matchEntries.setMatchEntries(MatchDeserializer.createMatchEntry(in, actionLength  - ACTION_HEADER_LENGTH));
         actionBuilder.addAugmentation(OxmFieldsAction.class, matchEntries.build());
-        actionsListBuilder.setAction(actionBuilder.build());
-        return actionsListBuilder.build();
+        return actionBuilder.build();
     }
 }
index 51a3359faa566fc617c4bfafd6c3a8ff43d1b1ac..6c26cc2c65e1c9a879a2ff407cc558cea726e511 100644 (file)
@@ -38,9 +38,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev1
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetMplsTtl;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetNwTtl;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetQueue;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsList;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.actions.list.Action;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntries;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntries;
 
 /**
  * Serializes ofp_actions (OpenFlow v1.3)
@@ -89,12 +88,11 @@ public abstract class ActionsSerializer {
      * @param actionsList list of actions to be encoded
      * @param outBuffer output ByteBuf
      */
-    public static void encodeActions(List<ActionsList> actionsList, ByteBuf outBuffer) {
+    public static void encodeActions(List<Action> actionsList, ByteBuf outBuffer) {
         if (actionsList == null) {
             return;
         }
-        for (ActionsList list : actionsList) {
-            Action action = list.getAction();
+        for (Action action : actionsList) {
             if (action.getType().isAssignableFrom(Output.class)) {
                 encodeOutputAction(action, outBuffer);
             } else if (action.getType().isAssignableFrom(CopyTtlOut.class)) {
@@ -138,12 +136,11 @@ public abstract class ActionsSerializer {
      * @param actionsList list of actions to be encoded
      * @param outBuffer output ByteBuf
      */
-    public static void encodeActionIds(List<ActionsList> actionsList, ByteBuf outBuffer) {
+    public static void encodeActionIds(List<Action> actionsList, ByteBuf outBuffer) {
         if (actionsList == null) {
             return;
         }
-        for (ActionsList list : actionsList) {
-            Action action = list.getAction();
+        for (Action action : actionsList) {
             if (action.getType().isAssignableFrom(Output.class)) {
                 writeTypeAndLength(outBuffer, OUTPUT_CODE, ACTION_IDS_LENGTH);
             } else if (action.getType().isAssignableFrom(CopyTtlOut.class)) {
@@ -318,11 +315,10 @@ public abstract class ActionsSerializer {
      * @param actionsList list of actions
      * @return actions length
      */
-    public static int computeLengthOfActions(List<ActionsList> actionsList) {
+    public static int computeLengthOfActions(List<Action> actionsList) {
         int lengthOfActions = 0;
         if (actionsList != null) {
-            for (ActionsList list : actionsList) {
-                Action action = list.getAction();
+            for (Action action : actionsList) {
                 if (action.getType().isAssignableFrom(Output.class)) {
                     lengthOfActions += OUTPUT_LENGTH;
                 } else if (action.getType().isAssignableFrom(SetField.class)){
index d5adc97a3fcc80e4057357de33e8fa33b0394fea..f678d87f2568d5b26c2064440000e09b4e447655 100644 (file)
@@ -8,6 +8,8 @@
 
 package org.opendaylight.openflowjava.protocol.impl.util;
 
+import io.netty.buffer.ByteBuf;
+
 import java.util.ArrayList;
 import java.util.List;
 
@@ -28,10 +30,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.Meter;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.WriteActions;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.WriteMetadata;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.Instructions;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.InstructionsBuilder;
-
-import io.netty.buffer.ByteBuf;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.grouping.Instruction;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.grouping.InstructionBuilder;
 
 /**
  * Deserializes ofp_instruction (OpenFlow v1.3) structures
@@ -52,12 +52,12 @@ public abstract class InstructionsDeserializer {
      * @param length
      * @return list of ofp_instruction
      */
-    public static List<Instructions> createInstructions(ByteBuf input, int length) {
-        List<Instructions> instructions = new ArrayList<>();
+    public static List<Instruction> createInstructions(ByteBuf input, int length) {
+        List<Instruction> instructions = new ArrayList<>();
         if (input.readableBytes() != 0) {
             int lengthOfInstructions = length;
             while (lengthOfInstructions > 0) {
-                InstructionsBuilder builder = new InstructionsBuilder();
+                InstructionBuilder builder = new InstructionBuilder();
                 int type = input.readUnsignedShort();
                 int instructionLength = input.readUnsignedShort();
                 lengthOfInstructions -= instructionLength;
@@ -113,12 +113,12 @@ public abstract class InstructionsDeserializer {
      * @param length
      * @return list of ofp_instruction without values
      */
-    public static List<Instructions> createInstructionIds(ByteBuf input, int length) {
-        List<Instructions> instructions = new ArrayList<>();
+    public static List<Instruction> createInstructionIds(ByteBuf input, int length) {
+        List<Instruction> instructions = new ArrayList<>();
         if (input.readableBytes() != 0) {
             int lengthOfInstructions = length;
             while (lengthOfInstructions > 0) {
-                InstructionsBuilder builder = new InstructionsBuilder();
+                InstructionBuilder builder = new InstructionBuilder();
                 int type = input.readUnsignedShort();
                 int instructionLength = input.readUnsignedShort();
                 lengthOfInstructions -= instructionLength;
@@ -156,7 +156,7 @@ public abstract class InstructionsDeserializer {
         return instructions;
     }
 
-    private static void createGotoTableInstruction(InstructionsBuilder builder,
+    private static void createGotoTableInstruction(InstructionBuilder builder,
             ByteBuf input) {
         builder.setType(GotoTable.class);
         TableIdInstructionBuilder tableBuilder = new TableIdInstructionBuilder();
@@ -165,7 +165,7 @@ public abstract class InstructionsDeserializer {
         input.skipBytes(GOTO_TABLE_PADDING);
     }
     
-    private static void createMetadataInstruction(InstructionsBuilder builder,
+    private static void createMetadataInstruction(InstructionBuilder builder,
             ByteBuf input) {
         input.skipBytes(WRITE_METADATA_PADDING);
         builder.setType(WriteMetadata.class);
@@ -180,10 +180,10 @@ public abstract class InstructionsDeserializer {
     }
     
     private static void createActionRelatedInstruction(ByteBuf input,
-            InstructionsBuilder builder, int actionsLength) {
+            InstructionBuilder builder, int actionsLength) {
         input.skipBytes(ACTIONS_RELATED_INSTRUCTION_PADDING);
         ActionsInstructionBuilder actionsBuilder = new ActionsInstructionBuilder();
-        actionsBuilder.setActionsList(ActionsDeserializer.createActionsList(input, actionsLength));
+        actionsBuilder.setAction(ActionsDeserializer.createActions(input, actionsLength));
         builder.addAugmentation(ActionsInstruction.class, actionsBuilder.build());
     }
 
index 80ce60d74662c286c89b83381376927275f94960..b652432c3cb6cbda4ec34694c8a774813a8a4edd 100644 (file)
@@ -17,7 +17,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.MetadataInstruction;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.MeterIdInstruction;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.TableIdInstruction;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsList;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.ApplyActions;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.ClearActions;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.Experimenter;
@@ -25,8 +25,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.Meter;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.WriteActions;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.WriteMetadata;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.Instructions;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.Instruction;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.grouping.Instruction;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.InstructionBase;
 
 /**
  * Serializes ofp_instruction (OpenFlow v 1.3) structure
@@ -58,10 +58,10 @@ public abstract class InstructionsSerializer {
      * @param instructions List of instructions
      * @param out output buffer
      */
-    public static void encodeInstructions(List<Instructions> instructions, ByteBuf out) {
+    public static void encodeInstructions(List<Instruction> instructions, ByteBuf out) {
         if (instructions != null) {
-            for (Instructions instruction : instructions) {
-                Class<? extends Instruction> type = instruction.getType();
+            for (Instruction instruction : instructions) {
+                Class<? extends InstructionBase> type = instruction.getType();
                 if (type.isAssignableFrom(GotoTable.class)) {
                     writeTypeAndLength(out, GOTO_TABLE_TYPE, GOTO_TABLE_LENGTH);
                     out.writeByte(instruction.getAugmentation(TableIdInstruction.class).getTableId());
@@ -99,10 +99,10 @@ public abstract class InstructionsSerializer {
      * @param instructions List of instruction identifiers (without values)
      * @param out output buffer
      */
-    public static void encodeInstructionIds(List<Instructions> instructions, ByteBuf out) {
+    public static void encodeInstructionIds(List<Instruction> instructions, ByteBuf out) {
         if (instructions != null) {
-            for (Instructions instruction : instructions) {
-                Class<? extends Instruction> type = instruction.getType();
+            for (Instruction instruction : instructions) {
+                Class<? extends InstructionBase> type = instruction.getType();
                 if (type.isAssignableFrom(GotoTable.class)) {
                     writeTypeAndLength(out, GOTO_TABLE_TYPE, INSTRUCTION_IDS_LENGTH);
                 } else if (type.isAssignableFrom(WriteMetadata.class)) {
@@ -130,10 +130,10 @@ public abstract class InstructionsSerializer {
     }
 
     private static void writeActionsInstruction(ByteBuf out,
-            Instructions instruction, int type) {
+            Instruction instruction, int type) {
         out.writeShort(type);
         if (instruction.getAugmentation(ActionsInstruction.class) != null) {
-            List<ActionsList> actions = instruction.getAugmentation(ActionsInstruction.class).getActionsList();
+            List<Action> actions = instruction.getAugmentation(ActionsInstruction.class).getAction();
             out.writeShort(ACTIONS_INSTRUCTION_LENGTH + ActionsSerializer.computeLengthOfActions(actions));
             ByteBufUtils.padBuffer(PADDING_IN_ACTIONS_INSTRUCTION, out);
             ActionsSerializer.encodeActions(actions, out);
@@ -148,11 +148,11 @@ public abstract class InstructionsSerializer {
      * @param instructions List of instructions
      * @return length of instructions (in bytes)
      */
-    public static int computeInstructionsLength(List<Instructions> instructions) {
+    public static int computeInstructionsLength(List<Instruction> instructions) {
         int length = 0;
         if (instructions != null) {
-            for (Instructions instruction : instructions) {
-                Class<? extends Instruction> type = instruction.getType();
+            for (Instruction instruction : instructions) {
+                Class<? extends InstructionBase> type = instruction.getType();
                 if (type.isAssignableFrom(GotoTable.class)) {
                     length += GOTO_TABLE_LENGTH;
                 } else if (type.isAssignableFrom(WriteMetadata.class)) {
@@ -161,13 +161,13 @@ public abstract class InstructionsSerializer {
                     length += ACTIONS_INSTRUCTION_LENGTH;
                     if (instruction.getAugmentation(ActionsInstruction.class) != null) {
                         length += ActionsSerializer.computeLengthOfActions(
-                            instruction.getAugmentation(ActionsInstruction.class).getActionsList());
+                            instruction.getAugmentation(ActionsInstruction.class).getAction());
                     }
                 } else if (type.isAssignableFrom(ApplyActions.class)) {
                     length += ACTIONS_INSTRUCTION_LENGTH;
                     if (instruction.getAugmentation(ActionsInstruction.class) != null) {
                         length += ActionsSerializer.computeLengthOfActions(
-                                instruction.getAugmentation(ActionsInstruction.class).getActionsList());
+                                instruction.getAugmentation(ActionsInstruction.class).getAction());
                     }
                 } else if (type.isAssignableFrom(ClearActions.class)) {
                     length += ACTIONS_INSTRUCTION_LENGTH;
index 06d8d583f07da6d67003fa0f45206efec9fac362..fe05bf92da45c72c1188dd51f637376120b1c5ab 100644 (file)
@@ -115,10 +115,10 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.UdpD
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.UdpSrc;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.VlanPcp;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.VlanVid;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntries;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntriesBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.match.grouping.Match;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.match.grouping.MatchBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.match.grouping.Match;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.match.grouping.MatchBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntries;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntriesBuilder;
 
 import com.google.common.base.Joiner;
 
index 6961ed87a7c1705359217c3f67a9859265e14026..db1687be86efead484f0e5ad3b4a5dc494d11138 100644 (file)
@@ -56,8 +56,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.UdpD
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.UdpSrc;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.VlanPcp;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.VlanVid;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntries;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntriesBuilder;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntries;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntriesBuilder;\r
 \r
 /**\r
  * Encodes match ids (oxm_ids) needed in Multipart-TableFeatures messages\r
index 85d92adf88aee3ad1c1d226f84e99e60046df4a7..eea0844d5ea0772fa5cf07b6f0386a59dd9db658 100644 (file)
@@ -50,7 +50,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.UdpD
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.UdpSrc;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.VlanPcp;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.VlanVid;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntries;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntries;\r
 \r
 /**\r
  * Encodes match ids (oxm_ids) needed in Multipart-TableFeatures messages\r
index 430ef20c90218fee0cf6622cc390bc9022efafcc..8443ed4823498da92cd615df106330535ce2d10d 100644 (file)
@@ -88,8 +88,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.UdpD
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.UdpSrc;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.VlanPcp;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.VlanVid;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntries;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.match.grouping.Match;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.match.grouping.Match;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntries;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
index 84fff98d239729b2fcaac07fa27bb5b91c6d243e..64372b1eb1f579a87d8c49a4f7506356c4b7510e 100644 (file)
@@ -46,10 +46,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev1
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetVlanPcp;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetVlanVid;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.StripVlan;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsList;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsListBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.actions.list.Action;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.actions.list.ActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.ActionBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortNumber;
 import org.opendaylight.yangtools.yang.binding.Augmentation;
 
@@ -74,8 +72,8 @@ public abstract class OF10ActionsDeserializer {
      * @param input input ByteBuf
      * @return ActionsList list of actions
      */
-    public static List<ActionsList> createActionsList(ByteBuf input) {
-        List<ActionsList> actions = new ArrayList<>();
+    public static List<Action> createActionsList(ByteBuf input) {
+        List<Action> actions = new ArrayList<>();
         while (input.readableBytes() > 0) {
             int type = input.readUnsignedShort();
             input.skipBytes(EncodeConstants.SIZE_OF_SHORT_IN_BYTES);
@@ -91,8 +89,8 @@ public abstract class OF10ActionsDeserializer {
      * @param actionsLength length of actions
      * @return ActionsList list of actions
      */
-    public static List<ActionsList> createActionsList(ByteBuf input, int actionsLength) {
-        List<ActionsList> actions = new ArrayList<>();
+    public static List<Action> createActionsList(ByteBuf input, int actionsLength) {
+        List<Action> actions = new ArrayList<>();
         int currentLength = 0;
         while (currentLength < actionsLength) {
             int type = input.readUnsignedShort();
@@ -102,9 +100,9 @@ public abstract class OF10ActionsDeserializer {
         return actions;
     }
 
-    private static ActionsList decodeAction(ByteBuf input, int type) {
-        ActionsListBuilder actionsBuilder = new ActionsListBuilder();
-        ActionsList actionsList = null;
+    private static Action decodeAction(ByteBuf input, int type) {
+        ActionBuilder actionsBuilder = new ActionBuilder();
+        Action actionsList = null;
         switch(type) {
         case 0:
             actionsList = createOutputAction(input, actionsBuilder);
@@ -156,60 +154,48 @@ public abstract class OF10ActionsDeserializer {
      * @param builder 
      * @return ActionList
      */
-    public static ActionsList createOutputAction(ByteBuf in, ActionsListBuilder builder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
-        actionBuilder.setType(Output.class);
-        createPortAugmentation(in, actionBuilder);
+    public static Action createOutputAction(ByteBuf in, ActionBuilder builder) {
+        builder.setType(Output.class);
+        createPortAugmentation(in, builder);
         MaxLengthActionBuilder maxLen = new MaxLengthActionBuilder();
         maxLen.setMaxLength(in.readUnsignedShort());
-        actionBuilder.addAugmentation(MaxLengthAction.class, maxLen.build());
-        builder.setAction(actionBuilder.build());
+        builder.addAugmentation(MaxLengthAction.class, maxLen.build());
         return builder.build();
     }
 
-    private static ActionsList createSetVlanVidAction(ByteBuf input, ActionsListBuilder builder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
-        actionBuilder.setType(SetVlanVid.class);
+    private static Action createSetVlanVidAction(ByteBuf input, ActionBuilder builder) {
+        builder.setType(SetVlanVid.class);
         VlanVidActionBuilder vlanBuilder = new VlanVidActionBuilder();
         vlanBuilder.setVlanVid(input.readUnsignedShort());
         input.skipBytes(PADDING_IN_SET_VLAN_VID_ACTION);
-        actionBuilder.addAugmentation(VlanVidAction.class, vlanBuilder.build());
-        builder.setAction(actionBuilder.build());
+        builder.addAugmentation(VlanVidAction.class, vlanBuilder.build());
         return builder.build();
     }
 
-    private static ActionsList createVlanPcpAction(ByteBuf input, ActionsListBuilder builder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
-        actionBuilder.setType(SetVlanPcp.class);
+    private static Action createVlanPcpAction(ByteBuf input, ActionBuilder builder) {
+        builder.setType(SetVlanPcp.class);
         VlanPcpActionBuilder vlanBuilder = new VlanPcpActionBuilder();
         vlanBuilder.setVlanPcp(input.readUnsignedByte());
         input.skipBytes(PADDING_IN_SET_VLAN_PCP_ACTION);
-        actionBuilder.addAugmentation(VlanPcpAction.class, vlanBuilder.build());
-        builder.setAction(actionBuilder.build());
+        builder.addAugmentation(VlanPcpAction.class, vlanBuilder.build());
         return builder.build();
     }
 
-    private static ActionsList createStripVlanAction(ByteBuf input, ActionsListBuilder builder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
-        actionBuilder.setType(StripVlan.class);
+    private static Action createStripVlanAction(ByteBuf input, ActionBuilder builder) {
+        builder.setType(StripVlan.class);
         input.skipBytes(PADDING_IN_STRIP_VLAN_ACTION);
-        builder.setAction(actionBuilder.build());
         return builder.build();
     }
 
-    private static ActionsList createSetDlSrcAction(ByteBuf input, ActionsListBuilder builder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
-        actionBuilder.setType(SetDlSrc.class);
-        actionBuilder.addAugmentation(DlAddressAction.class, createDlAugmentationAndPad(input));
-        builder.setAction(actionBuilder.build());
+    private static Action createSetDlSrcAction(ByteBuf input, ActionBuilder builder) {
+        builder.setType(SetDlSrc.class);
+        builder.addAugmentation(DlAddressAction.class, createDlAugmentationAndPad(input));
         return builder.build();
     }
 
-    private static ActionsList createSetDlDstAction(ByteBuf input, ActionsListBuilder builder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
-        actionBuilder.setType(SetDlDst.class);
-        actionBuilder.addAugmentation(DlAddressAction.class, createDlAugmentationAndPad(input));
-        builder.setAction(actionBuilder.build());
+    private static Action createSetDlDstAction(ByteBuf input, ActionBuilder builder) {
+        builder.setType(SetDlDst.class);
+        builder.addAugmentation(DlAddressAction.class, createDlAugmentationAndPad(input));
         return builder.build();
     }
     
@@ -222,19 +208,15 @@ public abstract class OF10ActionsDeserializer {
         return dlBuilder.build();
     }
 
-    private static ActionsList createSetNwSrcAction(ByteBuf input, ActionsListBuilder builder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
-        actionBuilder.setType(SetNwSrc.class);
-        actionBuilder.addAugmentation(IpAddressAction.class, createNwAddressAugmentationAndPad(input));
-        builder.setAction(actionBuilder.build());
+    private static Action createSetNwSrcAction(ByteBuf input, ActionBuilder builder) {
+        builder.setType(SetNwSrc.class);
+        builder.addAugmentation(IpAddressAction.class, createNwAddressAugmentationAndPad(input));
         return builder.build();
     }
 
-    private static ActionsList createSetNwDstAction(ByteBuf input, ActionsListBuilder builder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
-        actionBuilder.setType(SetNwDst.class);
-        actionBuilder.addAugmentation(IpAddressAction.class, createNwAddressAugmentationAndPad(input));
-        builder.setAction(actionBuilder.build());
+    private static Action createSetNwDstAction(ByteBuf input, ActionBuilder builder) {
+        builder.setType(SetNwDst.class);
+        builder.addAugmentation(IpAddressAction.class, createNwAddressAugmentationAndPad(input));
         return builder.build();
     }
     
@@ -249,32 +231,26 @@ public abstract class OF10ActionsDeserializer {
         return ipBuilder.build();
     }
 
-    private static ActionsList createSetNwTosAction(ByteBuf input, ActionsListBuilder builder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
-        actionBuilder.setType(SetNwTos.class);
+    private static Action createSetNwTosAction(ByteBuf input, ActionBuilder builder) {
+        builder.setType(SetNwTos.class);
         NwTosActionBuilder tosBuilder = new NwTosActionBuilder();
         tosBuilder.setNwTos(input.readUnsignedByte());
-        actionBuilder.addAugmentation(NwTosAction.class, tosBuilder.build());
+        builder.addAugmentation(NwTosAction.class, tosBuilder.build());
         input.skipBytes(PADDING_IN_NW_TOS_ACTION);
-        builder.setAction(actionBuilder.build());
         return builder.build();
     }
 
-    private static ActionsList createSetTpSrcAction(ByteBuf input, ActionsListBuilder builder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
-        actionBuilder.setType(SetTpSrc.class);
-        createPortAugmentation(input, actionBuilder);
+    private static Action createSetTpSrcAction(ByteBuf input, ActionBuilder builder) {
+        builder.setType(SetTpSrc.class);
+        createPortAugmentation(input, builder);
         input.skipBytes(PADDING_IN_TP_ACTION);
-        builder.setAction(actionBuilder.build());
         return builder.build();
     }
 
-    private static ActionsList createSetTpDstAction(ByteBuf input, ActionsListBuilder builder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
-        actionBuilder.setType(SetTpDst.class);
-        createPortAugmentation(input, actionBuilder);
+    private static Action createSetTpDstAction(ByteBuf input, ActionBuilder builder) {
+        builder.setType(SetTpDst.class);
+        createPortAugmentation(input, builder);
         input.skipBytes(PADDING_IN_TP_ACTION);
-        builder.setAction(actionBuilder.build());
         return builder.build();
     }
     
@@ -284,27 +260,22 @@ public abstract class OF10ActionsDeserializer {
         actionBuilder.addAugmentation(PortAction.class, portBuilder.build());
     }
 
-    private static ActionsList createEnqueueAction(ByteBuf input, ActionsListBuilder builder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
-        actionBuilder.setType(Enqueue.class);
-        createPortAugmentation(input, actionBuilder);
+    private static Action createEnqueueAction(ByteBuf input, ActionBuilder builder) {
+        builder.setType(Enqueue.class);
+        createPortAugmentation(input, builder);
         input.skipBytes(PADDING_IN_ENQUEUE_ACTION);
         QueueIdActionBuilder queueBuilder = new QueueIdActionBuilder();
         queueBuilder.setQueueId(input.readUnsignedInt());
-        actionBuilder.addAugmentation(QueueIdAction.class, queueBuilder.build());
-        builder.setAction(actionBuilder.build());
+        builder.addAugmentation(QueueIdAction.class, queueBuilder.build());
         return builder.build();
     }
 
-    private static ActionsList createExperimenterAction(ByteBuf input, ActionsListBuilder builder) {
-        ActionBuilder actionBuilder = new ActionBuilder();
-        actionBuilder.setType(Experimenter.class);
+    private static Action createExperimenterAction(ByteBuf input, ActionBuilder builder) {
+        builder.setType(Experimenter.class);
         ExperimenterActionBuilder expBuilder = new ExperimenterActionBuilder();
         expBuilder.setExperimenter(input.readUnsignedInt());
-        actionBuilder.addAugmentation(ExperimenterAction.class, expBuilder.build());
-        builder.setAction(actionBuilder.build());
+        builder.addAugmentation(ExperimenterAction.class, expBuilder.build());
         return builder.build();
     }
-    
-    
+
 }
index 803ae38c44210ea36e795c9aca2905c202c1a178..eaaa6de86afb9daea123ca0395fb57a12af7946d 100644 (file)
@@ -34,8 +34,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev1
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetVlanPcp;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetVlanVid;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.StripVlan;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsList;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.actions.list.Action;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;
 
 /**
  * Serializes ofp_action (OpenFlow v1.0) structures
@@ -78,14 +77,13 @@ public abstract class OF10ActionsSerializer {
     /**
      * Encodes ofp_action (OpenFlow v1.0) structures
      * @param out output ByteBuf that actions will be written into
-     * @param actionsList actions to be encoded
+     * @param actions actions to be encoded
      */
-    public static void encodeActionsV10(ByteBuf out, List<ActionsList> actionsList) {
-        if (actionsList == null) {
+    public static void encodeActionsV10(ByteBuf out, List<Action> actions) {
+        if (actions == null) {
             return;
         }
-        for (ActionsList list : actionsList) {
-            Action action = list.getAction();
+        for (Action action : actions) {
             if (action.getType().equals(Output.class)) {
                 encodeOutputAction(action, out);
             } else if (action.getType().equals(SetVlanVid.class)) {
@@ -197,14 +195,13 @@ public abstract class OF10ActionsSerializer {
     
     /**
      * Computes length of actions
-     * @param actionsList
+     * @param actions
      * @return length of actions (OpenFlow v1.0)
      */
-    public static int computeActionsLength(List<ActionsList> actionsList) {
+    public static int computeActionsLength(List<Action> actions) {
         int length = 0;
-        if (actionsList != null) {
-            for (ActionsList list : actionsList) {
-                Action action = list.getAction();
+        if (actions != null) {
+            for (Action action : actions) {
                 if (action.getType().equals(Output.class)) {
                     length += 8;
                 } else if (action.getType().equals(SetVlanVid.class)) {
index b37d51b350c9150a8661965833b2e9ea7183e810..db08791a8f50740ef828e10ff436cc9ff3f74f99 100644 (file)
@@ -965,26 +965,26 @@ public class MultipartReplyMessageFactoryTest {
                 message.getGroupDesc().get(0).getBucketsList().get(0).getWatchGroup().intValue());
         
         Assert.assertEquals("Wrong outputType", Output.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(0).
-                getAction().getType());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(0)
+                .getType());
         
         Assert.assertEquals("Wrong outputPort", 4351, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(0).
-                getAction().getAugmentation(PortAction.class).
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(0)
+                .getAugmentation(PortAction.class).
                 getPort().getValue().intValue());
         
         Assert.assertEquals("Wrong outputMaxLen", 65535, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(0).
-                getAction().getAugmentation(MaxLengthAction.class).
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(0)
+                .getAugmentation(MaxLengthAction.class).
                 getMaxLength().intValue());
         
         Assert.assertEquals("Wrong copyTtlOutType", CopyTtlOut.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(1).
-                getAction().getType());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(1)
+                .getType());
         
         Assert.assertEquals("Wrong copyTtlInType", CopyTtlIn.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(2).
-                getAction().getType());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(2)
+                .getType());
     }
     
     /**
@@ -1042,35 +1042,35 @@ public class MultipartReplyMessageFactoryTest {
         Assert.assertEquals("Wrong bucketWatchGroup", 4, 
                 message.getGroupDesc().get(0).getBucketsList().get(0).getWatchGroup().intValue());
         Assert.assertEquals("Wrong setMplsTtlType", SetMplsTtl.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(0).
-                getAction().getType());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(0)
+                .getType());
         Assert.assertEquals("Wrong setMplsTtlMPLS_TTL", 9, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(0).
-                getAction().getAugmentation(MplsTtlAction.class).
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(0)
+                .getAugmentation(MplsTtlAction.class).
                 getMplsTtl().intValue());
         Assert.assertEquals("Wrong decMplsTtlType", DecMplsTtl.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(1).
-                getAction().getType());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(1)
+                .getType());
         Assert.assertEquals("Wrong pushVlanType", PushVlan.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(2).
-                getAction().getType());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(2)
+                .getType());
         Assert.assertEquals("Wrong pushVlanEthertype", 32, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(2).
-                getAction().getAugmentation(EthertypeAction.class).
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(2)
+                .getAugmentation(EthertypeAction.class).
                 getEthertype().getValue().intValue());
         Assert.assertEquals("Wrong pushMplsType", PushMpls.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(3).
-                getAction().getType());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(3)
+                .getType());
         Assert.assertEquals("Wrong pushMplsEthertype", 255, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(3).
-                getAction().getAugmentation(EthertypeAction.class).
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(3).
+                getAugmentation(EthertypeAction.class).
                 getEthertype().getValue().intValue());
         Assert.assertEquals("Wrong pushPbbType", PushPbb.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(4).
-                getAction().getType());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(4)
+                .getType());
         Assert.assertEquals("Wrong pushPbbEthertype", 4095, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(4).
-                getAction().getAugmentation(EthertypeAction.class).
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(4)
+                .getAugmentation(EthertypeAction.class).
                 getEthertype().getValue().intValue());
     }
     
@@ -1127,35 +1127,35 @@ public class MultipartReplyMessageFactoryTest {
         Assert.assertEquals("Wrong bucketWatchGroup", 4, 
                 message.getGroupDesc().get(0).getBucketsList().get(0).getWatchGroup().intValue());
         Assert.assertEquals("Wrong popVlanType", PopVlan.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(0).
-                getAction().getType());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(0)
+                .getType());
         Assert.assertEquals("Wrong popPbbType", PopPbb.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(1).
-                getAction().getType());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(1)
+                .getType());
         Assert.assertEquals("Wrong popMplsType", PopMpls.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(2).
-                getAction().getType());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(2)
+                .getType());
         Assert.assertEquals("Wrong popMplsEthertype", 207, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(2).
-                getAction().getAugmentation(EthertypeAction.class).
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(2)
+                .getAugmentation(EthertypeAction.class).
                 getEthertype().getValue().intValue());
         Assert.assertEquals("Wrong setQueueType", SetQueue.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(3).
-                getAction().getType());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(3)
+                .getType());
         Assert.assertEquals("Wrong setQueueQueueId", 13565952, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(3).
-                getAction().getAugmentation(QueueIdAction.class).
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(3)
+                .getAugmentation(QueueIdAction.class).
                 getQueueId().intValue());
         Assert.assertEquals("Wrong groupType", Group.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(4).
-                getAction().getType());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(4)
+                .getType());
         Assert.assertEquals("Wrong groupGroupId", 13565952, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(4).
-                getAction().getAugmentation(GroupIdAction.class).
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(4)
+                .getAugmentation(GroupIdAction.class).
                 getGroupId().intValue());
         Assert.assertEquals("Wrong decNwTtlType", DecNwTtl.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(5).
-                getAction().getType());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(5)
+                .getType());
     }
     
     /**
@@ -1207,28 +1207,28 @@ public class MultipartReplyMessageFactoryTest {
                 message.getGroupDesc().get(0).getBucketsList().get(0).getWatchGroup().intValue());
         
         Assert.assertEquals("Wrong nwTTlType", SetNwTtl.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(0).
-                getAction().getType());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(0)
+                .getType());
         
         Assert.assertEquals("Wrong nwTTlnwTTL", 14, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(0).
-                getAction().getAugmentation(NwTtlAction.class).getNwTtl().intValue());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(0)
+                .getAugmentation(NwTtlAction.class).getNwTtl().intValue());
         
         Assert.assertEquals("Wrong setFieldType", SetField.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(1).
-                getAction().getType());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(1)
+                .getType());
         
         Assert.assertEquals("Wrong setFieldOXMClass", OpenflowBasicClass.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(1).
-                getAction().getAugmentation(OxmFieldsAction.class).getMatchEntries().get(0).getOxmClass());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(1)
+                .getAugmentation(OxmFieldsAction.class).getMatchEntries().get(0).getOxmClass());
         
         Assert.assertEquals("Wrong setFieldOXMField", InPort.class, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(1).
-                getAction().getAugmentation(OxmFieldsAction.class).getMatchEntries().get(0).getOxmMatchField());
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(1)
+                .getAugmentation(OxmFieldsAction.class).getMatchEntries().get(0).getOxmMatchField());
         
         Assert.assertEquals("Wrong setFieldOXMValue", 255, 
-                message.getGroupDesc().get(0).getBucketsList().get(0).getActionsList().get(1).
-                getAction().getAugmentation(OxmFieldsAction.class).getMatchEntries().get(0).
+                message.getGroupDesc().get(0).getBucketsList().get(0).getAction().get(1)
+                .getAugmentation(OxmFieldsAction.class).getMatchEntries().get(0).
                 getAugmentation(PortNumberMatchEntry.class).getPortNumber().getValue().intValue());
     }
 }
index d1f3de31a940c262054b60e7e6c85ce34877ad06..553ac79f43075dfe29578fb7ee85542ef9c98808 100644 (file)
@@ -20,7 +20,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.VlanVidAction;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.Output;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetVlanVid;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.actions.list.Action;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.FlowWildcardsV10;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.MultipartReplyMessage;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.reply.multipart.reply.body.MultipartReplyAggregateCase;\r
@@ -131,13 +131,13 @@ public class OF10StatsReplyMessageFactoryTest {
         Assert.assertEquals("Wrong byteCount",\r
                 new BigInteger(1, new byte[]{(byte) 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20}), \r
                 message.getFlowStats().get(0).getByteCount());\r
-        Action action1 = message.getFlowStats().get(0).getActionsList().get(0).getAction();\r
+        Action action1 = message.getFlowStats().get(0).getAction().get(0);\r
         Assert.assertEquals("Wrong action type", Output.class, action1.getType());\r
         Assert.assertEquals("Wrong action port", 1, action1.getAugmentation(PortAction.class)\r
                 .getPort().getValue().intValue());\r
         Assert.assertEquals("Wrong action port", 2, action1.getAugmentation(MaxLengthAction.class)\r
                 .getMaxLength().intValue());\r
-        Action action2 = message.getFlowStats().get(0).getActionsList().get(1).getAction();\r
+        Action action2 = message.getFlowStats().get(0).getAction().get(1);\r
         Assert.assertEquals("Wrong action type", SetVlanVid.class, action2.getType());\r
         Assert.assertEquals("Wrong action port", 3, action2.getAugmentation(VlanVidAction.class)\r
                 .getVlanVid().intValue());\r
index 0785e1089977bdcb90a3a8a0f1cfe1aba4aebf37..7dbd6bf237328a8a9cc10e64f2ea483e94ba4f72 100644 (file)
@@ -31,8 +31,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.ApplyActions;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.GotoTable;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.WriteMetadata;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.Instructions;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.InstructionsBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.grouping.Instruction;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.grouping.InstructionBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.FlowModCommand;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.FlowModFlags;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortNumber;
@@ -42,11 +42,11 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.IpEc
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.Nxm0Class;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.OpenflowBasicClass;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.OxmMatchType;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntries;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntriesBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.match.grouping.MatchBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntries;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntriesBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.FlowModInput;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.FlowModInputBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.match.grouping.MatchBuilder;
 
 /**
  * @author timotej.kubas
@@ -96,8 +96,8 @@ public class FlowModInputMessageFactoryTest {
         entries.add(entriesBuilder.build());
         matchBuilder.setMatchEntries(entries);
         builder.setMatch(matchBuilder.build());
-        List<Instructions> instructions = new ArrayList<>();
-        InstructionsBuilder insBuilder = new InstructionsBuilder();
+        List<Instruction> instructions = new ArrayList<>();
+        InstructionBuilder insBuilder = new InstructionBuilder();
         insBuilder.setType(GotoTable.class);
         TableIdInstructionBuilder idBuilder = new TableIdInstructionBuilder();
         idBuilder.setTableId((short) 43);
@@ -109,11 +109,11 @@ public class FlowModInputMessageFactoryTest {
         metaBuilder.setMetadataMask(cookieMask);
         insBuilder.addAugmentation(MetadataInstruction.class, metaBuilder.build());
         instructions.add(insBuilder.build());
-        insBuilder = new InstructionsBuilder();
+        insBuilder = new InstructionBuilder();
         insBuilder.setType(ApplyActions.class);
         insBuilder.addAugmentation(MetadataInstruction.class, metaBuilder.build());
         instructions.add(insBuilder.build());
-        builder.setInstructions(instructions);
+        builder.setInstruction(instructions);
         FlowModInput message = builder.build();
         
         ByteBuf out = UnpooledByteBufAllocator.DEFAULT.buffer();
index 2e51815c5f84ef9d47053f0be6edc98d3b462859..eceb0d6630dd3a1356518527033aa8b80c7fc8c9 100644 (file)
@@ -25,8 +25,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev13
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortNumber;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.GroupModInput;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.GroupModInputBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.buckets.BucketsList;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.buckets.BucketsListBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.buckets.grouping.BucketsList;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.buckets.grouping.BucketsListBuilder;
 
 /**
  * @author timotej.kubas
index fadefe00a1dd9d106de3373670f0271059313d0d..12b2a945ebbac490b82113815a531d1b21d7fb8a 100644 (file)
@@ -28,9 +28,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.PortActionBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetNwDst;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetTpSrc;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsList;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsListBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.actions.list.ActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.ActionBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.FlowModCommand;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.FlowModFlagsV10;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.FlowWildcardsV10;
@@ -79,23 +78,20 @@ public class OF10FlowModInputMessageFactoryTest {
         builder.setBufferId(2L);
         builder.setOutPort(new PortNumber(4422L));
         builder.setFlagsV10(new FlowModFlagsV10(true, false, true));
-        List<ActionsList> actions = new ArrayList<>();
-        ActionsListBuilder actionsListBuilder = new ActionsListBuilder();
+        List<Action> actions = new ArrayList<>();
         ActionBuilder actionBuilder = new ActionBuilder();
         actionBuilder.setType(SetNwDst.class);
         IpAddressActionBuilder ipBuilder = new IpAddressActionBuilder();
         ipBuilder.setIpAddress(new Ipv4Address("2.2.2.2"));
         actionBuilder.addAugmentation(IpAddressAction.class, ipBuilder.build());
-        actionsListBuilder.setAction(actionBuilder.build());
-        actions.add(actionsListBuilder.build());
+        actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
         actionBuilder.setType(SetTpSrc.class);
         PortActionBuilder portBuilder = new PortActionBuilder();
         portBuilder.setPort(new PortNumber(42L));
         actionBuilder.addAugmentation(PortAction.class, portBuilder.build());
-        actionsListBuilder.setAction(actionBuilder.build());
-        actions.add(actionsListBuilder.build());
-        builder.setActionsList(actions);
+        actions.add(actionBuilder.build());
+        builder.setAction(actions);
         FlowModInput message = builder.build();
         
         ByteBuf out = UnpooledByteBufAllocator.DEFAULT.buffer();
index 899b34d105678287e118a9fe20369e1b83192f8c..9176b31eddcf199e61f3c4d699727e4b54658f72 100644 (file)
@@ -26,9 +26,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.PortActionBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.Output;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.StripVlan;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsList;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsListBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.actions.list.ActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.ActionBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortNumber;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.PacketOutInput;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.PacketOutInputBuilder;
@@ -49,8 +48,7 @@ public class OF10PacketOutInputMessageFactoryTest {
         BufferHelper.setupHeader(builder, EncodeConstants.OF10_VERSION_ID);
         builder.setBufferId(256L);
         builder.setInPort(new PortNumber(257L));
-        List<ActionsList> actions = new ArrayList<>();
-        ActionsListBuilder actionsListBuilder = new ActionsListBuilder();
+        List<Action> actions = new ArrayList<>();
         ActionBuilder actionBuilder = new ActionBuilder();
         actionBuilder.setType(Output.class);
         PortActionBuilder portBuilder = new PortActionBuilder();
@@ -59,15 +57,12 @@ public class OF10PacketOutInputMessageFactoryTest {
         MaxLengthActionBuilder maxLen = new MaxLengthActionBuilder();
         maxLen.setMaxLength(50);
         actionBuilder.addAugmentation(MaxLengthAction.class, maxLen.build());
-        actionsListBuilder.setAction(actionBuilder.build());
-        actions.add(actionsListBuilder.build());
-        actionsListBuilder = new ActionsListBuilder();
+        actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
         actionBuilder.setType(StripVlan.class);
-        actionsListBuilder.setAction(actionBuilder.build());
-        builder.setActionsList(actions);
-        actions.add(actionsListBuilder.build());
-        builder.setActionsList(actions);
+        builder.setAction(actions);
+        actions.add(actionBuilder.build());
+        builder.setAction(actions);
         builder.setData(ByteBufUtils.hexStringToBytes("00 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14"));
         PacketOutInput message = builder.build();
         
index d845336daefa1af088a29ebbca2cb7640269a04e..292bca15d4dc56e47ee9e5db47fc6f988cc0e3ec 100644 (file)
@@ -24,9 +24,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.EthertypeActionBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PopVlan;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PushVlan;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsList;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsListBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.actions.list.ActionBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.ActionBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.EtherType;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortNumber;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.PacketOutInput;
@@ -51,20 +50,17 @@ public class PacketOutInputMessageFactoryTest {
         BufferHelper.setupHeader(builder, EncodeConstants.OF13_VERSION_ID);
         builder.setBufferId(256L);
         builder.setInPort(new PortNumber(256L));
-        List<ActionsList> actions = new ArrayList<>();
-        ActionsListBuilder actionsListBuilder = new ActionsListBuilder();
+        List<Action> actions = new ArrayList<>();
         ActionBuilder actionBuilder = new ActionBuilder();
         actionBuilder.setType(PushVlan.class);
         EthertypeActionBuilder ethertypeBuilder = new EthertypeActionBuilder();
         ethertypeBuilder.setEthertype(new EtherType(25));
         actionBuilder.addAugmentation(EthertypeAction.class, ethertypeBuilder.build());
-        actionsListBuilder.setAction(actionBuilder.build());
-        actions.add(actionsListBuilder.build());
+        actions.add(actionBuilder.build());
         actionBuilder = new ActionBuilder();
         actionBuilder.setType(PopVlan.class);
-        actionsListBuilder.setAction(actionBuilder.build());
-        actions.add(actionsListBuilder.build());
-        builder.setActionsList(actions);
+        actions.add(actionBuilder.build());
+        builder.setAction(actions);
         builder.setData(ByteBufUtils.hexStringToBytes("00 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14"));
         PacketOutInput message = builder.build();
         
index a8843e533adbafda0f8829a39666cfbb1fd13df5..eb64df70ca5f05cfb1a5b7fdcedacf018e16cb84 100644 (file)
@@ -36,8 +36,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.Meter;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.WriteActions;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.WriteMetadata;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.Instructions;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.InstructionsBuilder;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.grouping.Instruction;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.grouping.InstructionBuilder;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.MultipartRequestFlags;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.MultipartType;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.TableConfig;\r
@@ -49,16 +49,16 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.IpPr
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.Nxm0Class;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.Nxm1Class;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.OpenflowBasicClass;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntries;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntriesBuilder;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntries;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntriesBuilder;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.MultipartRequestInput;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.MultipartRequestInputBuilder;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.MultipartRequestTableFeaturesCaseBuilder;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.multipart.request.table.features._case.MultipartRequestTableFeaturesBuilder;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.multipart.request.table.features._case.multipart.request.table.features.TableFeatures;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.multipart.request.table.features._case.multipart.request.table.features.TableFeaturesBuilder;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.table.features.properties.TableFeatureProperties;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.table.features.properties.TableFeaturePropertiesBuilder;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.table.features.properties.grouping.TableFeatureProperties;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.table.features.properties.grouping.TableFeaturePropertiesBuilder;\r
 \r
 /**\r
  * @author michal.polkorab\r
@@ -111,36 +111,36 @@ public class TableFeaturesTest {
         propBuilder.setType(TableFeaturesPropType.OFPTFPTINSTRUCTIONS);\r
         InstructionRelatedTableFeaturePropertyBuilder insPropBuilder =\r
                 new InstructionRelatedTableFeaturePropertyBuilder();\r
-        List<Instructions> insIds = new ArrayList<>();\r
-        InstructionsBuilder insBuilder = new InstructionsBuilder();\r
+        List<Instruction> insIds = new ArrayList<>();\r
+        InstructionBuilder insBuilder = new InstructionBuilder();\r
         insBuilder.setType(WriteActions.class);\r
         insIds.add(insBuilder.build());\r
-        insBuilder = new InstructionsBuilder();\r
+        insBuilder = new InstructionBuilder();\r
         insBuilder.setType(GotoTable.class);\r
         insIds.add(insBuilder.build());\r
-        insPropBuilder.setInstructions(insIds);\r
+        insPropBuilder.setInstruction(insIds);\r
         propBuilder.addAugmentation(InstructionRelatedTableFeatureProperty.class, insPropBuilder.build());\r
         properties.add(propBuilder.build());\r
         propBuilder = new TableFeaturePropertiesBuilder();\r
         propBuilder.setType(TableFeaturesPropType.OFPTFPTINSTRUCTIONSMISS);\r
         insPropBuilder = new InstructionRelatedTableFeaturePropertyBuilder();\r
         insIds = new ArrayList<>();\r
-        insBuilder = new InstructionsBuilder();\r
+        insBuilder = new InstructionBuilder();\r
         insBuilder.setType(WriteMetadata.class);\r
         insIds.add(insBuilder.build());\r
-        insBuilder = new InstructionsBuilder();\r
+        insBuilder = new InstructionBuilder();\r
         insBuilder.setType(ApplyActions.class);\r
         insIds.add(insBuilder.build());\r
-        insBuilder = new InstructionsBuilder();\r
+        insBuilder = new InstructionBuilder();\r
         insBuilder.setType(Meter.class);\r
         insIds.add(insBuilder.build());\r
-        insBuilder = new InstructionsBuilder();\r
+        insBuilder = new InstructionBuilder();\r
         insBuilder.setType(ClearActions.class);\r
         insIds.add(insBuilder.build());\r
-        insBuilder = new InstructionsBuilder();\r
+        insBuilder = new InstructionBuilder();\r
         insBuilder.setType(GotoTable.class);\r
         insIds.add(insBuilder.build());\r
-        insPropBuilder.setInstructions(insIds);\r
+        insPropBuilder.setInstruction(insIds);\r
         propBuilder.addAugmentation(InstructionRelatedTableFeatureProperty.class, insPropBuilder.build());\r
         properties.add(propBuilder.build());\r
         tableFeaturesBuilder.setTableFeatureProperties(properties);\r
index 0b133f5cdbec4614f8b66d6fb45f35cfba0e3bd9..d7f79c8cb5be72e647e32cd1da1f66f4fb3dd6ff 100644 (file)
@@ -22,8 +22,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.PortAction;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.PortNumberMatchEntry;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.QueueIdAction;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsList;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntries;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntries;\r
 import org.slf4j.Logger;\r
 import org.slf4j.LoggerFactory;\r
 \r
@@ -59,54 +59,54 @@ public class ActionsDeserializerTest {
         \r
         message.skipBytes(4); // skip XID\r
         LOGGER.info("bytes: " + message.readableBytes());\r
-        List<ActionsList> actions = ActionsDeserializer.createActionsList(message, message.readableBytes());\r
+        List<Action> actions = ActionsDeserializer.createActions(message, message.readableBytes());\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight."\r
-                + "openflow.common.action.rev130731.Output", actions.get(0).getAction().getType().getName());\r
+                + "openflow.common.action.rev130731.Output", actions.get(0).getType().getName());\r
         Assert.assertEquals("Wrong action port", 1,\r
-                actions.get(0).getAction().getAugmentation(PortAction.class).getPort().getValue().intValue());\r
+                actions.get(0).getAugmentation(PortAction.class).getPort().getValue().intValue());\r
         Assert.assertEquals("Wrong action max-length", 2,\r
-                actions.get(0).getAction().getAugmentation(MaxLengthAction.class).getMaxLength().intValue());\r
+                actions.get(0).getAugmentation(MaxLengthAction.class).getMaxLength().intValue());\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight."\r
-                + "openflow.common.action.rev130731.CopyTtlOut", actions.get(1).getAction().getType().getName());\r
+                + "openflow.common.action.rev130731.CopyTtlOut", actions.get(1).getType().getName());\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight."\r
-                + "openflow.common.action.rev130731.CopyTtlIn", actions.get(2).getAction().getType().getName());\r
+                + "openflow.common.action.rev130731.CopyTtlIn", actions.get(2).getType().getName());\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight."\r
-                + "openflow.common.action.rev130731.SetMplsTtl", actions.get(3).getAction().getType().getName());\r
+                + "openflow.common.action.rev130731.SetMplsTtl", actions.get(3).getType().getName());\r
         Assert.assertEquals("Wrong action value", 3,\r
-                actions.get(3).getAction().getAugmentation(MplsTtlAction.class).getMplsTtl().shortValue());\r
+                actions.get(3).getAugmentation(MplsTtlAction.class).getMplsTtl().shortValue());\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight."\r
-                + "openflow.common.action.rev130731.DecMplsTtl", actions.get(4).getAction().getType().getName());\r
+                + "openflow.common.action.rev130731.DecMplsTtl", actions.get(4).getType().getName());\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight."\r
-                + "openflow.common.action.rev130731.PushVlan", actions.get(5).getAction().getType().getName());\r
+                + "openflow.common.action.rev130731.PushVlan", actions.get(5).getType().getName());\r
         Assert.assertEquals("Wrong action value", 4,\r
-                actions.get(5).getAction().getAugmentation(EthertypeAction.class).getEthertype().getValue().intValue());\r
+                actions.get(5).getAugmentation(EthertypeAction.class).getEthertype().getValue().intValue());\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight."\r
-                + "openflow.common.action.rev130731.PopVlan", actions.get(6).getAction().getType().getName());\r
+                + "openflow.common.action.rev130731.PopVlan", actions.get(6).getType().getName());\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight."\r
-                + "openflow.common.action.rev130731.PushMpls", actions.get(7).getAction().getType().getName());\r
+                + "openflow.common.action.rev130731.PushMpls", actions.get(7).getType().getName());\r
         Assert.assertEquals("Wrong action value", 5,\r
-                actions.get(7).getAction().getAugmentation(EthertypeAction.class).getEthertype().getValue().intValue());\r
+                actions.get(7).getAugmentation(EthertypeAction.class).getEthertype().getValue().intValue());\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight."\r
-                + "openflow.common.action.rev130731.PopMpls", actions.get(8).getAction().getType().getName());\r
+                + "openflow.common.action.rev130731.PopMpls", actions.get(8).getType().getName());\r
         Assert.assertEquals("Wrong action value", 6,\r
-                actions.get(8).getAction().getAugmentation(EthertypeAction.class).getEthertype().getValue().intValue());\r
+                actions.get(8).getAugmentation(EthertypeAction.class).getEthertype().getValue().intValue());\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight."\r
-                + "openflow.common.action.rev130731.SetQueue", actions.get(9).getAction().getType().getName());\r
+                + "openflow.common.action.rev130731.SetQueue", actions.get(9).getType().getName());\r
         Assert.assertEquals("Wrong action value", 7,\r
-                actions.get(9).getAction().getAugmentation(QueueIdAction.class).getQueueId().intValue());\r
+                actions.get(9).getAugmentation(QueueIdAction.class).getQueueId().intValue());\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight."\r
-                + "openflow.common.action.rev130731.Group", actions.get(10).getAction().getType().getName());\r
+                + "openflow.common.action.rev130731.Group", actions.get(10).getType().getName());\r
         Assert.assertEquals("Wrong action value", 8,\r
-                actions.get(10).getAction().getAugmentation(GroupIdAction.class).getGroupId().intValue());\r
+                actions.get(10).getAugmentation(GroupIdAction.class).getGroupId().intValue());\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight."\r
-                + "openflow.common.action.rev130731.SetNwTtl", actions.get(11).getAction().getType().getName());\r
+                + "openflow.common.action.rev130731.SetNwTtl", actions.get(11).getType().getName());\r
         Assert.assertEquals("Wrong action value", 9,\r
-                actions.get(11).getAction().getAugmentation(NwTtlAction.class).getNwTtl().intValue());\r
+                actions.get(11).getAugmentation(NwTtlAction.class).getNwTtl().intValue());\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight."\r
-                + "openflow.common.action.rev130731.DecNwTtl", actions.get(12).getAction().getType().getName());\r
+                + "openflow.common.action.rev130731.DecNwTtl", actions.get(12).getType().getName());\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight."\r
-                + "openflow.common.action.rev130731.SetField", actions.get(13).getAction().getType().getName());\r
-        List<MatchEntries> entries = actions.get(13).getAction().getAugmentation(OxmFieldsAction.class).getMatchEntries();\r
+                + "openflow.common.action.rev130731.SetField", actions.get(13).getType().getName());\r
+        List<MatchEntries> entries = actions.get(13).getAugmentation(OxmFieldsAction.class).getMatchEntries();\r
         Assert.assertEquals("Wrong number of fields", 1, entries.size());\r
         Assert.assertEquals("Wrong match entry class", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow."\r
                 + "oxm.rev130731.OpenflowBasicClass", entries.get(0).getOxmClass().getName());\r
@@ -116,11 +116,11 @@ public class ActionsDeserializerTest {
         Assert.assertEquals("Wrong match entry value", 11, \r
                 entries.get(0).getAugmentation(PortNumberMatchEntry.class).getPortNumber().getValue().intValue());\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight."\r
-                + "openflow.common.action.rev130731.PushPbb", actions.get(14).getAction().getType().getName());\r
+                + "openflow.common.action.rev130731.PushPbb", actions.get(14).getType().getName());\r
         Assert.assertEquals("Wrong action value", 10,\r
-                actions.get(14).getAction().getAugmentation(EthertypeAction.class).getEthertype().getValue().intValue());\r
+                actions.get(14).getAugmentation(EthertypeAction.class).getEthertype().getValue().intValue());\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight."\r
-                + "openflow.common.action.rev130731.PopPbb", actions.get(15).getAction().getType().getName());\r
+                + "openflow.common.action.rev130731.PopPbb", actions.get(15).getType().getName());\r
         Assert.assertTrue("Unread data in message", message.readableBytes() == 0);\r
     }\r
 \r
index 29c0e5517f5e3279e13e77e3dfb8c7776125ca78..20d5e17969d2bf5bad318e4f03aecc19db6feb5b 100644 (file)
@@ -52,15 +52,14 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev1
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetMplsTtl;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetNwTtl;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetQueue;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsList;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsListBuilder;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.actions.list.ActionBuilder;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.ActionBuilder;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.EtherType;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortNumber;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.InPort;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.OpenflowBasicClass;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntries;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntriesBuilder;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntries;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntriesBuilder;\r
 \r
 /**\r
  * @author michal.polkorab\r
@@ -73,8 +72,7 @@ public class ActionsSerializerTest {
      */\r
     @Test\r
     public void test() {\r
-        List<ActionsList> actions = new ArrayList<>();\r
-        ActionsListBuilder listBuilder = new ActionsListBuilder();\r
+        List<Action> actions = new ArrayList<>();\r
         ActionBuilder actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(Output.class);\r
         PortActionBuilder port = new PortActionBuilder();\r
@@ -83,90 +81,64 @@ public class ActionsSerializerTest {
         MaxLengthActionBuilder maxLen = new MaxLengthActionBuilder();\r
         maxLen.setMaxLength(52);\r
         actionBuilder.addAugmentation(MaxLengthAction.class, maxLen.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(CopyTtlOut.class);\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(CopyTtlIn.class);\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(SetMplsTtl.class);\r
         MplsTtlActionBuilder mplsTtl = new MplsTtlActionBuilder();\r
         mplsTtl.setMplsTtl((short) 4);\r
         actionBuilder.addAugmentation(MplsTtlAction.class, mplsTtl.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(DecMplsTtl.class);\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(PushVlan.class);\r
         EthertypeActionBuilder etherType = new EthertypeActionBuilder();\r
         etherType.setEthertype(new EtherType(16));\r
         actionBuilder.addAugmentation(EthertypeAction.class, etherType.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(PopVlan.class);\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(PushMpls.class);\r
         etherType = new EthertypeActionBuilder();\r
         etherType.setEthertype(new EtherType(17));\r
         actionBuilder.addAugmentation(EthertypeAction.class, etherType.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(PopMpls.class);\r
         etherType = new EthertypeActionBuilder();\r
         etherType.setEthertype(new EtherType(18));\r
         actionBuilder.addAugmentation(EthertypeAction.class, etherType.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(SetQueue.class);\r
         QueueIdActionBuilder queueId = new QueueIdActionBuilder();\r
         queueId.setQueueId(1234L);\r
         actionBuilder.addAugmentation(QueueIdAction.class, queueId.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(Group.class);\r
         GroupIdActionBuilder group = new GroupIdActionBuilder();\r
         group.setGroupId(555L);\r
         actionBuilder.addAugmentation(GroupIdAction.class, group.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(SetNwTtl.class);\r
         NwTtlActionBuilder nwTtl = new NwTtlActionBuilder();\r
         nwTtl.setNwTtl((short) 8);\r
         actionBuilder.addAugmentation(NwTtlAction.class, nwTtl.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(DecNwTtl.class);\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(SetField.class);\r
         OxmFieldsActionBuilder matchEntries = new OxmFieldsActionBuilder();\r
@@ -181,29 +153,22 @@ public class ActionsSerializerTest {
         entries.add(matchBuilder.build());\r
         matchEntries.setMatchEntries(entries);\r
         actionBuilder.addAugmentation(OxmFieldsAction.class, matchEntries.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(PushPbb.class);\r
         etherType = new EthertypeActionBuilder();\r
         etherType.setEthertype(new EtherType(19));\r
         actionBuilder.addAugmentation(EthertypeAction.class, etherType.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(PopPbb.class);\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(Experimenter.class);\r
         ExperimenterActionBuilder experimenter = new ExperimenterActionBuilder();\r
         experimenter.setExperimenter(4L);\r
         actionBuilder.addAugmentation(ExperimenterAction.class, experimenter.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
+        actions.add(actionBuilder.build());\r
         \r
         ByteBuf out = UnpooledByteBufAllocator.DEFAULT.buffer();\r
         ActionsSerializer.encodeActions(actions, out);\r
index e26672fb2db1f46351938cc5f3be00c06bc11127..d65b95525be6390c6544a5e07c0f9434f77afc01 100644 (file)
@@ -22,8 +22,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.PortAction;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.QueueIdAction;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.TableIdInstruction;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.actions.list.Action;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.Instructions;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.grouping.Instruction;\r
 \r
 /**\r
  * @author michal.polkorab\r
@@ -42,48 +42,48 @@ public class InstructionsDeserializerTest {
                 + "00 16 00 08 00 00 00 50 00 04 00 18 00 00 00 00 00 15 00 08 00 00 00 25 00 0F 00 08 05 00 00 00");\r
         \r
         message.skipBytes(4); // skip XID\r
-        List<Instructions> instructions = InstructionsDeserializer.createInstructions(message, message.readableBytes());\r
-        Instructions i1 = instructions.get(0);\r
+        List<Instruction> instructions = InstructionsDeserializer.createInstructions(message, message.readableBytes());\r
+        Instruction i1 = instructions.get(0);\r
         Assert.assertEquals("Wrong type - i1", "org.opendaylight.yang.gen.v1.urn."\r
                 + "opendaylight.openflow.common.instruction.rev130731.GotoTable", i1.getType().getName());\r
         Assert.assertEquals("Wrong table-id - i1", 10, i1.getAugmentation(TableIdInstruction.class).getTableId().intValue());\r
-        Instructions i2 = instructions.get(1);\r
+        Instruction i2 = instructions.get(1);\r
         Assert.assertEquals("Wrong type - i2", "org.opendaylight.yang.gen.v1.urn."\r
                 + "opendaylight.openflow.common.instruction.rev130731.WriteMetadata", i2.getType().getName());\r
         Assert.assertArrayEquals("Wrong metadata - i2", ByteBufUtils.hexStringToBytes("00 00 00 00 00 00 00 20"),\r
                 i2.getAugmentation(MetadataInstruction.class).getMetadata());\r
         Assert.assertArrayEquals("Wrong metadata-mask - i2", ByteBufUtils.hexStringToBytes("00 00 00 00 00 00 00 30"),\r
                 i2.getAugmentation(MetadataInstruction.class).getMetadataMask());\r
-        Instructions i3 = instructions.get(2);\r
+        Instruction i3 = instructions.get(2);\r
         Assert.assertEquals("Wrong type - i3", "org.opendaylight.yang.gen.v1.urn."\r
                 + "opendaylight.openflow.common.instruction.rev130731.ClearActions", i3.getType().getName());\r
-        Assert.assertEquals("Wrong instructions - i3", 0, i3.getAugmentation(ActionsInstruction.class).getActionsList().size());\r
-        Instructions i4 = instructions.get(3);\r
+        Assert.assertEquals("Wrong instructions - i3", 0, i3.getAugmentation(ActionsInstruction.class).getAction().size());\r
+        Instruction i4 = instructions.get(3);\r
         Assert.assertEquals("Wrong type - i4", "org.opendaylight.yang.gen.v1.urn."\r
                 + "opendaylight.openflow.common.instruction.rev130731.Meter", i4.getType().getName());\r
         Assert.assertEquals("Wrong meterId - i4", 66051, i4.getAugmentation(MeterIdInstruction.class).getMeterId().intValue());\r
-        Instructions i5 = instructions.get(4);\r
+        Instruction i5 = instructions.get(4);\r
         Assert.assertEquals("Wrong type - i5", "org.opendaylight.yang.gen.v1.urn."\r
                 + "opendaylight.openflow.common.instruction.rev130731.WriteActions", i5.getType().getName());\r
-        Assert.assertEquals("Wrong instructions - i5", 2, i5.getAugmentation(ActionsInstruction.class).getActionsList().size());\r
-        Action action1 = i5.getAugmentation(ActionsInstruction.class).getActionsList().get(0).getAction();\r
+        Assert.assertEquals("Wrong instructions - i5", 2, i5.getAugmentation(ActionsInstruction.class).getAction().size());\r
+        Action action1 = i5.getAugmentation(ActionsInstruction.class).getAction().get(0);\r
         Assert.assertEquals("Wrong action", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.Output",\r
                 action1.getType().getName());\r
         Assert.assertEquals("Wrong action", 37, action1.getAugmentation(PortAction.class).getPort().getValue().intValue());\r
         Assert.assertEquals("Wrong action", 53, action1.getAugmentation(MaxLengthAction.class).getMaxLength().intValue());\r
-        Action action2 = i5.getAugmentation(ActionsInstruction.class).getActionsList().get(1).getAction();\r
+        Action action2 = i5.getAugmentation(ActionsInstruction.class).getAction().get(1);\r
         Assert.assertEquals("Wrong action", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.Group",\r
                 action2.getType().getName());\r
         Assert.assertEquals("Wrong action", 80, action2.getAugmentation(GroupIdAction.class).getGroupId().intValue());\r
-        Instructions i6 = instructions.get(5);\r
+        Instruction i6 = instructions.get(5);\r
         Assert.assertEquals("Wrong type - i6", "org.opendaylight.yang.gen.v1.urn."\r
                 + "opendaylight.openflow.common.instruction.rev130731.ApplyActions", i6.getType().getName());\r
-        Assert.assertEquals("Wrong instructions - i6", 2, i6.getAugmentation(ActionsInstruction.class).getActionsList().size());\r
-        action1 = i6.getAugmentation(ActionsInstruction.class).getActionsList().get(0).getAction();\r
+        Assert.assertEquals("Wrong instructions - i6", 2, i6.getAugmentation(ActionsInstruction.class).getAction().size());\r
+        action1 = i6.getAugmentation(ActionsInstruction.class).getAction().get(0);\r
         Assert.assertEquals("Wrong action", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetQueue",\r
                 action1.getType().getName());\r
         Assert.assertEquals("Wrong action", 37, action1.getAugmentation(QueueIdAction.class).getQueueId().intValue());\r
-        action2 = i6.getAugmentation(ActionsInstruction.class).getActionsList().get(1).getAction();\r
+        action2 = i6.getAugmentation(ActionsInstruction.class).getAction().get(1);\r
         Assert.assertEquals("Wrong action", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetMplsTtl",\r
                 action2.getType().getName());\r
         Assert.assertEquals("Wrong action", 5, action2.getAugmentation(MplsTtlAction.class).getMplsTtl().intValue());\r
index 7a90123ac48d6558a35e3d906d497d5245ce938e..192d1950d3191298abe628852ea92c679148c499 100644 (file)
@@ -13,9 +13,6 @@ import io.netty.buffer.UnpooledByteBufAllocator;
 import java.util.ArrayList;\r
 import java.util.List;\r
 \r
-\r
-\r
-\r
 import org.junit.Assert;\r
 import org.junit.Test;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.ActionsInstruction;\r
@@ -38,17 +35,16 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev1
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PopPbb;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PushVlan;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetNwTtl;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsList;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsListBuilder;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.actions.list.ActionBuilder;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.ActionBuilder;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.ApplyActions;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.ClearActions;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.GotoTable;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.Meter;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.WriteActions;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.WriteMetadata;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.Instructions;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.InstructionsBuilder;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.grouping.Instruction;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.instruction.rev130731.instructions.grouping.InstructionBuilder;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.EtherType;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortNumber;\r
 \r
@@ -63,15 +59,15 @@ public class InstructionsSerializerTest {
      */\r
     @Test\r
     public void test() {\r
-        List<Instructions> instructions = new ArrayList<>();\r
+        List<Instruction> instructions = new ArrayList<>();\r
         // Goto_table instruction\r
-        InstructionsBuilder builder = new InstructionsBuilder();\r
+        InstructionBuilder builder = new InstructionBuilder();\r
         builder.setType(GotoTable.class);\r
         TableIdInstructionBuilder tableIdBuilder = new TableIdInstructionBuilder();\r
         tableIdBuilder.setTableId((short) 5);\r
         builder.addAugmentation(TableIdInstruction.class, tableIdBuilder.build());\r
         instructions.add(builder.build());\r
-        builder = new InstructionsBuilder();\r
+        builder = new InstructionBuilder();\r
         // Write_metadata instruction\r
         builder.setType(WriteMetadata.class);\r
         MetadataInstructionBuilder metaBuilder = new MetadataInstructionBuilder();\r
@@ -80,62 +76,54 @@ public class InstructionsSerializerTest {
         builder.addAugmentation(MetadataInstruction.class, metaBuilder.build());\r
         instructions.add(builder.build());\r
         // Clear_actions instruction\r
-        builder = new InstructionsBuilder();\r
+        builder = new InstructionBuilder();\r
         builder.setType(ClearActions.class);\r
         instructions.add(builder.build());\r
         // Meter instruction\r
-        builder = new InstructionsBuilder();\r
+        builder = new InstructionBuilder();\r
         builder.setType(Meter.class);\r
         MeterIdInstructionBuilder meterBuilder = new MeterIdInstructionBuilder();\r
         meterBuilder.setMeterId(42L);\r
         builder.addAugmentation(MeterIdInstruction.class, meterBuilder.build());\r
         instructions.add(builder.build());\r
         // Write_actions instruction\r
-        builder = new InstructionsBuilder();\r
+        builder = new InstructionBuilder();\r
         builder.setType(WriteActions.class);\r
         ActionsInstructionBuilder actionsBuilder = new ActionsInstructionBuilder();\r
-        List<ActionsList> actions = new ArrayList<>();\r
-        ActionsListBuilder listBuilder = new ActionsListBuilder();\r
-        ActionBuilder actBuilder = new ActionBuilder();\r
-        actBuilder.setType(Output.class);\r
+        List<Action> actions = new ArrayList<>();\r
+        ActionBuilder actionBuilder = new ActionBuilder();\r
+        actionBuilder.setType(Output.class);\r
         PortActionBuilder portBuilder = new PortActionBuilder();\r
         portBuilder.setPort(new PortNumber(45L));\r
-        actBuilder.addAugmentation(PortAction.class, portBuilder.build());\r
+        actionBuilder.addAugmentation(PortAction.class, portBuilder.build());\r
         MaxLengthActionBuilder maxBuilder = new MaxLengthActionBuilder();\r
         maxBuilder.setMaxLength(55);\r
-        actBuilder.addAugmentation(MaxLengthAction.class, maxBuilder.build());\r
-        listBuilder.setAction(actBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
-        actBuilder = new ActionBuilder();\r
-        actBuilder.setType(SetNwTtl.class);\r
+        actionBuilder.addAugmentation(MaxLengthAction.class, maxBuilder.build());\r
+        actions.add(actionBuilder.build());\r
+        actionBuilder = new ActionBuilder();\r
+        actionBuilder.setType(SetNwTtl.class);\r
         NwTtlActionBuilder nwTtl = new NwTtlActionBuilder();\r
         nwTtl.setNwTtl((short) 64);\r
-        actBuilder.addAugmentation(NwTtlAction.class, nwTtl.build());\r
-        listBuilder.setAction(actBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        actionsBuilder.setActionsList(actions);\r
+        actionBuilder.addAugmentation(NwTtlAction.class, nwTtl.build());\r
+        actions.add(actionBuilder.build());\r
+        actionsBuilder.setAction(actions);\r
         builder.addAugmentation(ActionsInstruction.class, actionsBuilder.build());\r
         instructions.add(builder.build());\r
         // Apply_actions instruction\r
-        builder = new InstructionsBuilder();\r
+        builder = new InstructionBuilder();\r
         builder.setType(ApplyActions.class);\r
         actionsBuilder = new ActionsInstructionBuilder();\r
         actions = new ArrayList<>();\r
-        listBuilder = new ActionsListBuilder();\r
-        actBuilder = new ActionBuilder();\r
-        actBuilder.setType(PushVlan.class);\r
+        actionBuilder = new ActionBuilder();\r
+        actionBuilder.setType(PushVlan.class);\r
         EthertypeActionBuilder ethertypeBuilder = new EthertypeActionBuilder();\r
         ethertypeBuilder.setEthertype(new EtherType(14));\r
-        actBuilder.addAugmentation(EthertypeAction.class, ethertypeBuilder.build());\r
-        listBuilder.setAction(actBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
-        actBuilder = new ActionBuilder();\r
-        actBuilder.setType(PopPbb.class);\r
-        listBuilder.setAction(actBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        actionsBuilder.setActionsList(actions);\r
+        actionBuilder.addAugmentation(EthertypeAction.class, ethertypeBuilder.build());\r
+        actions.add(actionBuilder.build());\r
+        actionBuilder = new ActionBuilder();\r
+        actionBuilder.setType(PopPbb.class);\r
+        actions.add(actionBuilder.build());\r
+        actionsBuilder.setAction(actions);\r
         builder.addAugmentation(ActionsInstruction.class, actionsBuilder.build());\r
         instructions.add(builder.build());\r
         \r
index e8cd38b9be5df2b2e1f52fd82a4277ec2da7070d..4de1c3a88ca3407ccec1d60355a0b1de0ee4152f 100644 (file)
@@ -86,8 +86,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.UdpD
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.UdpSrc;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.VlanPcp;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.VlanVid;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntries;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.match.grouping.Match;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.match.grouping.Match;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntries;\r
 \r
 /**\r
  * @author michal.polkorab\r
index b605f9422527e07ea846e58b16534bd15bda72b2..2a74162a0e2c4affa659b736e673469f77e81bb0 100644 (file)
@@ -36,10 +36,10 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.Nxm0
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.Nxm1Class;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.OpenflowBasicClass;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.OxmMatchType;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntries;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntriesBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.match.grouping.Match;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.match.grouping.MatchBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.match.grouping.Match;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.match.grouping.MatchBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntries;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntriesBuilder;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
index 323a901363a614efb3cb3fe829a0e099dec2ad4c..4b459d5c16ad1a397a031c3deb5545dfea191103 100644 (file)
@@ -116,10 +116,10 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.UdpD
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.UdpSrc;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.VlanPcp;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.VlanVid;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntries;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.MatchEntriesBuilder;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.match.grouping.Match;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.match.grouping.MatchBuilder;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.match.grouping.Match;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.match.grouping.MatchBuilder;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntries;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev130731.oxm.fields.grouping.MatchEntriesBuilder;\r
 \r
 /**\r
  * @author michal.polkorab\r
index d2db8e2f8f826bd260b44f8243c03e5f8ad859dd..62b00a8fd60d2d8259626a527af575bbf2a7eadb 100644 (file)
@@ -23,8 +23,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.QueueIdAction;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.VlanPcpAction;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev131002.VlanVidAction;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsList;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.actions.list.Action;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;\r
 \r
 /**\r
  * @author michal.polkorab\r
@@ -52,70 +51,70 @@ public class OF10ActionsDeserializerTest {
                 + "FF FF 00 08 00 00 12 34");\r
         \r
         message.skipBytes(4); // skip XID\r
-        List<ActionsList> actions = OF10ActionsDeserializer.createActionsList(message);\r
+        List<Action> actions = OF10ActionsDeserializer.createActionsList(message);\r
         Assert.assertEquals("Wrong number of actions", 13, actions.size());\r
-        Action action1 = actions.get(0).getAction();\r
+        Action action1 = actions.get(0);\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight"\r
                 + ".openflow.common.action.rev130731.Output", action1.getType().getName());\r
         Assert.assertEquals("Wrong port", 16,\r
                 action1.getAugmentation(PortAction.class).getPort().getValue().intValue());\r
         Assert.assertEquals("Wrong max-length", 8192,\r
                 action1.getAugmentation(MaxLengthAction.class).getMaxLength().intValue());\r
-        Action action2 = actions.get(1).getAction();\r
+        Action action2 = actions.get(1);\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight"\r
                 + ".openflow.common.action.rev130731.SetVlanVid", action2.getType().getName());\r
         Assert.assertEquals("Wrong vlan-vid", 4112,\r
                 action2.getAugmentation(VlanVidAction.class).getVlanVid().intValue());\r
-        Action action3 = actions.get(2).getAction();\r
+        Action action3 = actions.get(2);\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight"\r
                 + ".openflow.common.action.rev130731.SetVlanPcp", action3.getType().getName());\r
         Assert.assertEquals("Wrong vlan-pcp", 37,\r
                 action3.getAugmentation(VlanPcpAction.class).getVlanPcp().intValue());\r
-        Action action4 = actions.get(3).getAction();\r
+        Action action4 = actions.get(3);\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight"\r
                 + ".openflow.common.action.rev130731.StripVlan", action4.getType().getName());\r
-        Action action5 = actions.get(4).getAction();\r
+        Action action5 = actions.get(4);\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight"\r
                 + ".openflow.common.action.rev130731.SetDlSrc", action5.getType().getName());\r
         Assert.assertArrayEquals("Wrong dl-src", ByteBufUtils.macAddressToBytes("01:02:03:04:05:06"), \r
                 ByteBufUtils.macAddressToBytes(action5.getAugmentation(DlAddressAction.class).getDlAddress().getValue()));\r
-        Action action6 = actions.get(5).getAction();\r
+        Action action6 = actions.get(5);\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight"\r
                 + ".openflow.common.action.rev130731.SetDlDst", action6.getType().getName());\r
         Assert.assertArrayEquals("Wrong dl-dst", ByteBufUtils.macAddressToBytes("02:03:04:05:06:07"), \r
                 ByteBufUtils.macAddressToBytes(action6.getAugmentation(DlAddressAction.class).getDlAddress().getValue()));\r
-        Action action7 = actions.get(6).getAction();\r
+        Action action7 = actions.get(6);\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight"\r
                 + ".openflow.common.action.rev130731.SetNwSrc", action7.getType().getName());\r
         Assert.assertEquals("Wrong nw-src", new Ipv4Address("10.0.0.1"),\r
                 action7.getAugmentation(IpAddressAction.class).getIpAddress());\r
-        Action action8 = actions.get(7).getAction();\r
+        Action action8 = actions.get(7);\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight"\r
                 + ".openflow.common.action.rev130731.SetNwDst", action8.getType().getName());\r
         Assert.assertEquals("Wrong nw-dst", new Ipv4Address("11.0.0.2"),\r
                 action8.getAugmentation(IpAddressAction.class).getIpAddress());\r
-        Action action9 = actions.get(8).getAction();\r
+        Action action9 = actions.get(8);\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight"\r
                 + ".openflow.common.action.rev130731.SetNwTos", action9.getType().getName());\r
         Assert.assertEquals("Wrong nw-tos", 1, action9.getAugmentation(NwTosAction.class).getNwTos().intValue());\r
-        Action action10 = actions.get(9).getAction();\r
+        Action action10 = actions.get(9);\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight"\r
                 + ".openflow.common.action.rev130731.SetTpSrc", action10.getType().getName());\r
         Assert.assertEquals("Wrong port", 2, action10.getAugmentation(PortAction.class)\r
                 .getPort().getValue().intValue());\r
-        Action action11 = actions.get(10).getAction();\r
+        Action action11 = actions.get(10);\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight"\r
                 + ".openflow.common.action.rev130731.SetTpDst", action11.getType().getName());\r
         Assert.assertEquals("Wrong port", 3, action11.getAugmentation(PortAction.class)\r
                 .getPort().getValue().intValue());\r
-        Action action12 = actions.get(11).getAction();\r
+        Action action12 = actions.get(11);\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight"\r
                 + ".openflow.common.action.rev130731.Enqueue", action12.getType().getName());\r
         Assert.assertEquals("Wrong port", 4, action12.getAugmentation(PortAction.class)\r
                 .getPort().getValue().intValue());\r
         Assert.assertEquals("Wrong queue-id", 48,\r
                 action12.getAugmentation(QueueIdAction.class).getQueueId().intValue());\r
-        Action action13 = actions.get(12).getAction();\r
+        Action action13 = actions.get(12);\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight"\r
                 + ".openflow.common.action.rev130731.Experimenter", action13.getType().getName());\r
         Assert.assertEquals("Wrong port", 4660, action13.getAugmentation(ExperimenterAction.class)\r
index 1f5ad76ac6f9398e0da973dc196fbb9dacf8049a..0c1706db0d3d39fb1b6b9a6ad80eec7d58a0a15c 100644 (file)
@@ -48,9 +48,8 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev1
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetVlanPcp;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetVlanVid;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.StripVlan;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsList;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.ActionsListBuilder;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.actions.list.ActionBuilder;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.Action;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.grouping.ActionBuilder;\r
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.PortNumber;\r
 \r
 /**\r
@@ -64,8 +63,7 @@ public class OF10ActionsSerializerTest {
      */\r
     @Test\r
     public void test() {\r
-        List<ActionsList> actions = new ArrayList<>();\r
-        ActionsListBuilder listBuilder = new ActionsListBuilder();\r
+        List<Action> actions = new ArrayList<>();\r
         ActionBuilder actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(Output.class);\r
         PortActionBuilder portBuilder = new PortActionBuilder();\r
@@ -74,86 +72,64 @@ public class OF10ActionsSerializerTest {
         MaxLengthActionBuilder maxLen = new MaxLengthActionBuilder();\r
         maxLen.setMaxLength(32);\r
         actionBuilder.addAugmentation(MaxLengthAction.class, maxLen.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(SetVlanVid.class);\r
         VlanVidActionBuilder vlanBuilder = new VlanVidActionBuilder();\r
         vlanBuilder.setVlanVid(15);\r
         actionBuilder.addAugmentation(VlanVidAction.class, vlanBuilder.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(SetVlanPcp.class);\r
         VlanPcpActionBuilder pcpBuilder = new VlanPcpActionBuilder();\r
         pcpBuilder.setVlanPcp((short) 16);\r
         actionBuilder.addAugmentation(VlanPcpAction.class, pcpBuilder.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(StripVlan.class);\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(SetDlSrc.class);\r
         DlAddressActionBuilder dlBuilder = new DlAddressActionBuilder();\r
         dlBuilder.setDlAddress(new MacAddress("00:00:00:02:03:04"));\r
         actionBuilder.addAugmentation(DlAddressAction.class, dlBuilder.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(SetDlDst.class);\r
         dlBuilder = new DlAddressActionBuilder();\r
         dlBuilder.setDlAddress(new MacAddress("00:00:00:01:02:03"));\r
         actionBuilder.addAugmentation(DlAddressAction.class, dlBuilder.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(SetNwSrc.class);\r
         IpAddressActionBuilder ipBuilder = new IpAddressActionBuilder();\r
         ipBuilder.setIpAddress(new Ipv4Address("10.0.0.1"));\r
         actionBuilder.addAugmentation(IpAddressAction.class, ipBuilder.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(SetNwDst.class);\r
         ipBuilder = new IpAddressActionBuilder();\r
         ipBuilder.setIpAddress(new Ipv4Address("10.0.0.3"));\r
         actionBuilder.addAugmentation(IpAddressAction.class, ipBuilder.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(SetNwTos.class);\r
         NwTosActionBuilder tosBuilder = new NwTosActionBuilder();\r
         tosBuilder.setNwTos((short) 204);\r
         actionBuilder.addAugmentation(NwTosAction.class, tosBuilder.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(SetTpSrc.class);\r
         portBuilder = new PortActionBuilder();\r
         portBuilder.setPort(new PortNumber(6653L));\r
         actionBuilder.addAugmentation(PortAction.class, portBuilder.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(SetTpDst.class);\r
         portBuilder = new PortActionBuilder();\r
         portBuilder.setPort(new PortNumber(6633L));\r
         actionBuilder.addAugmentation(PortAction.class, portBuilder.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(Enqueue.class);\r
         portBuilder = new PortActionBuilder();\r
@@ -162,16 +138,13 @@ public class OF10ActionsSerializerTest {
         QueueIdActionBuilder queueBuilder = new QueueIdActionBuilder();\r
         queueBuilder.setQueueId(400L);\r
         actionBuilder.addAugmentation(QueueIdAction.class, queueBuilder.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
-        listBuilder = new ActionsListBuilder();\r
+        actions.add(actionBuilder.build());\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setType(Experimenter.class);\r
         ExperimenterActionBuilder expBuilder = new ExperimenterActionBuilder();\r
         expBuilder.setExperimenter(500L);\r
         actionBuilder.addAugmentation(ExperimenterAction.class, expBuilder.build());\r
-        listBuilder.setAction(actionBuilder.build());\r
-        actions.add(listBuilder.build());\r
+        actions.add(actionBuilder.build());\r
         \r
         ByteBuf out = UnpooledByteBufAllocator.DEFAULT.buffer();\r
         OF10ActionsSerializer.encodeActionsV10(out, actions);\r