Implement OFActionSetQueue (OpenFlow 1.3 only)

Action "Set-Queue" (OFPAT_SET_QUEUE) is not yet implemented.

This patch adds such a QUEUE Treatment and implements it using the Set-Queue
action of OpenFlow 1.3.

The --setQueue parameter can be used when defining intents so that flows with
the respective Set-Queue action are installed.

This includes contributions by Michael Jarschel and Arne Schwabe and is the
result of our ONOS Hackaton project at EWSDN 2015.

Change-Id: Ie7bf01e8fd90fe68977477327ac4f53d7930e186
diff --git a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowEntryBuilder.java b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowEntryBuilder.java
index cf91860..1039d04 100644
--- a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowEntryBuilder.java
+++ b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowEntryBuilder.java
@@ -55,6 +55,7 @@
 import org.projectfloodlight.openflow.protocol.action.OFActionExperimenter;
 import org.projectfloodlight.openflow.protocol.action.OFActionGroup;
 import org.projectfloodlight.openflow.protocol.action.OFActionOutput;
+import org.projectfloodlight.openflow.protocol.action.OFActionSetQueue;
 import org.projectfloodlight.openflow.protocol.action.OFActionPopMpls;
 import org.projectfloodlight.openflow.protocol.action.OFActionSetDlDst;
 import org.projectfloodlight.openflow.protocol.action.OFActionSetDlSrc;
@@ -333,6 +334,10 @@
                     OFActionGroup group = (OFActionGroup) act;
                     builder.group(new DefaultGroupId(group.getGroup().getGroupNumber()));
                     break;
+                case SET_QUEUE:
+                    OFActionSetQueue setQueue = (OFActionSetQueue) act;
+                    builder.setQueue(setQueue.getQueueId());
+                    break;
                 case STRIP_VLAN:
                 case POP_VLAN:
                     builder.popVlan();
@@ -350,7 +355,6 @@
                 case SET_NW_ECN:
                 case SET_NW_TOS:
                 case SET_NW_TTL:
-                case SET_QUEUE:
 
                 case ENQUEUE:
                 default: