stats improvement
diff --git a/src/main/java/net/floodlightcontroller/core/web/serializers/OFGroupDescStatsEntryModSerializer.java b/src/main/java/net/floodlightcontroller/core/web/serializers/OFGroupDescStatsEntryModSerializer.java
index c550674..405679d 100644
--- a/src/main/java/net/floodlightcontroller/core/web/serializers/OFGroupDescStatsEntryModSerializer.java
+++ b/src/main/java/net/floodlightcontroller/core/web/serializers/OFGroupDescStatsEntryModSerializer.java
@@ -4,6 +4,7 @@
import net.floodlightcontroller.core.web.OFGroupDescStatsEntryMod;
+import org.apache.commons.codec.binary.Hex;
import org.codehaus.jackson.JsonGenerationException;
import org.codehaus.jackson.JsonGenerator;
import org.codehaus.jackson.map.SerializerProvider;
@@ -11,7 +12,6 @@
import org.projectfloodlight.openflow.protocol.OFActionType;
import org.projectfloodlight.openflow.protocol.OFBucket;
import org.projectfloodlight.openflow.protocol.OFGroupDescStatsEntry;
-import org.projectfloodlight.openflow.protocol.action.OFAction;
import org.projectfloodlight.openflow.protocol.action.*;
public class OFGroupDescStatsEntryModSerializer extends SerializerBase<OFGroupDescStatsEntryMod>{
@@ -36,6 +36,8 @@
jGen.writeStartObject();
List<OFAction> actions = bucket.getActions();
for (OFAction action : actions ){
+ System.out.println("OFMessage: " + groupDescStatsEntryMod);
+ System.out.println("\naction.getType()\n"+ action.getType()+"\n"+ action.getClass());
if(action.getType().compareTo(OFActionType.SET_FIELD) == 0){
/*
* TODO: 1-Need better if condition.
@@ -48,10 +50,22 @@
else if (((OFActionSetField)action).getField().toString().contains("OFOxmEthDstVer13")){
jGen.writeStringField("SET_DL_DST", ((OFActionSetField)action).getField().getValue().toString());
}
+ else if (((OFActionSetField)action).getField().toString().contains("OFOxmMplsLabelVer13")){
+ jGen.writeStringField("PUSH_MPLS", ((OFActionSetField)action).getField().getValue().toString());
+ }
}
else if(action.getType().compareTo(OFActionType.OUTPUT) == 0){
jGen.writeNumberField("OUTPPUT", ((OFActionOutput)action).getPort().getPortNumber());
}
+ //else if(action.getType().compareTo(OFActionType.PUSH_MPLS) == 0){
+ // jGen.writeNumberField("POP_MPLS", Integer.parseInt(((OFActionSetField)action).getField().getValue().toString()));
+ // System.out.println("\n\n\nPOP:" + Integer.decode("0x"+((OFActionPopMpls)action).getEthertype().toString()));
+ //}
+ else if(action.getType().compareTo(OFActionType.POP_MPLS) == 0){
+ jGen.writeStringField("POP_MPLS", "True");
+ System.out.println("\n\n\nPOP:" + Integer.decode("0x"+((OFActionPopMpls)action).getEthertype().toString()));
+ }
+
}
jGen.writeEndObject();
}