fixing loxi output
upgrade to 0.3.8
agrregate pom for of-lib

Change-Id: Ie75d75b708c30934bbca235e68c50de656d84ad4
diff --git a/of/lib/gen-src/main/java/org/projectfloodlight/openflow/protocol/ver12/OFActionVer12.java b/of/lib/gen-src/main/java/org/projectfloodlight/openflow/protocol/ver12/OFActionVer12.java
new file mode 100644
index 0000000..0fea76e
--- /dev/null
+++ b/of/lib/gen-src/main/java/org/projectfloodlight/openflow/protocol/ver12/OFActionVer12.java
@@ -0,0 +1,96 @@
+// 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.ver12;
+
+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.oxm.*;
+import org.projectfloodlight.openflow.protocol.queueprop.*;
+import org.projectfloodlight.openflow.types.*;
+import org.projectfloodlight.openflow.util.*;
+import org.projectfloodlight.openflow.exceptions.*;
+import org.jboss.netty.buffer.ChannelBuffer;
+import java.util.Set;
+
+abstract class OFActionVer12 {
+    // version: 1.2
+    final static byte WIRE_VERSION = 3;
+    final static int MINIMUM_LENGTH = 8;
+
+
+    public final static OFActionVer12.Reader READER = new Reader();
+
+    static class Reader implements OFMessageReader<OFAction> {
+        @Override
+        public OFAction readFrom(ChannelBuffer 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 OFActionExperimenterVer12
+                   return OFActionExperimenterVer12.READER.readFrom(bb);
+               case (short) 0x0:
+                   // discriminator value OFActionType.OUTPUT=0 for class OFActionOutputVer12
+                   return OFActionOutputVer12.READER.readFrom(bb);
+               case (short) 0xc:
+                   // discriminator value OFActionType.COPY_TTL_IN=12 for class OFActionCopyTtlInVer12
+                   return OFActionCopyTtlInVer12.READER.readFrom(bb);
+               case (short) 0xb:
+                   // discriminator value OFActionType.COPY_TTL_OUT=11 for class OFActionCopyTtlOutVer12
+                   return OFActionCopyTtlOutVer12.READER.readFrom(bb);
+               case (short) 0x10:
+                   // discriminator value OFActionType.DEC_MPLS_TTL=16 for class OFActionDecMplsTtlVer12
+                   return OFActionDecMplsTtlVer12.READER.readFrom(bb);
+               case (short) 0x18:
+                   // discriminator value OFActionType.DEC_NW_TTL=24 for class OFActionDecNwTtlVer12
+                   return OFActionDecNwTtlVer12.READER.readFrom(bb);
+               case (short) 0x16:
+                   // discriminator value OFActionType.GROUP=22 for class OFActionGroupVer12
+                   return OFActionGroupVer12.READER.readFrom(bb);
+               case (short) 0x14:
+                   // discriminator value OFActionType.POP_MPLS=20 for class OFActionPopMplsVer12
+                   return OFActionPopMplsVer12.READER.readFrom(bb);
+               case (short) 0x12:
+                   // discriminator value OFActionType.POP_VLAN=18 for class OFActionPopVlanVer12
+                   return OFActionPopVlanVer12.READER.readFrom(bb);
+               case (short) 0x13:
+                   // discriminator value OFActionType.PUSH_MPLS=19 for class OFActionPushMplsVer12
+                   return OFActionPushMplsVer12.READER.readFrom(bb);
+               case (short) 0x11:
+                   // discriminator value OFActionType.PUSH_VLAN=17 for class OFActionPushVlanVer12
+                   return OFActionPushVlanVer12.READER.readFrom(bb);
+               case (short) 0xf:
+                   // discriminator value OFActionType.SET_MPLS_TTL=15 for class OFActionSetMplsTtlVer12
+                   return OFActionSetMplsTtlVer12.READER.readFrom(bb);
+               case (short) 0x17:
+                   // discriminator value OFActionType.SET_NW_TTL=23 for class OFActionSetNwTtlVer12
+                   return OFActionSetNwTtlVer12.READER.readFrom(bb);
+               case (short) 0x15:
+                   // discriminator value OFActionType.SET_QUEUE=21 for class OFActionSetQueueVer12
+                   return OFActionSetQueueVer12.READER.readFrom(bb);
+               case (short) 0x19:
+                   // discriminator value OFActionType.SET_FIELD=25 for class OFActionSetFieldVer12
+                   return OFActionSetFieldVer12.READER.readFrom(bb);
+               default:
+                   throw new OFParseError("Unknown value for discriminator type of class OFActionVer12: " + type);
+            }
+        }
+    }
+}