blob: 6fb3594a8a3875d06da9fc4ad96b2c0b06784984 [file] [log] [blame]
tom0eb04ca2014-08-25 14:34:51 -07001// Copyright (c) 2008 The Board of Trustees of The Leland Stanford Junior University
2// Copyright (c) 2011, 2012 Open Networking Foundation
3// Copyright (c) 2012, 2013 Big Switch Networks, Inc.
4// This library was generated by the LoxiGen Compiler.
5// See the file LICENSE.txt which should have been included in the source distribution
6
7// Automatically generated by LOXI from template const_serializer.java
8// Do not modify
9
10package org.projectfloodlight.openflow.protocol.ver10;
11
12import org.projectfloodlight.openflow.protocol.*;
13import org.projectfloodlight.openflow.protocol.action.*;
14import org.projectfloodlight.openflow.protocol.actionid.*;
15import org.projectfloodlight.openflow.protocol.bsntlv.*;
16import org.projectfloodlight.openflow.protocol.errormsg.*;
17import org.projectfloodlight.openflow.protocol.meterband.*;
18import org.projectfloodlight.openflow.protocol.instruction.*;
19import org.projectfloodlight.openflow.protocol.instructionid.*;
20import org.projectfloodlight.openflow.protocol.match.*;
21import org.projectfloodlight.openflow.protocol.oxm.*;
22import org.projectfloodlight.openflow.protocol.queueprop.*;
23import org.projectfloodlight.openflow.types.*;
24import org.projectfloodlight.openflow.util.*;
25import org.projectfloodlight.openflow.exceptions.*;
26import org.projectfloodlight.openflow.protocol.OFType;
27import org.jboss.netty.buffer.ChannelBuffer;
28import com.google.common.hash.PrimitiveSink;
29
30public class OFTypeSerializerVer10 {
31
32 public final static byte HELLO_VAL = (byte) 0x0;
33 public final static byte ERROR_VAL = (byte) 0x1;
34 public final static byte ECHO_REQUEST_VAL = (byte) 0x2;
35 public final static byte ECHO_REPLY_VAL = (byte) 0x3;
36 public final static byte EXPERIMENTER_VAL = (byte) 0x4;
37 public final static byte FEATURES_REQUEST_VAL = (byte) 0x5;
38 public final static byte FEATURES_REPLY_VAL = (byte) 0x6;
39 public final static byte GET_CONFIG_REQUEST_VAL = (byte) 0x7;
40 public final static byte GET_CONFIG_REPLY_VAL = (byte) 0x8;
41 public final static byte SET_CONFIG_VAL = (byte) 0x9;
42 public final static byte PACKET_IN_VAL = (byte) 0xa;
43 public final static byte FLOW_REMOVED_VAL = (byte) 0xb;
44 public final static byte PORT_STATUS_VAL = (byte) 0xc;
45 public final static byte PACKET_OUT_VAL = (byte) 0xd;
46 public final static byte FLOW_MOD_VAL = (byte) 0xe;
47 public final static byte PORT_MOD_VAL = (byte) 0xf;
48 public final static byte STATS_REQUEST_VAL = (byte) 0x10;
49 public final static byte STATS_REPLY_VAL = (byte) 0x11;
50 public final static byte BARRIER_REQUEST_VAL = (byte) 0x12;
51 public final static byte BARRIER_REPLY_VAL = (byte) 0x13;
52 public final static byte QUEUE_GET_CONFIG_REQUEST_VAL = (byte) 0x14;
53 public final static byte QUEUE_GET_CONFIG_REPLY_VAL = (byte) 0x15;
54
55 public static OFType readFrom(ChannelBuffer bb) throws OFParseError {
56 try {
57 return ofWireValue(bb.readByte());
58 } catch (IllegalArgumentException e) {
59 throw new OFParseError(e);
60 }
61 }
62
63 public static void writeTo(ChannelBuffer bb, OFType e) {
64 bb.writeByte(toWireValue(e));
65 }
66
67 public static void putTo(OFType e, PrimitiveSink sink) {
68 sink.putByte(toWireValue(e));
69 }
70
71 public static OFType ofWireValue(byte val) {
72 switch(val) {
73 case HELLO_VAL:
74 return OFType.HELLO;
75 case ERROR_VAL:
76 return OFType.ERROR;
77 case ECHO_REQUEST_VAL:
78 return OFType.ECHO_REQUEST;
79 case ECHO_REPLY_VAL:
80 return OFType.ECHO_REPLY;
81 case EXPERIMENTER_VAL:
82 return OFType.EXPERIMENTER;
83 case FEATURES_REQUEST_VAL:
84 return OFType.FEATURES_REQUEST;
85 case FEATURES_REPLY_VAL:
86 return OFType.FEATURES_REPLY;
87 case GET_CONFIG_REQUEST_VAL:
88 return OFType.GET_CONFIG_REQUEST;
89 case GET_CONFIG_REPLY_VAL:
90 return OFType.GET_CONFIG_REPLY;
91 case SET_CONFIG_VAL:
92 return OFType.SET_CONFIG;
93 case PACKET_IN_VAL:
94 return OFType.PACKET_IN;
95 case FLOW_REMOVED_VAL:
96 return OFType.FLOW_REMOVED;
97 case PORT_STATUS_VAL:
98 return OFType.PORT_STATUS;
99 case PACKET_OUT_VAL:
100 return OFType.PACKET_OUT;
101 case FLOW_MOD_VAL:
102 return OFType.FLOW_MOD;
103 case PORT_MOD_VAL:
104 return OFType.PORT_MOD;
105 case STATS_REQUEST_VAL:
106 return OFType.STATS_REQUEST;
107 case STATS_REPLY_VAL:
108 return OFType.STATS_REPLY;
109 case BARRIER_REQUEST_VAL:
110 return OFType.BARRIER_REQUEST;
111 case BARRIER_REPLY_VAL:
112 return OFType.BARRIER_REPLY;
113 case QUEUE_GET_CONFIG_REQUEST_VAL:
114 return OFType.QUEUE_GET_CONFIG_REQUEST;
115 case QUEUE_GET_CONFIG_REPLY_VAL:
116 return OFType.QUEUE_GET_CONFIG_REPLY;
117 default:
118 throw new IllegalArgumentException("Illegal wire value for type OFType in version 1.0: " + val);
119 }
120 }
121
122
123 public static byte toWireValue(OFType e) {
124 switch(e) {
125 case HELLO:
126 return HELLO_VAL;
127 case ERROR:
128 return ERROR_VAL;
129 case ECHO_REQUEST:
130 return ECHO_REQUEST_VAL;
131 case ECHO_REPLY:
132 return ECHO_REPLY_VAL;
133 case EXPERIMENTER:
134 return EXPERIMENTER_VAL;
135 case FEATURES_REQUEST:
136 return FEATURES_REQUEST_VAL;
137 case FEATURES_REPLY:
138 return FEATURES_REPLY_VAL;
139 case GET_CONFIG_REQUEST:
140 return GET_CONFIG_REQUEST_VAL;
141 case GET_CONFIG_REPLY:
142 return GET_CONFIG_REPLY_VAL;
143 case SET_CONFIG:
144 return SET_CONFIG_VAL;
145 case PACKET_IN:
146 return PACKET_IN_VAL;
147 case FLOW_REMOVED:
148 return FLOW_REMOVED_VAL;
149 case PORT_STATUS:
150 return PORT_STATUS_VAL;
151 case PACKET_OUT:
152 return PACKET_OUT_VAL;
153 case FLOW_MOD:
154 return FLOW_MOD_VAL;
155 case PORT_MOD:
156 return PORT_MOD_VAL;
157 case STATS_REQUEST:
158 return STATS_REQUEST_VAL;
159 case STATS_REPLY:
160 return STATS_REPLY_VAL;
161 case BARRIER_REQUEST:
162 return BARRIER_REQUEST_VAL;
163 case BARRIER_REPLY:
164 return BARRIER_REPLY_VAL;
165 case QUEUE_GET_CONFIG_REQUEST:
166 return QUEUE_GET_CONFIG_REQUEST_VAL;
167 case QUEUE_GET_CONFIG_REPLY:
168 return QUEUE_GET_CONFIG_REPLY_VAL;
169 default:
170 throw new IllegalArgumentException("Illegal enum value for type OFType in version 1.0: " + e);
171 }
172 }
173
174}