GetFlowNodeCache cli
[openflowplugin.git] / openflowplugin-impl / src / main / java / org / opendaylight / openflowplugin / impl / role / RoleManagerImpl.java
index c6dbd42aec55ce2debdf045eefc56eb54e1e616a..f5d309ff06b6c328f200526824464e85e459af6c 100644 (file)
@@ -11,7 +11,8 @@ package org.opendaylight.openflowplugin.impl.role;
 import io.netty.util.HashedWheelTimer;
 import java.util.concurrent.ConcurrentHashMap;
 import java.util.concurrent.ConcurrentMap;
-import javax.annotation.Nonnull;
+import java.util.concurrent.ExecutorService;
+import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.openflowplugin.api.openflow.OFPContext;
 import org.opendaylight.openflowplugin.api.openflow.device.DeviceContext;
 import org.opendaylight.openflowplugin.api.openflow.device.DeviceInfo;
@@ -27,19 +28,22 @@ public class RoleManagerImpl implements RoleManager {
     private final ConcurrentMap<DeviceInfo, RoleContext> contexts = new ConcurrentHashMap<>();
     private final HashedWheelTimer timer;
     private final OpenflowProviderConfig config;
+    private final ExecutorService executorService;
 
     public RoleManagerImpl(final HashedWheelTimer timer,
-                           final OpenflowProviderConfig config) {
+                           final OpenflowProviderConfig config,
+                           final ExecutorService executorService) {
         this.timer = timer;
         this.config = config;
+        this.executorService = executorService;
     }
 
     @Override
-    public RoleContext createContext(@Nonnull final DeviceContext deviceContext) {
+    public RoleContext createContext(@NonNull final DeviceContext deviceContext) {
         final DeviceInfo deviceInfo = deviceContext.getDeviceInfo();
         final RoleContextImpl roleContext = new RoleContextImpl(
                 deviceContext.getDeviceInfo(),
-                timer, CHECK_ROLE_MASTER_TIMEOUT, config);
+                timer, CHECK_ROLE_MASTER_TIMEOUT, config, executorService);
 
         roleContext.setRoleService(new SalRoleServiceImpl(roleContext, deviceContext));
         contexts.put(deviceInfo, roleContext);