functional stats service
Change-Id: I90de3aa5d7721db8ef6a154e122af8b446243f60
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 54265ba..4a21add 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
@@ -103,6 +103,8 @@
private final Map<Long, InstallationFuture> pendingFMs =
new ConcurrentHashMap<Long, InstallationFuture>();
+ private final Map<Dpid, FlowStatsCollector> collectors = Maps.newHashMap();
+
/**
* Creates an OpenFlow host provider.
*/
@@ -115,6 +117,14 @@
providerService = providerRegistry.register(this);
controller.addListener(listener);
controller.addEventListener(listener);
+
+ for (OpenFlowSwitch sw : controller.getSwitches()) {
+ FlowStatsCollector fsc = new FlowStatsCollector(sw, POLL_INTERVAL);
+ fsc.start();
+ collectors.put(new Dpid(sw.getId()), fsc);
+ }
+
+
log.info("Started");
}
@@ -213,7 +223,7 @@
private class InternalFlowProvider
implements OpenFlowSwitchListener, OpenFlowEventListener {
- private final Map<Dpid, FlowStatsCollector> collectors = Maps.newHashMap();
+
private final Multimap<DeviceId, FlowEntry> completeEntries =
ArrayListMultimap.create();