stats reply in progress
diff --git a/providers/openflow/flow/src/main/java/org/onlab/onos/provider/of/flow/impl/OpenFlowRuleProvider.java b/providers/openflow/flow/src/main/java/org/onlab/onos/provider/of/flow/impl/OpenFlowRuleProvider.java
index 9a5a9dd..c03f119 100644
--- a/providers/openflow/flow/src/main/java/org/onlab/onos/provider/of/flow/impl/OpenFlowRuleProvider.java
+++ b/providers/openflow/flow/src/main/java/org/onlab/onos/provider/of/flow/impl/OpenFlowRuleProvider.java
@@ -11,7 +11,6 @@
 import org.apache.felix.scr.annotations.ReferenceCardinality;
 import org.onlab.onos.net.DeviceId;
 import org.onlab.onos.net.flow.DefaultFlowRule;
-import org.onlab.onos.net.flow.FlowEntry;
 import org.onlab.onos.net.flow.FlowRule;
 import org.onlab.onos.net.flow.FlowRuleProvider;
 import org.onlab.onos.net.flow.FlowRuleProviderRegistry;
@@ -25,10 +24,18 @@
 import org.onlab.onos.openflow.controller.OpenFlowSwitch;
 import org.onlab.onos.openflow.controller.OpenFlowSwitchListener;
 import org.projectfloodlight.openflow.protocol.OFFlowRemoved;
+import org.projectfloodlight.openflow.protocol.OFFlowStatsEntry;
+import org.projectfloodlight.openflow.protocol.OFFlowStatsReply;
 import org.projectfloodlight.openflow.protocol.OFMessage;
 import org.projectfloodlight.openflow.protocol.OFPortStatus;
+import org.projectfloodlight.openflow.protocol.OFStatsReply;
+import org.projectfloodlight.openflow.protocol.OFStatsType;
 import org.slf4j.Logger;
 
+import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
+rt org.slf4j.Logger;
+
 import com.google.common.collect.Maps;
 
 /**
@@ -95,12 +102,6 @@
 
     }
 
-    @Override
-    public Iterable<FlowEntry> getFlowMetrics(DeviceId deviceId) {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
 
     //TODO: InternalFlowRuleProvider listening to stats and error and flowremoved.
     // possibly barriers as well. May not be internal at all...
@@ -119,7 +120,6 @@
         @Override
         public void switchRemoved(Dpid dpid) {
             collectors.remove(dpid).stop();
-
         }
 
         @Override
@@ -137,6 +137,7 @@
                 providerService.flowRemoved(fr);
                 break;
             case STATS_REPLY:
+                pushFlowMetrics((OFStatsReply) msg);
                 break;
             case BARRIER_REPLY:
             case ERROR:
@@ -146,6 +147,19 @@
 
         }
 
+        private void pushFlowMetrics(OFStatsReply stats) {
+            if (stats.getStatsType() != OFStatsType.FLOW) {
+                return;
+            }
+            final OFFlowStatsReply replies = (OFFlowStatsReply) stats;
+            final List<FlowEntry> entries = Lists.newLinkedList();
+            for (OFFlowStatsEntry reply : replies.getEntries()) {
+
+            }
+
+
+        }
+
     }