org.projectfloodlight.openflow.protocol.ver15.OFActionVer15 Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of openflowj Show documentation
Show all versions of openflowj Show documentation
OpenFlowJ API supporting OpenFlow versions 1.0 through 1.5.1, generated by LoxiGen
The newest version!
// Copyright (c) 2008 The Board of Trustees of The Leland Stanford Junior University
// Copyright (c) 2011, 2012 Open Networking Foundation
// Copyright (c) 2012, 2013 Big Switch Networks, Inc.
// This library was generated by the LoxiGen Compiler.
// See the file LICENSE.txt which should have been included in the source distribution
// Automatically generated by LOXI from template of_virtual_class.java
// Do not modify
package org.projectfloodlight.openflow.protocol.ver15;
import org.projectfloodlight.openflow.protocol.*;
import org.projectfloodlight.openflow.protocol.action.*;
import org.projectfloodlight.openflow.protocol.actionid.*;
import org.projectfloodlight.openflow.protocol.bsntlv.*;
import org.projectfloodlight.openflow.protocol.errormsg.*;
import org.projectfloodlight.openflow.protocol.meterband.*;
import org.projectfloodlight.openflow.protocol.instruction.*;
import org.projectfloodlight.openflow.protocol.instructionid.*;
import org.projectfloodlight.openflow.protocol.match.*;
import org.projectfloodlight.openflow.protocol.stat.*;
import org.projectfloodlight.openflow.protocol.oxm.*;
import org.projectfloodlight.openflow.protocol.oxs.*;
import org.projectfloodlight.openflow.protocol.queueprop.*;
import org.projectfloodlight.openflow.types.*;
import org.projectfloodlight.openflow.util.*;
import org.projectfloodlight.openflow.exceptions.*;
import io.netty.buffer.ByteBuf;
import java.util.Set;
abstract class OFActionVer15 {
// version: 1.5
final static byte WIRE_VERSION = 6;
final static int MINIMUM_LENGTH = 4;
public final static OFActionVer15.Reader READER = new Reader();
static class Reader implements OFMessageReader {
@Override
public OFAction readFrom(ByteBuf bb) throws OFParseError {
if(bb.readableBytes() < MINIMUM_LENGTH)
return null;
int start = bb.readerIndex();
short type = bb.readShort();
bb.readerIndex(start);
switch(type) {
case (short) 0xffff:
// discriminator value OFActionType.EXPERIMENTER=65535 for class OFActionExperimenterVer15
return OFActionExperimenterVer15.READER.readFrom(bb);
case (short) 0x0:
// discriminator value OFActionType.OUTPUT=0 for class OFActionOutputVer15
return OFActionOutputVer15.READER.readFrom(bb);
case (short) 0xc:
// discriminator value OFActionType.COPY_TTL_IN=12 for class OFActionCopyTtlInVer15
return OFActionCopyTtlInVer15.READER.readFrom(bb);
case (short) 0xb:
// discriminator value OFActionType.COPY_TTL_OUT=11 for class OFActionCopyTtlOutVer15
return OFActionCopyTtlOutVer15.READER.readFrom(bb);
case (short) 0x10:
// discriminator value OFActionType.DEC_MPLS_TTL=16 for class OFActionDecMplsTtlVer15
return OFActionDecMplsTtlVer15.READER.readFrom(bb);
case (short) 0x18:
// discriminator value OFActionType.DEC_NW_TTL=24 for class OFActionDecNwTtlVer15
return OFActionDecNwTtlVer15.READER.readFrom(bb);
case (short) 0x16:
// discriminator value OFActionType.GROUP=22 for class OFActionGroupVer15
return OFActionGroupVer15.READER.readFrom(bb);
case (short) 0x14:
// discriminator value OFActionType.POP_MPLS=20 for class OFActionPopMplsVer15
return OFActionPopMplsVer15.READER.readFrom(bb);
case (short) 0x12:
// discriminator value OFActionType.POP_VLAN=18 for class OFActionPopVlanVer15
return OFActionPopVlanVer15.READER.readFrom(bb);
case (short) 0x13:
// discriminator value OFActionType.PUSH_MPLS=19 for class OFActionPushMplsVer15
return OFActionPushMplsVer15.READER.readFrom(bb);
case (short) 0x11:
// discriminator value OFActionType.PUSH_VLAN=17 for class OFActionPushVlanVer15
return OFActionPushVlanVer15.READER.readFrom(bb);
case (short) 0xf:
// discriminator value OFActionType.SET_MPLS_TTL=15 for class OFActionSetMplsTtlVer15
return OFActionSetMplsTtlVer15.READER.readFrom(bb);
case (short) 0x17:
// discriminator value OFActionType.SET_NW_TTL=23 for class OFActionSetNwTtlVer15
return OFActionSetNwTtlVer15.READER.readFrom(bb);
case (short) 0x15:
// discriminator value OFActionType.SET_QUEUE=21 for class OFActionSetQueueVer15
return OFActionSetQueueVer15.READER.readFrom(bb);
case (short) 0x19:
// discriminator value OFActionType.SET_FIELD=25 for class OFActionSetFieldVer15
return OFActionSetFieldVer15.READER.readFrom(bb);
case (short) 0x1b:
// discriminator value OFActionType.POP_PBB=27 for class OFActionPopPbbVer15
return OFActionPopPbbVer15.READER.readFrom(bb);
case (short) 0x1a:
// discriminator value OFActionType.PUSH_PBB=26 for class OFActionPushPbbVer15
return OFActionPushPbbVer15.READER.readFrom(bb);
case (short) 0x1d:
// discriminator value OFActionType.METER=29 for class OFActionMeterVer15
return OFActionMeterVer15.READER.readFrom(bb);
default:
throw new OFParseError("Unknown value for discriminator type of class OFActionVer15: " + type);
}
}
}
}