Add FlowEventDispatcher and implement event handler of FlowManagerModule.
- Added FlowEventDispatcher to handle FlowManager's events.
- Changed visibility of FlowBatchStateChangedEvent, FlowStatesChangedEvent and
FlowStateChange classes to public.
- Implemented addListener() and removeListener() methods on FlowManagerModule.
- It is needed for Intent runtime service
because it uses event handler of FlowManagerModule.
- This task is a preperation for ONOS-1691 and ONOS-1739.
Change-Id: I9c76d8c0dc06469698b087849f066b8531dd8736
diff --git a/src/main/java/net/onrc/onos/core/flowmanager/FlowManagerModule.java b/src/main/java/net/onrc/onos/core/flowmanager/FlowManagerModule.java
index ccf6081..39499f4 100644
--- a/src/main/java/net/onrc/onos/core/flowmanager/FlowManagerModule.java
+++ b/src/main/java/net/onrc/onos/core/flowmanager/FlowManagerModule.java
@@ -52,6 +52,7 @@
private ISharedCollectionsService sharedCollectionService;
private FlowMap flowMap;
private FlowBatchMap flowBatchMap;
+ private FlowEventDispatcher flowEventDispatcher;
@Override
public Collection<Class<? extends IFloodlightService>> getModuleServices() {
@@ -96,6 +97,9 @@
flowMap = new SharedFlowMap(sharedCollectionService);
flowBatchMap = new SharedFlowBatchMap(sharedCollectionService);
+ flowEventDispatcher =
+ new FlowEventDispatcher(flowMap, flowBatchMap, matchActionService);
+ flowEventDispatcher.start();
}
/**
@@ -172,14 +176,12 @@
@Override
public void addListener(FlowManagerListener listener) {
- // TODO Auto-generated method stub
-
+ flowEventDispatcher.addListener(listener);
}
@Override
public void removeListener(FlowManagerListener listener) {
- // TODO Auto-generated method stub
-
+ flowEventDispatcher.removeListener(listener);
}
private MatchActionOperations createNewMatchActionOperations() {