Merge "DeviceState implementation"
authormichal rehak <mirehak@cisco.com>
Tue, 31 Mar 2015 09:25:45 +0000 (09:25 +0000)
committerGerrit Code Review <gerrit@opendaylight.org>
Tue, 31 Mar 2015 09:25:46 +0000 (09:25 +0000)
36 files changed:
extension/openflowjava-extension-nicira-api/src/main/java/org/opendaylight/openflowjava/nx/api/NiciraActionSerializerKey.java
extension/openflowjava-extension-nicira-api/src/main/java/org/opendaylight/openflowjava/nx/api/NiciraUtil.java
extension/openflowjava-extension-nicira-api/src/main/java/org/opendaylight/openflowjava/nx/api/impl/NiciraExtensionCodecRegistratorImpl.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/action/AbstractActionCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/action/MultipathCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/action/OutputRegCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/action/RegLoadCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/action/RegMoveCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/action/ResubmitCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/action/SetNsiCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/action/SetNspCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/match/AbstractMatchCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/match/AbstractRegCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/match/ArpOpCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/match/ArpShaCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/match/ArpSpaCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/match/ArpThaCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/match/ArpTpaCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/match/EthDstCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/match/EthSrcCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/match/EthTypeCodec.java
extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/match/TunIdCodec.java
extension/openflowplugin-extension-api/src/main/java/org/opendaylight/openflowplugin/extension/api/ExtensionConverterRegistrator.java
extension/openflowplugin-extension-nicira/src/main/java/org/opendaylight/openflowplugin/extension/vendor/nicira/convertor/action/ActionUtil.java
extension/openflowplugin-extension-nicira/src/main/java/org/opendaylight/openflowplugin/extension/vendor/nicira/convertor/action/MultipathConvertor.java
extension/openflowplugin-extension-nicira/src/main/java/org/opendaylight/openflowplugin/extension/vendor/nicira/convertor/action/OutputRegConvertor.java
extension/openflowplugin-extension-nicira/src/main/java/org/opendaylight/openflowplugin/extension/vendor/nicira/convertor/action/RegLoadConvertor.java
extension/openflowplugin-extension-nicira/src/main/java/org/opendaylight/openflowplugin/extension/vendor/nicira/convertor/action/RegMoveConvertor.java
extension/openflowplugin-extension-nicira/src/main/java/org/opendaylight/openflowplugin/extension/vendor/nicira/convertor/action/ResubmitConvertor.java
extension/openflowplugin-extension-nicira/src/main/java/org/opendaylight/openflowplugin/extension/vendor/nicira/convertor/action/SetNsiConvertor.java
extension/openflowplugin-extension-nicira/src/main/java/org/opendaylight/openflowplugin/extension/vendor/nicira/convertor/action/SetNspConvertor.java
extension/openflowplugin-extension-nicira/src/main/java/org/opendaylight/openflowplugin/extension/vendor/nicira/convertor/match/RegConvertor.java
extension/openflowplugin-extension-nicira/src/main/java/org/opendaylight/openflowplugin/extension/vendor/nicira/convertor/match/TunIdConvertor.java
openflowplugin/src/main/java/org/opendaylight/openflowplugin/openflow/md/core/extension/ExtensionConverterManagerImpl.java
openflowplugin/src/main/java/org/opendaylight/openflowplugin/openflow/md/core/sal/convertor/ActionConvertor.java
openflowplugin/src/test/java/org/opendaylight/openflowplugin/openflow/md/core/sal/convertor/ActionConvertorV13Test.java

index 6b44d860985664a692c40ac0ac7cb0db33f6adc3..5a2289d6f584727ed9ba0885b9cf373c704c88f9 100644 (file)
@@ -8,6 +8,7 @@
 package org.opendaylight.openflowjava.nx.api;
 
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.ExperimenterActionSubType;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.ActionChoice;
 
 /**
  * @author msunal
@@ -16,13 +17,13 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev1
 public class NiciraActionSerializerKey {
     
     private final short version;
-    private final Class<? extends ExperimenterActionSubType> subtype;
+    private final Class<? extends ActionChoice> subtype;
 
     /**
      * @param version protocol wire version
      * @param subtype nx_action_subtype
      */
