[CORD-197] Properly handles a flow with empty instruction

Change-Id: Ia465fdc8df1dca7a46249cd4cd8d41faf8461c3a
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 f238bdb..cf91860 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
@@ -221,11 +221,6 @@
 
     private TrafficTreatment buildTreatment() {
         TrafficTreatment.Builder builder = DefaultTrafficTreatment.builder();
-        // If this is a drop rule
-        if (instructions.size() == 0) {
-            builder.drop();
-            return builder.build();
-        }
         for (OFInstruction in : instructions) {
             switch (in.getType()) {
                 case GOTO_TABLE:
diff --git a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer10.java b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer10.java
index c9de450..f77819d 100644
--- a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer10.java
+++ b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer10.java
@@ -142,7 +142,7 @@
         for (Instruction i : treatment.immediate()) {
             switch (i.type()) {
             case DROP:
-                log.warn("Saw drop action; assigning drop action");
+            case NOACTION:
                 return Collections.emptyList();
             case L2MODIFICATION:
                 act = buildL2Modification(i);
diff --git a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer13.java b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer13.java
index 0a53a2d..cc26575 100644
--- a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer13.java
+++ b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer13.java
@@ -215,6 +215,7 @@
         for (Instruction i : treatments) {
             switch (i.type()) {
                 case DROP:
+                case NOACTION:
                     return Collections.emptyList();
                 case L0MODIFICATION:
                     actions.add(buildL0Modification(i));