X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=extension%2Fopenflowjava-extension-nicira%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fopenflowjava%2Fnx%2Fcodec%2Faction%2FResubmitCodec.java;h=06bb6330f79395c292c2ee54fc69fce12d5b7da7;hb=0a4e88248caed995e01654b4a18d86bc718d93cd;hp=e9c9396d061a067662764ff524ab224ed56d1d0a;hpb=7aaaf315e33af8f0f290ba981c80727f567abff3;p=openflowplugin.git diff --git a/extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/action/ResubmitCodec.java b/extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/action/ResubmitCodec.java index e9c9396d06..06bb6330f7 100644 --- a/extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/action/ResubmitCodec.java +++ b/extension/openflowjava-extension-nicira/src/main/java/org/opendaylight/openflowjava/nx/codec/action/ResubmitCodec.java @@ -11,19 +11,17 @@ package org.opendaylight.openflowjava.nx.codec.action; import io.netty.buffer.ByteBuf; - import org.opendaylight.openflowjava.nx.api.NiciraActionDeserializerKey; import org.opendaylight.openflowjava.nx.api.NiciraActionSerializerKey; +import org.opendaylight.openflowjava.nx.api.NiciraConstants; import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants; -import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.augments.rev150225.ExperimenterIdAction; -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.openflowjava.nx.codec.action.AbstractActionCodec; +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.openflow.common.types.rev130731.ExperimenterId; import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.action.rev140421.NxmNxResubmit; -import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.action.rev140421.OfjAugNxAction; -import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.action.rev140421.OfjAugNxActionBuilder; -import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.action.rev140421.ofj.nx.action.resubmit.grouping.ActionResubmit; -import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.action.rev140421.ofj.nx.action.resubmit.grouping.ActionResubmitBuilder; +import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.action.rev140421.action.container.action.choice.ActionResubmit; +import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.action.rev140421.action.container.action.choice.ActionResubmitBuilder; +import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowjava.nx.action.rev140421.ofj.nx.action.resubmit.grouping.NxActionResubmitBuilder; /** * Codec for the NX_RESUBMIT and NX_RESUBMIT_TABLE @@ -39,12 +37,13 @@ public class ResubmitCodec extends AbstractActionCodec { public static final NiciraActionDeserializerKey TABLE_DESERIALIZER_KEY = new NiciraActionDeserializerKey(EncodeConstants.OF13_VERSION_ID, NXAST_RESUBMIT_TABLE_SUBTYPE); - private static final byte OFP_TABLE_ALL = (byte)255; - private static final short OFP_IN_PORT = (short)0xfff8; + private static final byte OFP_TABLE_ALL = (byte) 255; + private static final short OFP_IN_PORT = (short) 0xfff8; private static final int padding = 3; // nx_action_resubmit : uint8_t pad[3]; public byte getSubType(ActionResubmit action) { - if ((action.getTable() == null) || (action.getTable().byteValue() == OFP_TABLE_ALL)) return NXAST_RESUBMIT_SUBTYPE; + if ((action.getNxActionResubmit().getTable() == null) || (action.getNxActionResubmit().getTable().byteValue() == OFP_TABLE_ALL)) + return NXAST_RESUBMIT_SUBTYPE; return NXAST_RESUBMIT_TABLE_SUBTYPE; } @@ -53,11 +52,13 @@ public class ResubmitCodec extends AbstractActionCodec { byte table = OFP_TABLE_ALL; short inPort = OFP_IN_PORT; - ActionResubmit action = input.getAugmentation(OfjAugNxAction.class).getActionResubmit(); + ActionResubmit action = ((ActionResubmit) input.getActionChoice()); serializeHeader(LENGTH, getSubType(action), outBuffer); - if (action.getInPort() != null) inPort = action.getInPort().shortValue(); - if (action.getTable() != null) table = action.getTable().byteValue(); + if (action.getNxActionResubmit().getInPort() != null) + inPort = action.getNxActionResubmit().getInPort().shortValue(); + if (action.getNxActionResubmit().getTable() != null) + table = action.getNxActionResubmit().getTable().byteValue(); outBuffer.writeShort(inPort); outBuffer.writeByte(table); outBuffer.writeZero(padding); @@ -66,15 +67,17 @@ public class ResubmitCodec extends AbstractActionCodec { @Override public Action deserialize(ByteBuf message) { ActionBuilder actionBuilder = deserializeHeader(message); + ActionResubmitBuilder builder = new ActionResubmitBuilder(); - builder.setInPort(message.readUnsignedShort()); - builder.setTable(message.readUnsignedByte()); + 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); - OfjAugNxActionBuilder augNxActionBuilder = new OfjAugNxActionBuilder(); - augNxActionBuilder.setActionResubmit(builder.build()); - actionBuilder.addAugmentation(ExperimenterIdAction.class, - createExperimenterIdAction(NxmNxResubmit.class)); - actionBuilder.addAugmentation(OfjAugNxAction.class, augNxActionBuilder.build()); + + actionBuilder.setActionChoice(builder.build()); return actionBuilder.build(); }