org.projectfloodlight.openflow.protocol.ver15.OFGroupBucketSerializerVer15 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 const_serializer.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 org.projectfloodlight.openflow.protocol.OFGroupBucket;
import io.netty.buffer.ByteBuf;
import com.google.common.hash.PrimitiveSink;
public class OFGroupBucketSerializerVer15 {
public final static int BUCKET_MAX_VAL = (int) 0xffffff00;
public final static int BUCKET_FIRST_VAL = (int) 0xfffffffd;
public final static int BUCKET_LAST_VAL = (int) 0xfffffffe;
public final static int BUCKET_ALL_VAL = (int) 0xffffffff;
public static OFGroupBucket readFrom(ByteBuf bb) throws OFParseError {
try {
return ofWireValue(bb.readInt());
} catch (IllegalArgumentException e) {
throw new OFParseError(e);
}
}
public static void writeTo(ByteBuf bb, OFGroupBucket e) {
bb.writeInt(toWireValue(e));
}
public static void putTo(OFGroupBucket e, PrimitiveSink sink) {
sink.putInt(toWireValue(e));
}
public static OFGroupBucket ofWireValue(int val) {
switch(val) {
case BUCKET_MAX_VAL:
return OFGroupBucket.BUCKET_MAX;
case BUCKET_FIRST_VAL:
return OFGroupBucket.BUCKET_FIRST;
case BUCKET_LAST_VAL:
return OFGroupBucket.BUCKET_LAST;
case BUCKET_ALL_VAL:
return OFGroupBucket.BUCKET_ALL;
default:
throw new IllegalArgumentException("Illegal wire value for type OFGroupBucket in version 1.5: " + val);
}
}
public static int toWireValue(OFGroupBucket e) {
switch(e) {
case BUCKET_MAX:
return BUCKET_MAX_VAL;
case BUCKET_FIRST:
return BUCKET_FIRST_VAL;
case BUCKET_LAST:
return BUCKET_LAST_VAL;
case BUCKET_ALL:
return BUCKET_ALL_VAL;
default:
throw new IllegalArgumentException("Illegal enum value for type OFGroupBucket in version 1.5: " + e);
}
}
}