diff --git a/drivers/src/main/java/org/onosproject/driver/pipeline/DefaultSingleTablePipeline.java b/drivers/src/main/java/org/onosproject/driver/pipeline/DefaultSingleTablePipeline.java
index 6e99b35..866f57e 100644
--- a/drivers/src/main/java/org/onosproject/driver/pipeline/DefaultSingleTablePipeline.java
+++ b/drivers/src/main/java/org/onosproject/driver/pipeline/DefaultSingleTablePipeline.java
@@ -21,7 +21,7 @@
 import org.onosproject.net.DeviceId;
 import org.onosproject.net.behaviour.Pipeliner;
 import org.onosproject.net.behaviour.PipelinerContext;
-import org.onosproject.net.driver.DriverData;
+import org.onosproject.net.driver.AbstractBehaviour;
 import org.onosproject.net.flow.DefaultFlowRule;
 import org.onosproject.net.flow.FlowRule;
 import org.onosproject.net.flow.FlowRuleOperations;
@@ -41,7 +41,7 @@
 /**
  * Simple single table pipeline abstraction.
  */
-public class DefaultSingleTablePipeline implements Pipeliner {
+public class DefaultSingleTablePipeline extends AbstractBehaviour implements Pipeliner {
 
     private final Logger log = getLogger(getClass());
 
@@ -89,7 +89,7 @@
                     flowBuilder.remove(rule);
                     break;
                 default:
-                log.warn("Unknown operation {}", fwd.op());
+                    log.warn("Unknown operation {}", fwd.op());
             }
 
         });
@@ -115,8 +115,4 @@
         throw new UnsupportedOperationException("Single table does not next hop.");
     }
 
-    @Override
-    public void setData(DriverData data) {
-
-    }
 }
diff --git a/drivers/src/main/java/org/onosproject/driver/pipeline/OVSCorsaPipeline.java b/drivers/src/main/java/org/onosproject/driver/pipeline/OVSCorsaPipeline.java
index 2ac846c..3da786a 100644
--- a/drivers/src/main/java/org/onosproject/driver/pipeline/OVSCorsaPipeline.java
+++ b/drivers/src/main/java/org/onosproject/driver/pipeline/OVSCorsaPipeline.java
@@ -24,7 +24,7 @@
 import org.onosproject.net.DeviceId;
 import org.onosproject.net.behaviour.Pipeliner;
 import org.onosproject.net.behaviour.PipelinerContext;
-import org.onosproject.net.driver.DriverData;
+import org.onosproject.net.driver.AbstractBehaviour;
 import org.onosproject.net.flow.DefaultFlowRule;
 import org.onosproject.net.flow.DefaultTrafficSelector;
 import org.onosproject.net.flow.DefaultTrafficTreatment;
@@ -45,9 +45,9 @@
 import static org.slf4j.LoggerFactory.getLogger;
 
 /**
- * Created by ash on 07/04/15.
+ * Corsa pipeline handler.
  */
-public class OVSCorsaPipeline implements Pipeliner {
+public class OVSCorsaPipeline extends AbstractBehaviour implements Pipeliner {
 
     private static final int CONTROLLER_PRIORITY = 255;
     private static final int DROP_PRIORITY = 0;
@@ -92,12 +92,6 @@
         return null;
     }
 
-    @Override
-    public void setData(DriverData data) {
-
-    }
-
-
     private void pushDefaultRules() {
         boolean install = true;
         processTableZero(install);
@@ -130,7 +124,6 @@
         ops = install ? ops.add(rule) : ops.remove(rule);
 
 
-
         //Drop rule
         selector = DefaultTrafficSelector.builder();
         treatment = DefaultTrafficTreatment.builder();
@@ -195,7 +188,6 @@
         FlowRule rule;
 
 
-
         //Drop rule
         selector = DefaultTrafficSelector.builder();
         treatment = DefaultTrafficTreatment.builder();
