Make AbstractActionSerializer.serialize() final
[openflowplugin.git] / openflowjava / openflow-protocol-impl / src / main / java / org / opendaylight / openflowjava / protocol / impl / serialization / action / OF10OutputActionSerializer.java
index 4f90a40ca1e4b0b5132e11779bbff7f338493928..db61c663e734f3b10d8fad36bf8fa4e7c1eaa5bb 100644 (file)
@@ -5,38 +5,28 @@
  * 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.protocol.impl.serialization.action;
 
 import io.netty.buffer.ByteBuf;
-
 import org.opendaylight.openflowjava.protocol.impl.util.ActionConstants;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.action.grouping.action.choice.OutputActionCase;
+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;
 
 /**
- * @author michal.polkorab
+ * Serializes OF 1.0 Output actions.
  *
+ * @author michal.polkorab
  */
 public class OF10OutputActionSerializer extends AbstractActionSerializer {
-
-    @Override
-    public void serialize(Action action, ByteBuf outBuffer) {
-        super.serialize(action, outBuffer);
-        outBuffer.writeShort(((OutputActionCase) action.getActionChoice())
-                .getOutputAction().getPort().getValue().intValue());
-        outBuffer.writeShort(((OutputActionCase) action.getActionChoice())
-                .getOutputAction().getMaxLength());
+    public OF10OutputActionSerializer() {
+        super(ActionConstants.OUTPUT_CODE, ActionConstants.GENERAL_ACTION_LENGTH);
     }
 
     @Override
-    protected int getType() {
-        return ActionConstants.OUTPUT_CODE;
+    protected void serializeBody(final Action action, final ByteBuf outBuffer) {
+        final OutputAction outputAction = ((OutputActionCase) action.getActionChoice()).getOutputAction();
+        outBuffer.writeShort(outputAction.getPort().getValue().intValue());
+        outBuffer.writeShort(outputAction.getMaxLength().intValue());
     }
-
-    @Override
-    protected int getLength() {
-        return ActionConstants.GENERAL_ACTION_LENGTH;
-    }
-
 }