-    public NiciraActionSerializerKey(short version, Class<? extends ExperimenterActionSubType> subtype) {
+    public NiciraActionSerializerKey(short version, Class<? extends ActionChoice> subtype) {
         this.version = version;
         this.subtype = subtype;
     }
@@ -31,7 +32,7 @@ public class NiciraActionSerializerKey {
         return version;
     }
 
-    public Class<? extends ExperimenterActionSubType> getSubtype() {
+    public Class<? extends ActionChoice> getSubtype() {
         return subtype;
     }
 
index f7b795c424746923e0cc1606a346f9e7fa1d973e..1f7797e4484ef87e2da6144039c17fd418f86ef1 100644 (file)
@@ -1,22 +1,22 @@
 /**
  * Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
- * 
+ *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
 package org.opendaylight.openflowjava.nx.api;
 
-import org.opendaylight.openflowjava.protocol.api.keys.ExperimenterActionSerializerKey;
+import org.opendaylight.openflowjava.protocol.api.keys.ActionSerializerKey;
 
 /**
  * @author msunal
- *
  */
 public final class NiciraUtil {
-    
-    public static final ExperimenterActionSerializerKey createOfJavaKeyFrom(NiciraActionSerializerKey key) {
-        return new ExperimenterActionSerializerKey(key.getVersion(), NiciraConstants.NX_VENDOR_ID, key.getSubtype());
+
+
+    public static final ActionSerializerKey<?> createOfJavaKeyFrom(NiciraActionSerializerKey key) {
+        return new ActionSerializerKey<>(key.getVersion(), key.getSubtype(), NiciraConstants.NX_VENDOR_ID);
     }
 
 }
index 961221f8cfa39f8eb492f05c5ec8dad42ad576a8..505c087cc656e1d9a5d5a35a83d7efe5dc62c2f4 100644 (file)
@@ -19,8 +19,8 @@ import org.opendaylight.openflowjava.protocol.api.extensibility.OFDeserializer;
 import org.opendaylight.openflowjava.protocol.api.extensibility.OFGeneralDeserializer;
 import org.opendaylight.openflowjava.protocol.api.extensibility.OFGeneralSerializer;
 import org.opendaylight.openflowjava.protocol.api.extensibility.OFSerializer;
+import org.opendaylight.openflowjava.protocol.api.keys.ActionSerializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.ExperimenterActionDeserializerKey;
-import org.opendaylight.openflowjava.protocol.api.keys.ExperimenterActionSerializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.ExperimenterDeserializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.ExperimenterSerializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntryDeserializerKey;
@@ -59,7 +59,7 @@ public class NiciraExtensionCodecRegistratorImpl implements NiciraExtensionCodec
         }
     }
 
-    private void registerActionSerializer(ExperimenterActionSerializerKey key, OFGeneralSerializer serializer) {
+    private void registerActionSerializer(ActionSerializerKey<?> key, OFGeneralSerializer serializer) {
         for (SwitchConnectionProvider provider : providers) {
             provider.registerActionSerializer(key, serializer);
         }
index 6bd4235096a2c29c3ef781d1b03b70111fd88e1c..cddc7a00fca3f04b394c3216e1db7bb2a513006e 100644 (file)
@@ -43,6 +43,7 @@ public abstract class AbstractActionCodec implements OFSerializer<Action>, OFDes
         // subtype
         message.skipBytes(EncodeConstants.SIZE_OF_SHORT_IN_BYTES);
         ActionBuilder actionBuilder = new ActionBuilder();
+        actionBuilder.setExperimenterId(getExperimenterId());
         return actionBuilder;
     }
 
index 02270cea08adfa166c2e083e1684633ce9b3c0c9..91d180fa9bc6148b37339abf234a18d85e235ceb 100644 (file)
@@ -35,7 +35,7 @@ public class MultipathCodec extends AbstractActionCodec {
     public static final int LENGTH = 32;
     public static final byte NXAST_MULTIPATH_SUBTYPE = 10;
     public static final NiciraActionSerializerKey SERIALIZER_KEY =
-            new NiciraActionSerializerKey(EncodeConstants.OF13_VERSION_ID, NxmNxMultipath.class);
+            new NiciraActionSerializerKey(EncodeConstants.OF13_VERSION_ID, ActionMultipath.class);
     public static final NiciraActionDeserializerKey DESERIALIZER_KEY =
             new NiciraActionDeserializerKey(EncodeConstants.OF13_VERSION_ID, NXAST_MULTIPATH_SUBTYPE);
 
@@ -74,7 +74,6 @@ public class MultipathCodec extends AbstractActionCodec {
 
         nxActionMultipathBuilder.setOfsNbits(message.readUnsignedShort());
         nxActionMultipathBuilder.setDst(message.readUnsignedInt());
-        nxActionMultipathBuilder.setExperimenterId(getExperimenterId());
         actionMultipathBuilder.setNxActionMultipath(nxActionMultipathBuilder.build());
         actionBuilder.setActionChoice(actionMultipathBuilder.build());
 
index 28e1c7f3ae2e16698b2f38765aef24830d939ccf..77f577226b3ec3859cc6c76240476541656f6a92 100644 (file)
@@ -12,6 +12,7 @@ import io.netty.buffer.ByteBuf;
 import org.opendaylight.openflowjava.nx.api.NiciraActionDeserializerKey;
 import org.opendaylight.openflowjava.nx.api.NiciraActionSerializerKey;
 import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.output.action._case.OutputAction;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping.Action;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping.ActionBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.action.rev140421.NxmNxOutputReg;
@@ -29,7 +30,7 @@ public class OutputRegCodec extends AbstractActionCodec {
     public static final byte SUBTYPE = 15; // NXAST_OUTPUT_REG
     public static final byte PADDING_IN_OUTPUT_REG_ACTION = 6;
     public static final NiciraActionSerializerKey SERIALIZER_KEY =
-            new NiciraActionSerializerKey(EncodeConstants.OF13_VERSION_ID, NxmNxOutputReg.class);
+            new NiciraActionSerializerKey(EncodeConstants.OF13_VERSION_ID, ActionOutputReg.class);
     public static final NiciraActionDeserializerKey DESERIALIZER_KEY =
             new NiciraActionDeserializerKey(EncodeConstants.OF13_VERSION_ID, SUBTYPE);
 
@@ -51,7 +52,6 @@ public class OutputRegCodec extends AbstractActionCodec {
         nxActionOutputRegBuilder.setNBits(message.readUnsignedShort());
         nxActionOutputRegBuilder.setSrc(message.readUnsignedInt());
         nxActionOutputRegBuilder.setMaxLen(message.readUnsignedShort());
-        nxActionOutputRegBuilder.setExperimenterId(getExperimenterId());
         message.skipBytes(PADDING_IN_OUTPUT_REG_ACTION);
         builder.setNxActionOutputReg(nxActionOutputRegBuilder.build());
         actionBuilder.setActionChoice(builder.build());
index f12c7edbe038f6ad5dcb17f85dedd106da9ba2f3..5638f05411476533de48a79cf17a2eeece9e2cae 100644 (file)
@@ -17,7 +17,7 @@ public class RegLoadCodec extends AbstractActionCodec {
     public static final int LENGTH = 24;
     public static final byte SUBTYPE = 7; // NXAST_REG_LOAD
     public static final NiciraActionSerializerKey SERIALIZER_KEY = new NiciraActionSerializerKey(
-            EncodeConstants.OF13_VERSION_ID, NxmNxRegLoad.class);
+            EncodeConstants.OF13_VERSION_ID, ActionRegLoad.class);
     public static final NiciraActionDeserializerKey DESERIALIZER_KEY = new NiciraActionDeserializerKey(
             EncodeConstants.OF13_VERSION_ID, SUBTYPE);
 
@@ -38,7 +38,6 @@ public class RegLoadCodec extends AbstractActionCodec {
         nxActionRegLoadBuilder.setOfsNbits(message.readUnsignedShort());
         nxActionRegLoadBuilder.setDst(message.readUnsignedInt());
         nxActionRegLoadBuilder.setValue(BigInteger.valueOf(message.readLong()));
-        nxActionRegLoadBuilder.setExperimenterId(getExperimenterId());
         actionRegLoadBuilder.setNxActionRegLoad(nxActionRegLoadBuilder.build());
         actionBuilder.setActionChoice(actionRegLoadBuilder.build());
         return actionBuilder.build();
index 00caf8a9546d40bf51bacba635012085e0f7562b..c220981239fbb18e69606737f1281a478976b8a5 100644 (file)
@@ -16,7 +16,7 @@ public class RegMoveCodec extends AbstractActionCodec {
     public static final int LENGTH = 24;
     public static final byte SUBTYPE = 6; // NXAST_REG_MOVE
     public static final NiciraActionSerializerKey SERIALIZER_KEY = new NiciraActionSerializerKey(
-            EncodeConstants.OF13_VERSION_ID, NxmNxRegMove.class);
+            EncodeConstants.OF13_VERSION_ID, ActionRegMove.class);
     public static final NiciraActionDeserializerKey DESERIALIZER_KEY = new NiciraActionDeserializerKey(
             EncodeConstants.OF13_VERSION_ID, SUBTYPE);
 
@@ -41,7 +41,6 @@ public class RegMoveCodec extends AbstractActionCodec {
         nxActionRegMoveBuilder.setDstOfs(message.readUnsignedShort());
         nxActionRegMoveBuilder.setSrc(message.readUnsignedInt());
         nxActionRegMoveBuilder.setDst(message.readUnsignedInt());
-        nxActionRegMoveBuilder.setExperimenterId(getExperimenterId());
         actionRegMoveBuilder.setNxActionRegMove(nxActionRegMoveBuilder.build());
         actionBuilder.setActionChoice(actionRegMoveBuilder.build());
         return actionBuilder.build();
index 06bb6330f79395c292c2ee54fc69fce12d5b7da7..dfafb91ed1a2adf78fb168102e65a549de50797a 100644 (file)
@@ -31,7 +31,7 @@ public class ResubmitCodec extends AbstractActionCodec {
     public static final byte NXAST_RESUBMIT_SUBTYPE = 1;
     public static final byte NXAST_RESUBMIT_TABLE_SUBTYPE = 14;
     public static final NiciraActionSerializerKey SERIALIZER_KEY =
-            new NiciraActionSerializerKey(EncodeConstants.OF13_VERSION_ID, NxmNxResubmit.class);
+            new NiciraActionSerializerKey(EncodeConstants.OF13_VERSION_ID, ActionResubmit.class);
     public static final NiciraActionDeserializerKey DESERIALIZER_KEY =
             new NiciraActionDeserializerKey(EncodeConstants.OF13_VERSION_ID, NXAST_RESUBMIT_SUBTYPE);
     public static final NiciraActionDeserializerKey TABLE_DESERIALIZER_KEY =
@@ -72,8 +72,6 @@ public class ResubmitCodec extends AbstractActionCodec {
         NxActionResubmitBuilder nxActionResubmitBuilder = new NxActionResubmitBuilder();
         nxActionResubmitBuilder.setInPort(message.readUnsignedShort());
         nxActionResubmitBuilder.setTable(message.readUnsignedByte());
-        ExperimenterId experimenterId = new ExperimenterId(NiciraConstants.NX_VENDOR_ID);
-                nxActionResubmitBuilder.setExperimenterId(experimenterId);
         builder.setNxActionResubmit(nxActionResubmitBuilder.build());
         message.skipBytes(padding);
 
index 219c14931b86af76572645bae047b4be69b85130..37ca6c76f76323bbe62ee9da0a5d2abab168917a 100644 (file)
@@ -28,7 +28,7 @@ public class SetNsiCodec extends AbstractActionCodec {
     public static final int LENGTH = 16;
     public static final byte NXAST_SET_NSI_SUBTYPE = 33;
     public static final NiciraActionSerializerKey SERIALIZER_KEY =
-            new NiciraActionSerializerKey(EncodeConstants.OF13_VERSION_ID, NxmNxSetNsi.class);
+            new NiciraActionSerializerKey(EncodeConstants.OF13_VERSION_ID, ActionSetNsi.class);
     public static final NiciraActionDeserializerKey DESERIALIZER_KEY =
             new NiciraActionDeserializerKey(EncodeConstants.OF13_VERSION_ID, NXAST_SET_NSI_SUBTYPE);
     private static final int padding = 5; // nx_action_SetNsi : uint8_t pad[3];
@@ -47,7 +47,6 @@ public class SetNsiCodec extends AbstractActionCodec {
         ActionSetNsiBuilder builder = new ActionSetNsiBuilder();
         NxActionSetNsiBuilder nxActionSetNsiBuilder = new NxActionSetNsiBuilder();
         nxActionSetNsiBuilder.setNsi(message.readUnsignedByte());
-        nxActionSetNsiBuilder.setExperimenterId(getExperimenterId());
         message.skipBytes(padding);
 
         builder.setNxActionSetNsi(nxActionSetNsiBuilder.build());
index 3dcbe6eefe9595fbe637e4ce1047bca223be8b63..6f0145702d1c9dd6128188e61960921dc59a22a3 100644 (file)
@@ -16,7 +16,6 @@ import org.opendaylight.openflowjava.nx.api.NiciraActionSerializerKey;
 import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping.Action;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping.ActionBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.action.rev140421.NxmNxSetNsp;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.action.rev140421.action.container.action.choice.ActionSetNsp;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.action.rev140421.action.container.action.choice.ActionSetNspBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.action.rev140421.ofj.nx.action.set.nsp.grouping.NxActionSetNspBuilder;
@@ -28,7 +27,7 @@ public class SetNspCodec extends AbstractActionCodec {
     public static final int LENGTH = 16;
     public static final byte NXAST_SET_NSP_SUBTYPE = 32;
     public static final NiciraActionSerializerKey SERIALIZER_KEY =
-            new NiciraActionSerializerKey(EncodeConstants.OF13_VERSION_ID, NxmNxSetNsp.class);
+            new NiciraActionSerializerKey(EncodeConstants.OF13_VERSION_ID, ActionSetNsp.class);
     public static final NiciraActionDeserializerKey DESERIALIZER_KEY =
             new NiciraActionDeserializerKey(EncodeConstants.OF13_VERSION_ID, NXAST_SET_NSP_SUBTYPE);
     private static final int padding = 2; // nx_action_SetNsp : uint8_t pad[3];
@@ -48,7 +47,6 @@ public class SetNspCodec extends AbstractActionCodec {
         NxActionSetNspBuilder nxActionSetNspBuilder = new NxActionSetNspBuilder();
         message.skipBytes(padding);
         nxActionSetNspBuilder.setNsp(message.readUnsignedInt());
-        nxActionSetNspBuilder.setExperimenterId(getExperimenterId());
         builder.setNxActionSetNsp(nxActionSetNspBuilder.build());
         actionBuilder.setActionChoice(builder.build());
         return actionBuilder.build();
index a3802913f98a0ac0e74f8efc115a55298d6c18d8..9e1ccda26c4e671de9303e6747d28a7701ef13c0 100644 (file)
@@ -1,13 +1,10 @@
 package org.opendaylight.openflowjava.nx.codec.match;
 
 import io.netty.buffer.ByteBuf;
-import org.opendaylight.openflowjava.nx.api.NiciraConstants;
+
 import org.opendaylight.openflowjava.protocol.api.extensibility.OFDeserializer;
 import org.opendaylight.openflowjava.protocol.api.extensibility.OFSerializer;
 import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev150225.oxm.container.match.entry.value.ExperimenterIdCaseBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev150225.oxm.container.match.entry.value.experimenter.id._case.ExperimenterBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.ExperimenterId;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.MatchField;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.OxmClassBase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry;
@@ -28,12 +25,6 @@ public abstract class AbstractMatchCodec implements OFSerializer<MatchEntry>, OF
         builder.setHasMask(hasMask);
         // skip match entry length - not needed
         message.skipBytes(EncodeConstants.SIZE_OF_BYTE_IN_BYTES);
-        ExperimenterIdCaseBuilder experimenterIdCaseBuilder = new ExperimenterIdCaseBuilder();
-        ExperimenterBuilder experimenterBuilder = new ExperimenterBuilder();
-        experimenterBuilder.setExperimenter(new ExperimenterId(NiciraConstants.NX_VENDOR_ID));
-        experimenterIdCaseBuilder.setExperimenter(experimenterBuilder.build());
-
-        builder.setMatchEntryValue(experimenterIdCaseBuilder.build());
         return builder;
     }
 
index ac09ff6ab6ab2f54f6f044c4bb807c9fe310b0ad..7eaadc966b0e6de60f7c0b9226183e05db26d0e7 100644 (file)
@@ -1,12 +1,15 @@
 package org.opendaylight.openflowjava.nx.codec.match;
 
 import io.netty.buffer.ByteBuf;
+
 import org.opendaylight.openflowjava.protocol.api.util.OxmMatchConstants;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev150225.oxm.container.match.entry.value.ExperimenterIdCase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Nxm1Class;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.OxmClassBase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntryBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.ofj.nxm.nx.match.reg.grouping.RegValuesBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.RegCaseValue;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.RegCaseValueBuilder;
 
 public abstract class AbstractRegCodec extends AbstractMatchCodec {
 
@@ -15,15 +18,18 @@ public abstract class AbstractRegCodec extends AbstractMatchCodec {
     @Override
     public MatchEntry deserialize(ByteBuf message) {
         MatchEntryBuilder matchEntriesBuilder = deserializeHeader(message);
-
+        RegCaseValueBuilder caseBuilder = new RegCaseValueBuilder();
+        caseBuilder.setRegValues(new RegValuesBuilder().setValue(message.readUnsignedInt()).build());
+        matchEntriesBuilder.setMatchEntryValue(caseBuilder.build());
         return matchEntriesBuilder.build();
     }
 
     @Override
     public void serialize(MatchEntry input, ByteBuf outBuffer) {
         serializeHeader(input, outBuffer);
-        ExperimenterIdCase experimenterIdCase = ((ExperimenterIdCase) input.getMatchEntryValue());
-        outBuffer.writeInt(experimenterIdCase.getExperimenter().getExperimenter().getValue().intValue());
+        RegCaseValue regCase = ((RegCaseValue) input.getMatchEntryValue());
+        Long value = regCase.getRegValues().getValue();
+        outBuffer.writeInt(value.intValue());
     }
 
     @Override
index 645e7dd6487ebbffa2ef46231b43faa8f898c7c0..47eec8b1a5cca77ab09be436ef2de08cfbcb8250 100644 (file)
@@ -1,20 +1,20 @@
 package org.opendaylight.openflowjava.nx.codec.match;
 
 import io.netty.buffer.ByteBuf;
+
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntryDeserializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntrySerializerKey;
 import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;
 import org.opendaylight.openflowjava.protocol.api.util.OxmMatchConstants;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.ArpOp;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.MatchField;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Nxm0Class;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.OxmClassBase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntryBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ArpOpCase;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ArpOpCaseBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.arp.op._case.ArpOpBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmOfArpOp;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.ofj.nxm.of.match.arp.op.grouping.ArpOpValuesBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.ArpOpCaseValue;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.ArpOpCaseValueBuilder;
 
 public class ArpOpCodec extends AbstractMatchCodec {
 
@@ -28,19 +28,16 @@ public class ArpOpCodec extends AbstractMatchCodec {
     @Override
     public void serialize(MatchEntry input, ByteBuf outBuffer) {
         serializeHeader(input, outBuffer);
-        ArpOpCase arpOpCase = ((ArpOpCase) input.getMatchEntryValue());
-        outBuffer.writeShort(arpOpCase.getArpOp().getOpCode());
+        ArpOpCaseValue arpOpCase = ((ArpOpCaseValue) input.getMatchEntryValue());
+        outBuffer.writeShort(arpOpCase.getArpOpValues().getValue());
     }
 
     @Override
     public MatchEntry deserialize(ByteBuf message) {
         MatchEntryBuilder matchEntryBuilder = deserializeHeader(message);
-        ArpOpCaseBuilder arpOpCaseBuilder = new ArpOpCaseBuilder();
-        ArpOpBuilder arpOpBuilder = new ArpOpBuilder();
-        arpOpBuilder.setOpCode(message.readUnsignedShort());
-        arpOpCaseBuilder.setArpOp(arpOpBuilder.build());
-        matchEntryBuilder.setMatchEntryValue(arpOpCaseBuilder.build());
-        matchEntryBuilder.setHasMask(false);
+        ArpOpCaseValueBuilder caseBuilder = new ArpOpCaseValueBuilder();
+        caseBuilder.setArpOpValues(new ArpOpValuesBuilder().setValue(message.readUnsignedShort()).build());
+        matchEntryBuilder.setMatchEntryValue(caseBuilder.build());
         return matchEntryBuilder.build();
     }
 
index 50b61fd915390b005201ed0f21f420d47b56c5d7..f9a0699e333bbe730509a85cf58216c18d38175f 100644 (file)
@@ -1,22 +1,22 @@
 package org.opendaylight.openflowjava.nx.codec.match;
 
 import io.netty.buffer.ByteBuf;
+
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntryDeserializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntrySerializerKey;
 import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;
 import org.opendaylight.openflowjava.protocol.api.util.OxmMatchConstants;
 import org.opendaylight.openflowjava.util.ByteBufUtils;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev100924.MacAddress;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.ArpSha;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.MatchField;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Nxm1Class;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.OxmClassBase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntryBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ArpShaCase;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ArpShaCaseBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.arp.sha._case.ArpShaBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmNxArpSha;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.ofj.nxm.nx.match.arp.sha.grouping.ArpShaValuesBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.ArpShaCaseValue;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.ArpShaCaseValueBuilder;
 
 public class ArpShaCodec extends AbstractMatchCodec {
 
@@ -30,34 +30,19 @@ public class ArpShaCodec extends AbstractMatchCodec {
     @Override
     public void serialize(MatchEntry input, ByteBuf outBuffer) {
         serializeHeader(input, outBuffer);
-        ArpShaCase value = ((ArpShaCase) input.getMatchEntryValue());
-        outBuffer.writeBytes(ByteBufUtils.macAddressToBytes(value.getArpSha().getMacAddress().getValue()));
-        byte[] mask = value.getArpSha().getMask();
-        if (null != mask) {
-            outBuffer.writeBytes(mask);
-        }
+        ArpShaCaseValue value = ((ArpShaCaseValue) input.getMatchEntryValue());
+        outBuffer.writeBytes(ByteBufUtils.macAddressToBytes(value.getArpShaValues().getMacAddress().getValue()));
     }
 
     @Override
     public MatchEntry deserialize(ByteBuf message) {
         MatchEntryBuilder matchEntriesBuilder = deserializeHeader(message);
-        ArpShaCaseBuilder arpShaCaseBuilder = new ArpShaCaseBuilder();
-        ArpShaBuilder arpShaBuilder = new ArpShaBuilder();
         byte[] address = new byte[VALUE_LENGTH];
         message.readBytes(address);
-        arpShaBuilder.setMacAddress(new MacAddress(ByteBufUtils.bytesToHexString(address)));
-
-        boolean hasMask = false;
-        if (message.isReadable()) {
-            byte[] mask = new byte[VALUE_LENGTH];
-            message.readBytes(mask);
-            arpShaBuilder.setMask(mask);
-            hasMask = true;
-        }
-
-        arpShaCaseBuilder.setArpSha(arpShaBuilder.build());
-        matchEntriesBuilder.setMatchEntryValue(arpShaCaseBuilder.build());
-        matchEntriesBuilder.setHasMask(hasMask);
+        ArpShaCaseValueBuilder caseBuilder = new ArpShaCaseValueBuilder();
+        caseBuilder.setArpShaValues(new ArpShaValuesBuilder().setMacAddress(
+                new MacAddress(ByteBufUtils.macAddressToString(address))).build());
+        matchEntriesBuilder.setMatchEntryValue(caseBuilder.build());
         return matchEntriesBuilder.build();
     }
 
index 42164e97eaab58b1781f991fad9f5f27de6514ab..9bb70a4bf80085156a8e4f4146016c47a2adc519 100644 (file)
@@ -1,21 +1,20 @@
 package org.opendaylight.openflowjava.nx.codec.match;
 
 import io.netty.buffer.ByteBuf;
+
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntryDeserializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntrySerializerKey;
 import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;
 import org.opendaylight.openflowjava.protocol.api.util.OxmMatchConstants;
-import org.opendaylight.openflowjava.util.ByteBufUtils;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.Ipv4Address;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.MatchField;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Nxm0Class;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.OxmClassBase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntryBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ArpSpaCase;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ArpSpaCaseBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.arp.spa._case.ArpSpaBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmOfArpSpa;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.ofj.nxm.of.match.arp.spa.grouping.ArpSpaValuesBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.ArpSpaCaseValue;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.ArpSpaCaseValueBuilder;
 
 public class ArpSpaCodec extends AbstractMatchCodec {
 
@@ -29,19 +28,16 @@ public class ArpSpaCodec extends AbstractMatchCodec {
     @Override
     public void serialize(MatchEntry input, ByteBuf outBuffer) {
         serializeHeader(input, outBuffer);
-        ArpSpaCase arpSpaCase = ((ArpSpaCase) input.getMatchEntryValue());
-        outBuffer.writeBytes(arpSpaCase.getArpSpa().getIpv4Address().getValue().getBytes());
+        ArpSpaCaseValue arpSpaCase = ((ArpSpaCaseValue) input.getMatchEntryValue());
+        outBuffer.writeInt(arpSpaCase.getArpSpaValues().getValue().intValue());
     }
 
     @Override
     public MatchEntry deserialize(ByteBuf message) {
         MatchEntryBuilder matchEntryBuilder = deserializeHeader(message);
-        ArpSpaCaseBuilder arpSpaCaseBuilder = new ArpSpaCaseBuilder();
-        ArpSpaBuilder arpSpaBuilder = new ArpSpaBuilder();
-        arpSpaBuilder.setIpv4Address(new Ipv4Address(ByteBufUtils.readIpv4Address(message)));
-        arpSpaCaseBuilder.setArpSpa(arpSpaBuilder.build());
-        matchEntryBuilder.setMatchEntryValue(arpSpaCaseBuilder.build());
-        matchEntryBuilder.setHasMask(false);
+        ArpSpaCaseValueBuilder caseBuilder = new ArpSpaCaseValueBuilder();
+        caseBuilder.setArpSpaValues(new ArpSpaValuesBuilder().setValue(message.readUnsignedInt()).build());
+        matchEntryBuilder.setMatchEntryValue(caseBuilder.build());
         return matchEntryBuilder.build();
     }
 
index 7c5e7fc120c894534890a66181a7ccdf22ad0b9e..32887f72cc0289208bd9bbad65470dca185bc18c 100644 (file)
@@ -1,6 +1,7 @@
 package org.opendaylight.openflowjava.nx.codec.match;
 
 import io.netty.buffer.ByteBuf;
+
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntryDeserializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntrySerializerKey;
 import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;
@@ -12,10 +13,10 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Nxm1
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.OxmClassBase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntryBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ArpThaCase;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ArpThaCaseBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.arp.tha._case.ArpThaBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmNxArpTha;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.ofj.nxm.nx.match.arp.tha.grouping.ArpThaValuesBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.ArpThaCaseValue;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.ArpThaCaseValueBuilder;
 
 public class ArpThaCodec extends AbstractMatchCodec {
 
@@ -29,8 +30,8 @@ public class ArpThaCodec extends AbstractMatchCodec {
     @Override
     public void serialize(MatchEntry input, ByteBuf outBuffer) {
         serializeHeader(input, outBuffer);
-        ArpThaCase arpThaCase = ((ArpThaCase) input.getMatchEntryValue());
-        outBuffer.writeBytes(ByteBufUtils.macAddressToBytes(arpThaCase.getArpTha().getMacAddress().getValue()));
+        ArpThaCaseValue arpThaCase = ((ArpThaCaseValue) input.getMatchEntryValue());
+        outBuffer.writeBytes(ByteBufUtils.macAddressToBytes(arpThaCase.getArpThaValues().getMacAddress().getValue()));
     }
 
     @Override
@@ -38,11 +39,10 @@ public class ArpThaCodec extends AbstractMatchCodec {
         MatchEntryBuilder matchEntryBuilder = deserializeHeader(message);
         byte[] address = new byte[VALUE_LENGTH];
         message.readBytes(address);
-        ArpThaCaseBuilder arpThaCaseBuilder = new ArpThaCaseBuilder();
-        ArpThaBuilder arpThaBuilder = new ArpThaBuilder();
-        arpThaBuilder.setMacAddress(new MacAddress(ByteBufUtils.bytesToHexString(address)));
-        arpThaCaseBuilder.setArpTha(arpThaBuilder.build());
-        matchEntryBuilder.setMatchEntryValue(arpThaCaseBuilder.build());
+        ArpThaCaseValueBuilder caseBuilder = new ArpThaCaseValueBuilder();
+        caseBuilder.setArpThaValues(new ArpThaValuesBuilder().setMacAddress(
+                new MacAddress(ByteBufUtils.macAddressToString(address))).build());
+        matchEntryBuilder.setMatchEntryValue(caseBuilder.build());
         return matchEntryBuilder.build();
     }
 
index 2cabcedce42231a49f702c80eda8ea8a18d35bf7..3396e7e9d8b61ece57dcb8d3d87e7e06c6662e4e 100644 (file)
@@ -1,23 +1,20 @@
 package org.opendaylight.openflowjava.nx.codec.match;
 
 import io.netty.buffer.ByteBuf;
+
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntryDeserializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntrySerializerKey;
 import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;
 import org.opendaylight.openflowjava.protocol.api.util.OxmMatchConstants;
-import org.opendaylight.openflowjava.util.ByteBufUtils;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.Ipv4Address;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.ArpTpa;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.MatchField;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Nxm0Class;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.OpenflowBasicClass;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.OxmClassBase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntryBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ArpTpaCase;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.ArpTpaCaseBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.arp.tpa._case.ArpTpaBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmOfArpTpa;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.ofj.nxm.of.match.arp.tpa.grouping.ArpTpaValuesBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.ArpTpaCaseValue;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.ArpTpaCaseValueBuilder;
 
 public class ArpTpaCodec extends AbstractMatchCodec {
 
@@ -31,21 +28,16 @@ public class ArpTpaCodec extends AbstractMatchCodec {
     @Override
     public void serialize(MatchEntry input, ByteBuf outBuffer) {
         serializeHeader(input, outBuffer);
-        ArpTpaCase arpTpaCase = ((ArpTpaCase) input.getMatchEntryValue());
-        outBuffer.writeBytes(arpTpaCase.getArpTpa().getIpv4Address().getValue().getBytes());
+        ArpTpaCaseValue arpTpaCase = ((ArpTpaCaseValue) input.getMatchEntryValue());
+        outBuffer.writeInt(arpTpaCase.getArpTpaValues().getValue().intValue());
     }
 
     @Override
     public MatchEntry deserialize(ByteBuf message) {
         MatchEntryBuilder matchEntriesBuilder = deserializeHeader(message);
-        ArpTpaCaseBuilder arpTpaCaseBuilder = new ArpTpaCaseBuilder();
-        ArpTpaBuilder arpTpaBuilder = new ArpTpaBuilder();
-        boolean hasMask = false;
-
-        arpTpaBuilder.setIpv4Address(new Ipv4Address(ByteBufUtils.readIpv4Address(message)));
-        arpTpaCaseBuilder.setArpTpa(arpTpaBuilder.build());
-        matchEntriesBuilder.setMatchEntryValue(arpTpaCaseBuilder.build());
-        matchEntriesBuilder.setHasMask(hasMask);
+        ArpTpaCaseValueBuilder caseBuilder = new ArpTpaCaseValueBuilder();
+        caseBuilder.setArpTpaValues(new ArpTpaValuesBuilder().setValue(message.readUnsignedInt()).build());
+        matchEntriesBuilder.setMatchEntryValue(caseBuilder.build());
         return matchEntriesBuilder.build();
     }
 
index 76d0ecbce6081ec52f013d3d302dc113fe75e611..bdb2bccbff66d3d036d12b5a4fcd8df7b03569ec 100644 (file)
@@ -1,6 +1,7 @@
 package org.opendaylight.openflowjava.nx.codec.match;
 
 import io.netty.buffer.ByteBuf;
+
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntryDeserializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntrySerializerKey;
 import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;
@@ -12,10 +13,10 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Nxm0
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.OxmClassBase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntryBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.EthDstCase;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.EthDstCaseBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.eth.dst._case.EthDstBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmOfEthDst;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.ofj.nxm.of.match.eth.dst.grouping.EthDstValuesBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.EthDstCaseValue;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.EthDstCaseValueBuilder;
 
 public class EthDstCodec extends AbstractMatchCodec {
 
@@ -29,8 +30,8 @@ public class EthDstCodec extends AbstractMatchCodec {
     @Override
     public void serialize(MatchEntry input, ByteBuf outBuffer) {
         serializeHeader(input, outBuffer);
-        EthDstCase ethDstCase = ((EthDstCase) input.getMatchEntryValue());
-        outBuffer.writeBytes(ByteBufUtils.macAddressToBytes(ethDstCase.getEthDst().getMacAddress().getValue()));
+        EthDstCaseValue ethDstCase = ((EthDstCaseValue) input.getMatchEntryValue());
+        outBuffer.writeBytes(ByteBufUtils.macAddressToBytes(ethDstCase.getEthDstValues().getMacAddress().getValue()));
     }
 
     @Override
@@ -38,11 +39,10 @@ public class EthDstCodec extends AbstractMatchCodec {
         MatchEntryBuilder matchEntryBuilder = deserializeHeader(message);
         byte[] address = new byte[VALUE_LENGTH];
         message.readBytes(address);
-        EthDstCaseBuilder ethDstCaseBuilder = new EthDstCaseBuilder();
-        EthDstBuilder ethDstBuilder = new EthDstBuilder();
-        ethDstBuilder.setMacAddress(new MacAddress(ByteBufUtils.macAddressToString(address)));
-        ethDstCaseBuilder.setEthDst(ethDstBuilder.build());
-        matchEntryBuilder.setMatchEntryValue(ethDstCaseBuilder.build());
+        EthDstCaseValueBuilder caseBuilder = new EthDstCaseValueBuilder();
+        caseBuilder.setEthDstValues(new EthDstValuesBuilder().setMacAddress(
+                new MacAddress(ByteBufUtils.macAddressToString(address))).build());
+        matchEntryBuilder.setMatchEntryValue(caseBuilder.build());
         return matchEntryBuilder.build();
     }
 
index e681e9d0fdc802b30637f9a4f1940a4be4e1364f..599650603efd3232bff679a758f24024ebdde967 100644 (file)
@@ -1,6 +1,7 @@
 package org.opendaylight.openflowjava.nx.codec.match;
 
 import io.netty.buffer.ByteBuf;
+
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntryDeserializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntrySerializerKey;
 import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;
@@ -12,10 +13,10 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Nxm0
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.OxmClassBase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntryBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.EthSrcCase;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.EthSrcCaseBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.eth.src._case.EthSrcBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmOfEthSrc;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.ofj.nxm.of.match.eth.src.grouping.EthSrcValuesBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.EthSrcCaseValue;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.EthSrcCaseValueBuilder;
 
 public class EthSrcCodec extends AbstractMatchCodec {
 
@@ -29,8 +30,8 @@ public class EthSrcCodec extends AbstractMatchCodec {
     @Override
     public void serialize(MatchEntry input, ByteBuf outBuffer) {
         serializeHeader(input, outBuffer);
-        EthSrcCase ethSrcCase = ((EthSrcCase) input.getMatchEntryValue());
-        outBuffer.writeBytes(ByteBufUtils.macAddressToBytes(ethSrcCase.getEthSrc().getMacAddress().getValue()));
+        EthSrcCaseValue ethSrcCase = ((EthSrcCaseValue) input.getMatchEntryValue());
+        outBuffer.writeBytes(ByteBufUtils.macAddressToBytes(ethSrcCase.getEthSrcValues().getMacAddress().getValue()));
     }
 
     @Override
@@ -38,11 +39,10 @@ public class EthSrcCodec extends AbstractMatchCodec {
         MatchEntryBuilder matchEntryBuilder = deserializeHeader(message);
         byte[] address = new byte[VALUE_LENGTH];
         message.readBytes(address);
-        EthSrcCaseBuilder ethSrcCaseBuilder = new EthSrcCaseBuilder();
-        EthSrcBuilder ethSrcBuilder = new EthSrcBuilder();
-        ethSrcBuilder.setMacAddress(new MacAddress(ByteBufUtils.macAddressToString(address)));
-        ethSrcCaseBuilder.setEthSrc(ethSrcBuilder.build());
-        matchEntryBuilder.setMatchEntryValue(ethSrcCaseBuilder.build());
+        EthSrcCaseValueBuilder caseBuilder = new EthSrcCaseValueBuilder();
+        caseBuilder.setEthSrcValues(new EthSrcValuesBuilder().setMacAddress(
+                new MacAddress(ByteBufUtils.macAddressToString(address))).build());
+        matchEntryBuilder.setMatchEntryValue(caseBuilder.build());
         matchEntryBuilder.setHasMask(false);
         return matchEntryBuilder.build();
     }
index 37b37acc6a339279b12618c46e717b9cd4eca7d3..99c0d173007d7f1f84b98629561f61f14694706e 100644 (file)
@@ -1,20 +1,20 @@
 package org.opendaylight.openflowjava.nx.codec.match;
 
 import io.netty.buffer.ByteBuf;
+
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntryDeserializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntrySerializerKey;
 import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;
 import org.opendaylight.openflowjava.protocol.api.util.OxmMatchConstants;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.EtherType;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.MatchField;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Nxm0Class;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.OxmClassBase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntryBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.EthTypeCase;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.EthTypeCaseBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.eth.type._case.EthTypeBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmOfEthType;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.ofj.nxm.of.match.eth.type.grouping.EthTypeValuesBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.EthTypeCaseValue;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.EthTypeCaseValueBuilder;
 
 public class EthTypeCodec extends AbstractMatchCodec {
 
@@ -28,19 +28,18 @@ public class EthTypeCodec extends AbstractMatchCodec {
     @Override
     public void serialize(MatchEntry input, ByteBuf outBuffer) {
         serializeHeader(input, outBuffer);
-        EthTypeCase ethTypeCase = ((EthTypeCase) input.getMatchEntryValue());
-        outBuffer.writeShort(ethTypeCase.getEthType().getEthType().getValue());
+        EthTypeCaseValue value = (EthTypeCaseValue) input.getMatchEntryValue();
+        outBuffer.writeShort(value.getEthTypeValues().getValue());
     }
 
     @Override
     public MatchEntry deserialize(ByteBuf message) {
         MatchEntryBuilder matchEntryBuilder = deserializeHeader(message);
-        EthTypeCaseBuilder ethTypeCaseBuilder = new EthTypeCaseBuilder();
-        EthTypeBuilder ethTypeBuilder = new EthTypeBuilder();
-        EtherType etherType = new EtherType(message.readUnsignedShort());
-        ethTypeBuilder.setEthType(etherType);
-        ethTypeCaseBuilder.setEthType(ethTypeBuilder.build());
-        matchEntryBuilder.setMatchEntryValue(ethTypeCaseBuilder.build());
+        EthTypeCaseValueBuilder caseBuilder = new EthTypeCaseValueBuilder();
+        EthTypeValuesBuilder valuesBuilder = new EthTypeValuesBuilder();
+        valuesBuilder.setValue(message.readUnsignedShort()).build();
+        caseBuilder.setEthTypeValues(valuesBuilder.build());
+        matchEntryBuilder.setMatchEntryValue(caseBuilder.build());
         return matchEntryBuilder.build();
     }
 
index b2f3f449e19745b0f5e79c1212aed9ab5ee29f2f..37f81a348b8f77c1efeebe19d130caac70a41236 100644 (file)
@@ -1,22 +1,22 @@
 package org.opendaylight.openflowjava.nx.codec.match;
 
 import io.netty.buffer.ByteBuf;
+
+import java.math.BigInteger;
+
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntryDeserializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntrySerializerKey;
 import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;
 import org.opendaylight.openflowjava.protocol.api.util.OxmMatchConstants;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.MatchField;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Nxm1Class;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.OpenflowBasicClass;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.OxmClassBase;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.TunnelId;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntry;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entries.grouping.MatchEntryBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.TunnelIdCase;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.TunnelIdCaseBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.tunnel.id._case.TunnelIdBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmNxTunId;
-import java.math.BigInteger;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.ofj.nxm.nx.match.tun.id.grouping.TunIdValuesBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.TunIdCaseValue;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.TunIdCaseValueBuilder;
 
 public class TunIdCodec extends AbstractMatchCodec {
 
@@ -30,24 +30,18 @@ public class TunIdCodec extends AbstractMatchCodec {
     @Override
     public void serialize(MatchEntry input, ByteBuf outBuffer) {
         serializeHeader(input, outBuffer);
-        TunnelIdCase value = ((TunnelIdCase) input.getMatchEntryValue());
-        outBuffer.writeBytes(value.getTunnelId().getTunnelId());
-        byte[] mask = value.getTunnelId().getTunnelId();
-        if (null != mask) {
-            outBuffer.writeBytes(mask);
-        }
+        BigInteger value = ((TunIdCaseValue) input.getMatchEntryValue()).getTunIdValues().getValue();
+        outBuffer.writeLong(value.longValue());
     }
 
     @Override
     public MatchEntry deserialize(ByteBuf message) {
         MatchEntryBuilder matchEntriesBuilder = deserializeHeader(message);
-        TunnelIdCaseBuilder tunnelIdCaseBuilder = new TunnelIdCaseBuilder();
-        TunnelIdBuilder tunnelIdBuilder = new TunnelIdBuilder();
-        tunnelIdBuilder.setTunnelId(BigInteger.valueOf(message.readLong()).toByteArray());
-        tunnelIdCaseBuilder.setTunnelId(tunnelIdBuilder.build());
-        matchEntriesBuilder.setOxmClass(OpenflowBasicClass.class);
-        matchEntriesBuilder.setOxmMatchField(TunnelId.class);
-        matchEntriesBuilder.setMatchEntryValue(tunnelIdCaseBuilder.build());
+        TunIdCaseValueBuilder caseBuilder = new TunIdCaseValueBuilder();
+        TunIdValuesBuilder tunIdBuilder = new TunIdValuesBuilder();
+        tunIdBuilder.setValue(BigInteger.valueOf(message.readLong()));
+        caseBuilder.setTunIdValues(tunIdBuilder.build());
+        matchEntriesBuilder.setMatchEntryValue(caseBuilder.build());
         return matchEntriesBuilder.build();
     }
 
index 920ac751e2d638d539fb96e9cbfc19bad895198b..745ad1454e897f4412e786a1d66160f79fbf65fe 100644 (file)
@@ -7,7 +7,7 @@
  */
 package org.opendaylight.openflowplugin.extension.api;
 
-import org.opendaylight.openflowjava.protocol.api.keys.ExperimenterActionSerializerKey;
+import org.opendaylight.openflowjava.protocol.api.keys.ActionSerializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntrySerializerKey;
 import org.opendaylight.openflowplugin.extension.api.path.ActionPath;
 import org.opendaylight.openflowplugin.extension.api.path.MatchPath;
@@ -47,5 +47,5 @@ public interface ExtensionConverterRegistrator {
      * @return closable registration
      */
     ObjectRegistration<ConvertorActionFromOFJava<Action, ActionPath>> registerActionConvertor(
-            ExperimenterActionSerializerKey key, ConvertorActionFromOFJava<Action, ActionPath> convertor);
+            ActionSerializerKey<?> key, ConvertorActionFromOFJava<Action, ActionPath> convertor);
 }
index f956aa3ebf2b97446f6051049ab2a410e263f7a6..bbb56a43995745f026736aefb6c9ed951e11c688 100644 (file)
@@ -23,6 +23,7 @@ public class ActionUtil {
     public static final Action createAction(ActionChoice actionChoice){
         ActionBuilder actionBuilder = new ActionBuilder();
         actionBuilder.setActionChoice(actionChoice);
+        actionBuilder.setExperimenterId(EXPERIMENTER_ID);
         return actionBuilder.build();
     }
 }
index 567e10a4b4ceceff712f6ced3c1fc15a32f3bbfd..45b7df43093c70b9e30d0cd189bbccc0885c610d 100644 (file)
@@ -95,7 +95,6 @@ public class MultipathConvertor implements
         Dst dst = nxAction.getNxMultipath().getDst();
         nxActionMultipathBuilder.setOfsNbits((dst.getStart() << 6) | (dst.getEnd() - dst.getStart()));
         nxActionMultipathBuilder.setDst(RegMoveConvertor.resolveDst(dst.getDstChoice()));
-        nxActionMultipathBuilder.setExperimenterId(ActionUtil.EXPERIMENTER_ID);
         ActionMultipathBuilder actionMultipathBuilder = new ActionMultipathBuilder();
         actionMultipathBuilder.setNxActionMultipath(nxActionMultipathBuilder.build());
         return ActionUtil.createAction(actionMultipathBuilder.build());
index affd0c4397cfbe692f7ad955c8aa3a8c6af3a273..2481f7880466824629f09a47ef8da54d6b39f38e 100644 (file)
@@ -76,7 +76,6 @@ public class OutputRegConvertor implements
         nxActionOutputRegBuilder.setSrc(RegMoveConvertor.resolveSrc(src.getSrcChoice()));
         nxActionOutputRegBuilder.setNBits(src.getOfsNbits());
         nxActionOutputRegBuilder.setMaxLen(nxAction.getNxOutputReg().getMaxLen());
-        nxActionOutputRegBuilder.setExperimenterId(ActionUtil.EXPERIMENTER_ID);
         builder.setNxActionOutputReg(nxActionOutputRegBuilder.build());
         return ActionUtil.createAction(builder.build());
     }
index eaa7abdec9dc0365e845b6fee418a1aed89518d1..878110aa59c32e76d78252c8dced5943ff5a951d 100644 (file)
@@ -93,7 +93,6 @@ public class RegLoadConvertor implements
         nxActionRegLoadBuilder.setDst(RegMoveConvertor.resolveDst(dst.getDstChoice()));
         nxActionRegLoadBuilder.setOfsNbits((dst.getStart() << 6) | (dst.getEnd() - dst.getStart()));
         nxActionRegLoadBuilder.setValue(nxAction.getNxRegLoad().getValue());
-        nxActionRegLoadBuilder.setExperimenterId(ActionUtil.EXPERIMENTER_ID);
         actionRegLoadBuilder.setNxActionRegLoad(nxActionRegLoadBuilder.build());
         return ActionUtil.createAction(actionRegLoadBuilder.build());
     }
index 0c236daaa0a4b33f91c55f13e497fb465fd40e25..8e0749a1d019c00c8cd7d5825e24e7ad0032509c 100644 (file)
@@ -231,7 +231,6 @@ public class RegMoveConvertor implements
         nxActionRegMove.setSrc(resolveSrc(src.getSrcChoice()));
         nxActionRegMove.setSrcOfs(src.getStart());
         nxActionRegMove.setNBits(dst.getEnd() - dst.getStart() + 1);
-        nxActionRegMove.setExperimenterId(ActionUtil.EXPERIMENTER_ID);
         actionRegMoveBuilder.setNxActionRegMove(nxActionRegMove.build());
         return ActionUtil.createAction(actionRegMoveBuilder.build());
     }
index 22d6aa38eebb3a24b09758b75bcd4e67ddef13e0..e19a207ba5d4c2dcd13b268fc1b55cdea112a5aa 100644 (file)
@@ -68,7 +68,6 @@ public class ResubmitConvertor implements
         NxActionResubmitBuilder nxActionResubmitBuilder = new NxActionResubmitBuilder();
         nxActionResubmitBuilder.setInPort(nxAction.getNxResubmit().getInPort());
         nxActionResubmitBuilder.setTable(nxAction.getNxResubmit().getTable());
-        nxActionResubmitBuilder.setExperimenterId(ActionUtil.EXPERIMENTER_ID);
         builder.setNxActionResubmit(nxActionResubmitBuilder.build());
         return ActionUtil.createAction(builder.build());
     }
index 2ebf86d8b2fd6ef2fc4df1e9a5597827046983b6..d586100c0b439d0aa909a539bcdd23abc44df6d4 100644 (file)
@@ -62,7 +62,6 @@ public class SetNsiConvertor implements
         NxActionSetNsiBuilder nxActionSetNsi = new NxActionSetNsiBuilder();
 
         nxActionSetNsi.setNsi(nxAction.getNxSetNsi().getNsi());
-        nxActionSetNsi.setExperimenterId(ActionUtil.EXPERIMENTER_ID);
         builder.setNxActionSetNsi(nxActionSetNsi.build());
 
         return ActionUtil.createAction(builder.build());
index 6b5f4ff5a0f34a48c7ec99982a1202f60e5d20c3..ea6b017e48a02efc7a02d1ae044b8dade9ff0c3d 100644 (file)
@@ -61,7 +61,6 @@ public class SetNspConvertor implements
         ActionSetNspBuilder builder = new ActionSetNspBuilder();
         NxActionSetNspBuilder nxActionSetNspBuilder = new NxActionSetNspBuilder();
         nxActionSetNspBuilder.setNsp(nxAction.getNxSetNsp().getNsp());
-        nxActionSetNspBuilder.setExperimenterId(ActionUtil.EXPERIMENTER_ID);
         builder.setNxActionSetNsp(nxActionSetNspBuilder.build());
         return ActionUtil.createAction(builder.build());
     }
index 48f2aa35e88d8971f6be6cecac6d93270f999326..4456db9085960b6f114643be8c57c90cc7936934 100644 (file)
@@ -142,7 +142,7 @@ public class RegConvertor implements ConvertorToOFJava<MatchEntry>, ConvertorFro
         RegValuesBuilder regValuesBuilder = new RegValuesBuilder().setValue(nxmNxReg.getValue());
         RegCaseValueBuilder regCaseValueBuilder = new RegCaseValueBuilder();
         regCaseValueBuilder.setRegValues(regValuesBuilder.build());
-        return MatchUtil.createDefaultMatchEntryBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmNxReg.class,
+        return MatchUtil.createDefaultMatchEntryBuilder(nxmNxReg.getReg(),
                 Nxm1Class.class,
                 regCaseValueBuilder.build()).build();
     }
index 652d1c8d58c9802c5a1a3331c7233d8dfd580390..07bfcbdfbfb5f0755464fdaaa3a0afb7343d8a3e 100644 (file)
@@ -18,6 +18,9 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.matc
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.TunnelIdCase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.TunnelIdCaseBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.match.entry.value.grouping.match.entry.value.tunnel.id._case.TunnelIdBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.ofj.nxm.nx.match.tun.id.grouping.TunIdValuesBuilder;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.TunIdCaseValue;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.oxm.container.match.entry.value.TunIdCaseValueBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.general.rev140714.ExtensionKey;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.general.rev140714.general.extension.grouping.Extension;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.nicira.match.rev140714.NxAugMatchNotifPacketIn;
@@ -40,7 +43,7 @@ public class TunIdConvertor implements ConvertorToOFJava<MatchEntry>, ConvertorF
 
     /*
      * (non-Javadoc)
-     * 
+     *
      * @see
      * org.opendaylight.openflowplugin.extension.api.ConvertorFromOFJava#convert
      * (org.opendaylight.yangtools.yang.binding.DataContainer,
@@ -48,8 +51,8 @@ public class TunIdConvertor implements ConvertorToOFJava<MatchEntry>, ConvertorF
      */
     @Override
     public ExtensionAugment<? extends Augmentation<Extension>> convert(MatchEntry input, MatchPath path) {
-        TunnelIdCase tunnelIdCase = ((TunnelIdCase) input.getMatchEntryValue());
-        return resolveAugmentation(new NxmNxTunIdBuilder().setValue(new BigInteger(tunnelIdCase.getTunnelId().getTunnelId())).build(), path,
+        TunIdCaseValue tunnelIdCase = ((TunIdCaseValue) input.getMatchEntryValue());
+        return resolveAugmentation(new NxmNxTunIdBuilder().setValue(tunnelIdCase.getTunIdValues().getValue()).build(), path,
                 NxmNxTunIdKey.class);
     }
 
@@ -72,7 +75,7 @@ public class TunIdConvertor implements ConvertorToOFJava<MatchEntry>, ConvertorF
 
     /*
      * (non-Javadoc)
-     * 
+     *
      * @see
      * org.opendaylight.openflowplugin.extension.api.ConvertorToOFJava#convert
      * (org
@@ -87,11 +90,11 @@ public class TunIdConvertor implements ConvertorToOFJava<MatchEntry>, ConvertorF
         }
         BigInteger value = matchGrouping.get().getNxmNxTunId().getValue();
 
-        TunnelIdCaseBuilder tunnelIdCaseBuilder = new TunnelIdCaseBuilder();
+        TunIdCaseValueBuilder tunnelIdCaseBuilder = new TunIdCaseValueBuilder();
 
-        TunnelIdBuilder tunnelIdBuilder = new TunnelIdBuilder();
-        tunnelIdBuilder.setTunnelId(value.toByteArray());
-        tunnelIdCaseBuilder.setTunnelId(tunnelIdBuilder.build());
+        TunIdValuesBuilder tunnelIdBuilder = new TunIdValuesBuilder();
+        tunnelIdBuilder.setValue(value);
+        tunnelIdCaseBuilder.setTunIdValues(tunnelIdBuilder.build());
 
         return MatchUtil.createDefaultMatchEntryBuilder(org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.match.rev140421.NxmNxTunId.class,
                 Nxm1Class.class,
index b004205f271e54c8b7a7df2027b9c8ed06420b9a..8455c90a06aeb2a74ce03b4cc6eef95bfdf38057 100644 (file)
@@ -7,6 +7,7 @@
  */
 package org.opendaylight.openflowplugin.openflow.md.core.extension;
 
+import org.opendaylight.openflowjava.protocol.api.keys.ActionSerializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.ExperimenterActionSerializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.MatchEntrySerializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.MessageTypeKey;
@@ -30,6 +31,7 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.matc
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.extension.general.rev140714.ExtensionKey;
 import org.opendaylight.yangtools.concepts.ObjectRegistration;
 import org.opendaylight.yangtools.yang.binding.DataContainer;
+
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 
@@ -203,7 +205,7 @@ public class ExtensionConverterManagerImpl implements ExtensionConverterManager
     @Override
     public ObjectRegistration<ConvertorActionFromOFJava<org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping.Action, ActionPath>>
     registerActionConvertor(
-            ExperimenterActionSerializerKey key,
+            ActionSerializerKey<?> key,
             ConvertorActionFromOFJava<org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions.grouping.Action, ActionPath> convertor) {
         registryActionFromOFJAva.put(key, convertor);
         return hireJanitor(key, convertor);
index 3ae9aec9a781bf8ab7a03de067c850cee71f25ca..d82d0f76acc80814a6575a6c9ff2ff89b46f16c5 100644 (file)
@@ -583,10 +583,7 @@ public final class ActionConvertor {
             EthSrcCaseBuilder ethSrcCaseBuilder = new EthSrcCaseBuilder();
             EthSrcBuilder ethSrcBuilder = new EthSrcBuilder();
             ethSrcBuilder.setMacAddress(setdlsrcaction.getAddress());
-            if (null != setdlsrcaction.getAddress()) {
-                ethSrcBuilder.setMask(ByteBufUtils.macAddressToBytes(setdlsrcaction.getAddress().getValue()));
-                matchBuilder.setHasMask(true);
-            }
+            matchBuilder.setHasMask(false);
             ethSrcCaseBuilder.setEthSrc(ethSrcBuilder.build());
             matchBuilder.setMatchEntryValue(ethSrcCaseBuilder.build());
             entries.add(matchBuilder.build());
@@ -627,12 +624,7 @@ public final class ActionConvertor {
             EthDstCaseBuilder ethDstCaseBuilder = new EthDstCaseBuilder();
             EthDstBuilder ethDstBuilder = new EthDstBuilder();
             ethDstBuilder.setMacAddress(setdldstaction.getAddress());
-            boolean hasMask = false;
-            if (null != setdldstaction.getAddress()) {
-                ethDstBuilder.setMask(ByteBufUtils.macAddressToBytes(setdldstaction.getAddress().getValue()));
-                hasMask = true;
-            }
-            matchBuilder.setHasMask(hasMask);
+            matchBuilder.setHasMask(false);
             ethDstCaseBuilder.setEthDst(ethDstBuilder.build());
             matchBuilder.setMatchEntryValue(ethDstCaseBuilder.build());
             entries.add(matchBuilder.build());
index 500861902ab022125125a3578fa9e3e1b6156cff..0b3379f9f44b2150190e464512791a6613add584 100644 (file)
@@ -131,7 +131,7 @@ public class ActionConvertorV13Test {
     public void testToMDSalActions2() {\r
         OpenflowPortsUtil.init();\r
         List<Action> actions = new ArrayList<>();\r
-        \r
+\r
         ActionBuilder actionBuilder = new ActionBuilder();\r
         OutputActionCaseBuilder caseBuilder = new OutputActionCaseBuilder();\r
         OutputActionBuilder outputBuilder = new OutputActionBuilder();\r
@@ -168,11 +168,11 @@ public class ActionConvertorV13Test {
         pushVlanCaseBuilder.setPushVlanAction(pushVlanBuilder.build());\r
         actionBuilder.setActionChoice(pushVlanCaseBuilder.build());\r
         actions.add(actionBuilder.build());\r
-        \r
+\r
         actionBuilder = new ActionBuilder();\r
         actionBuilder.setActionChoice(new PopVlanCaseBuilder().build());\r
         actions.add(actionBuilder.build());\r
-        \r
+\r
         actionBuilder = new ActionBuilder();\r
         PushMplsCaseBuilder pushMplsCaseBuilder = new PushMplsCaseBuilder();\r
         PushMplsActionBuilder pushMplsBuilder = new PushMplsActionBuilder();\r
@@ -478,7 +478,7 @@ public class ActionConvertorV13Test {
         checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.VlanPcp.class, false);\r
         Assert.assertEquals("Wrong vlan pcp", 7, ((VlanPcpCase) entry.getMatchEntryValue()).getVlanPcp().getVlanPcp()\r
                 .intValue());\r
-        \r
+\r
         action = actions.get(1);\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common"\r
                 + ".action.rev150203.action.grouping.action.choice.SetFieldCase", action.getActionChoice().getImplementedInterface().getName());\r
@@ -489,27 +489,27 @@ public class ActionConvertorV13Test {
         Assert.assertEquals("Wrong vlan vid", 0, ((VlanVidCase) entry.getMatchEntryValue()).getVlanVid().getVlanVid()\r
                 .intValue());\r
         Assert.assertEquals("Wrong cfi bit", true, ((VlanVidCase) entry.getMatchEntryValue()).getVlanVid().isCfiBit());\r
-        \r
+\r
         action = actions.get(2);\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common"\r
                 + ".action.rev150203.action.grouping.action.choice.SetFieldCase", action.getActionChoice().getImplementedInterface().getName());\r
         setFieldCase =\r
                 (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();\r
         entry = setFieldCase.getSetFieldAction().getMatchEntry().get(0);\r
-        checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.EthDst.class, true);\r
+        checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.EthDst.class, false);\r
         Assert.assertEquals("Wrong dl dst", "00:00:00:00:00:06", ((EthDstCase) entry.getMatchEntryValue()).getEthDst()\r
                 .getMacAddress().getValue());\r
-        \r
+\r
         action = actions.get(3);\r
         setFieldCase =\r
                 (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();\r
         Assert.assertEquals("Wrong action type", "org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common"\r
                 + ".action.rev150203.action.grouping.action.choice.SetFieldCase", action.getActionChoice().getImplementedInterface().getName());\r
         entry = setFieldCase.getSetFieldAction().getMatchEntry().get(0);\r
-        checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.EthSrc.class, true);\r
+        checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.EthSrc.class, false);\r
         Assert.assertEquals("Wrong dl src", "00:00:00:00:00:05", ((EthSrcCase) entry.getMatchEntryValue()).getEthSrc()\r
                 .getMacAddress().getValue());\r
-        \r
+\r
         action = actions.get(4);\r
         setFieldCase =\r
                 (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();\r
@@ -519,7 +519,7 @@ public class ActionConvertorV13Test {
         checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Ipv4Src.class, false);\r
         Assert.assertEquals("Wrong ipv4 src", "10.0.0.1", ((Ipv4SrcCase) entry.getMatchEntryValue()).getIpv4Src()\r
                 .getIpv4Address().getValue());\r
-        \r
+\r
         action = actions.get(5);\r
         setFieldCase =\r
                 (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();\r
@@ -529,7 +529,7 @@ public class ActionConvertorV13Test {
         checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Ipv4Dst.class, false);\r
         Assert.assertEquals("Wrong ipv4 dst", "10.0.0.2", ((Ipv4DstCase) entry.getMatchEntryValue()).getIpv4Dst()\r
                 .getIpv4Address().getValue());\r
-        \r
+\r
         action = actions.get(6);\r
         setFieldCase =\r
                 (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();\r
@@ -539,7 +539,7 @@ public class ActionConvertorV13Test {
         checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.TcpSrc.class, false);\r
         Assert.assertEquals("Wrong tcp src", 54, ((TcpSrcCase) entry.getMatchEntryValue()).getTcpSrc()\r
                 .getPort().getValue().intValue());\r
-        \r
+\r
         action = actions.get(7);\r
         setFieldCase =\r
                 (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();\r
@@ -549,7 +549,7 @@ public class ActionConvertorV13Test {
         checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.TcpDst.class, false);\r
         Assert.assertEquals("Wrong tcp dst", 45, ((TcpDstCase) entry.getMatchEntryValue()).getTcpDst()\r
                 .getPort().getValue().intValue());\r
-        \r
+\r
         action = actions.get(8);\r
         setFieldCase =\r
                 (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();\r
@@ -559,7 +559,7 @@ public class ActionConvertorV13Test {
         checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.IpDscp.class, false);\r
         Assert.assertEquals("Wrong ip dscp", 4, ((IpDscpCase) entry.getMatchEntryValue()).getIpDscp()\r
                 .getDscp().getValue().intValue());\r
-        \r
+\r
         action = actions.get(9);\r
         setFieldCase =\r
                 (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();\r
@@ -571,7 +571,7 @@ public class ActionConvertorV13Test {
                 .getVlanVid().intValue());\r
         Assert.assertEquals("Wrong cfi bit", true, ((VlanVidCase) entry.getMatchEntryValue()).getVlanVid()\r
                 .isCfiBit());\r
-        \r
+\r
         action = actions.get(10);\r
         setFieldCase =\r
                 (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();\r
@@ -581,7 +581,7 @@ public class ActionConvertorV13Test {
         checkEntryHeader(entry, org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.oxm.rev150225.Ipv6Src.class, false);\r
         Assert.assertEquals("Wrong ipv4 src", "0000:0000:0000:0000:0000:0000:0000:0005",\r
                 ((Ipv6SrcCase) entry.getMatchEntryValue()).getIpv6Src().getIpv6Address().getValue());\r
-        \r
+\r
         action = actions.get(11);\r
         setFieldCase =\r
                 (org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.SetFieldCase) action.getActionChoice();\r