sample app launched
diff --git a/core/api/src/main/java/org/onlab/onos/net/flow/DefaultTrafficTreatment.java b/core/api/src/main/java/org/onlab/onos/net/flow/DefaultTrafficTreatment.java
index d206c97..6eaa2c3 100644
--- a/core/api/src/main/java/org/onlab/onos/net/flow/DefaultTrafficTreatment.java
+++ b/core/api/src/main/java/org/onlab/onos/net/flow/DefaultTrafficTreatment.java
@@ -6,7 +6,6 @@
 import java.util.LinkedList;
 import java.util.List;
 
-import org.onlab.onos.net.PortNumber;
 import org.slf4j.Logger;
 
 @SuppressWarnings("rawtypes")
@@ -33,29 +32,33 @@
 
         private final Logger log = getLogger(getClass());
 
-        List<Instruction<PortNumber>> outputs = new LinkedList<>();
+        boolean drop = false;
+
+        List<Instruction> outputs = new LinkedList<>();
 
         // TODO: should be a list of instructions based on group objects
-        List<Instruction<Object>> groups = new LinkedList<>();
+        List<Instruction> groups = new LinkedList<>();
 
         // TODO: should be a list of instructions based on modification objects
-        List<Instruction<Object>> modifications = new LinkedList<>();
+        List<Instruction> modifications = new LinkedList<>();
 
 
-        @SuppressWarnings("unchecked")
         @Override
         public Builder add(Instruction instruction) {
             switch (instruction.type()) {
-            case OUTPUT:
             case DROP:
-                // TODO: should check that there is only one drop instruction.
+                drop = true;
+                break;
+            case OUTPUT:
                 outputs.add(instruction);
                 break;
             case MODIFICATION:
                 // TODO: enforce modification order if any
                 modifications.add(instruction);
+                break;
             case GROUP:
                 groups.add(instruction);
+                break;
             default:
                 log.warn("Unknown instruction type {}", instruction.type());
             }
@@ -64,10 +67,14 @@
 
         @Override
         public TrafficTreatment build() {
+
+            //If we are dropping should we just return an emptry list?
             List<Instruction> instructions = new LinkedList<Instruction>();
             instructions.addAll(modifications);
             instructions.addAll(groups);
-            instructions.addAll(outputs);
+            if (!drop) {
+                instructions.addAll(outputs);
+            }
 
             return new DefaultTrafficTreatment(instructions);
         }