netty4 OpenFlow southbound

- separate I/O thread and message dispatch threads

Change-Id: I11a10a47de451a9e3063b62f9450be19c3a9dae7
diff --git a/providers/openflow/flow/pom.xml b/providers/openflow/flow/pom.xml
index d7e714d..b3e78b4 100644
--- a/providers/openflow/flow/pom.xml
+++ b/providers/openflow/flow/pom.xml
@@ -21,11 +21,11 @@
 
     <parent>
         <groupId>org.onosproject</groupId>
-        <artifactId>onos-of-providers</artifactId>
+        <artifactId>onos-providers-openflow</artifactId>
         <version>1.11.0-SNAPSHOT</version>
     </parent>
 
-    <artifactId>onos-of-provider-flow</artifactId>
+    <artifactId>onos-providers-openflow-flow</artifactId>
     <packaging>bundle</packaging>
 
     <description>ONOS OpenFlow protocol flow provider</description>
diff --git a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/OpenFlowRuleProvider.java b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/OpenFlowRuleProvider.java
index 17cf980..575f5b2 100644
--- a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/OpenFlowRuleProvider.java
+++ b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/OpenFlowRuleProvider.java
@@ -24,6 +24,8 @@
 import com.google.common.collect.Maps;
 import com.google.common.collect.Sets;
 
+import io.netty.buffer.ByteBuf;
+import io.netty.buffer.Unpooled;
 import org.apache.felix.scr.annotations.Activate;
 import org.apache.felix.scr.annotations.Component;
 import org.apache.felix.scr.annotations.Deactivate;
@@ -31,8 +33,6 @@
 import org.apache.felix.scr.annotations.Property;
 import org.apache.felix.scr.annotations.Reference;
 import org.apache.felix.scr.annotations.ReferenceCardinality;
-import org.jboss.netty.buffer.ChannelBuffer;
-import org.jboss.netty.buffer.ChannelBuffers;
 import org.onosproject.cfg.ComponentConfigService;
 import org.onosproject.core.ApplicationId;
 import org.onosproject.net.DeviceId;
@@ -565,8 +565,7 @@
                 return null;
             }
 
-            ChannelBuffer bb = ChannelBuffers.wrappedBuffer(
-                    msg.getData().getData());
+            ByteBuf bb = Unpooled.wrappedBuffer(msg.getData().getData());
 
             if (bb.readableBytes() < MIN_EXPECTED_BYTE_LEN) {
                 log.debug("Wrong length: Expected to be >= {}, was: {}",