X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=openflow-protocol-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fopenflowjava%2Fprotocol%2Fimpl%2Futil%2FActionsSerializer.java;h=c7e07ee716f179494a941388af99c22eba5a4fa3;hb=047bd7fde64c30c4a1bff26206de8158047d5fbc;hp=89920c2fc3eb461784408279d6769d5f846a55c5;hpb=608331f22077157e3d006e336313ed6323a91e56;p=openflowjava.git diff --git a/openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/util/ActionsSerializer.java b/openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/util/ActionsSerializer.java index 89920c2f..c7e07ee7 100644 --- a/openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/util/ActionsSerializer.java +++ b/openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/util/ActionsSerializer.java @@ -53,39 +53,39 @@ public abstract class ActionsSerializer { } for (ActionsList list : actionsList) { Action action = list.getAction(); - if (action.getType().equals(Output.class)) { + if (action.getType().isAssignableFrom(Output.class)) { encodeOutputAction(action, outBuffer); - } else if (action.getType().equals(CopyTtlOut.class)) { + } else if (action.getType().isAssignableFrom(CopyTtlOut.class)) { encodeCopyTtlOutAction(outBuffer); - } else if (action.getType().equals(CopyTtlIn.class)) { + } else if (action.getType().isAssignableFrom(CopyTtlIn.class)) { encodeCopyTtlInAction(outBuffer); - } else if (action.getType().equals(SetMplsTtl.class)) { + } else if (action.getType().isAssignableFrom(SetMplsTtl.class)) { encodeSetMplsTtltAction(action, outBuffer); - } else if (action.getType().equals(DecMplsTtl.class)) { + } else if (action.getType().isAssignableFrom(DecMplsTtl.class)) { encodeDecMplsTtlAction(outBuffer); - } else if (action.getType().equals(PushVlan.class)) { + } else if (action.getType().isAssignableFrom(PushVlan.class)) { encodePushVlanAction(action, outBuffer); - } else if (action.getType().equals(PopVlan.class)) { + } else if (action.getType().isAssignableFrom(PopVlan.class)) { encodePopVlanAction(outBuffer); - } else if (action.getType().equals(PushMpls.class)) { + } else if (action.getType().isAssignableFrom(PushMpls.class)) { encodePushMplsAction(action, outBuffer); - } else if (action.getType().equals(PopMpls.class)) { + } else if (action.getType().isAssignableFrom(PopMpls.class)) { encodePopMplsAction(action, outBuffer); - } else if (action.getType().equals(SetQueue.class)) { + } else if (action.getType().isAssignableFrom(SetQueue.class)) { encodeSetQueueAction(action, outBuffer); - } else if (action.getType().equals(Group.class)) { + } else if (action.getType().isAssignableFrom(Group.class)) { encodeGroupAction(action, outBuffer); - } else if (action.getType().equals(SetNwTtl.class)) { + } else if (action.getType().isAssignableFrom(SetNwTtl.class)) { encodeSetNwTtlAction(action, outBuffer); - } else if (action.getType().equals(DecNwTtl.class)) { + } else if (action.getType().isAssignableFrom(DecNwTtl.class)) { encodeDecNwTtlAction(outBuffer); - } else if (action.getType().equals(SetField.class)) { + } else if (action.getType().isAssignableFrom(SetField.class)) { encodeSetFieldAction(action, outBuffer); - } else if (action.getType().equals(PushPbb.class)) { + } else if (action.getType().isAssignableFrom(PushPbb.class)) { encodePushPbbAction(action, outBuffer); - } else if (action.getType().equals(PopPbb.class)) { + } else if (action.getType().isAssignableFrom(PopPbb.class)) { encodePopPbbAction(outBuffer); - } else if (action.getType().equals(Experimenter.class)) { + } else if (action.getType().isAssignableFrom(Experimenter.class)) { encodeExperimenterAction(action, outBuffer); } } @@ -257,9 +257,9 @@ public abstract class ActionsSerializer { if (actionsList != null) { for (ActionsList list : actionsList) { Action action = list.getAction(); - if (action.getType().equals(Output.class)) { + if (action.getType().isAssignableFrom(Output.class)) { lengthOfActions += OUTPUT_LENGTH; - } else if (action.getType().equals(SetField.class)){ + } else if (action.getType().isAssignableFrom(SetField.class)){ List entries = action.getAugmentation(OxmFieldsAction.class).getMatchEntries(); int actionLength = ACTION_HEADER_LENGTH + MatchSerializer.computeMatchEntriesLength(entries); lengthOfActions += actionLength;