Extract mastership blueprint service
[openflowplugin.git] / openflowplugin-api / src / main / java / org / opendaylight / openflowplugin / api / openflow / OpenFlowPluginProviderFactory.java
index d5caf2daaeb4b7047ff9adfd2279a8641bcd8ca8..3322cc5d18e4cfc5072f0c8e355487f5db42b003 100644 (file)
@@ -10,21 +10,23 @@ package org.opendaylight.openflowplugin.api.openflow;
 import java.util.List;
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.controller.md.sal.binding.api.NotificationPublishService;
-import org.opendaylight.controller.md.sal.binding.api.NotificationService;
 import org.opendaylight.controller.md.sal.common.api.clustering.EntityOwnershipService;
 import org.opendaylight.controller.sal.binding.api.RpcProviderRegistry;
+import org.opendaylight.mdsal.singleton.common.api.ClusterSingletonServiceProvider;
 import org.opendaylight.openflowjava.protocol.spi.connection.SwitchConnectionProvider;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.openflow.provider.config.rev160510.OpenflowProviderConfig;
+import org.opendaylight.openflowplugin.api.openflow.configuration.ConfigurationService;
+import org.opendaylight.openflowplugin.api.openflow.mastership.MastershipChangeServiceManager;
 
 /**
  * Factory for creating OpenFlowPluginProvider instances.
- *
- * @author Thomas Pantelis
  */
 public interface OpenFlowPluginProviderFactory {
-    OpenFlowPluginProvider newInstance(OpenflowProviderConfig providerConfig, DataBroker dataBroker,
-            RpcProviderRegistry rpcRegistry, NotificationService notificationService,
-            NotificationPublishService notificationPublishService,
-            EntityOwnershipService entityOwnershipService,
-            List<SwitchConnectionProvider> switchConnectionProviders);
+    OpenFlowPluginProvider newInstance(ConfigurationService configurationService,
+                                       DataBroker dataBroker,
+                                       RpcProviderRegistry rpcRegistry,
+                                       NotificationPublishService notificationPublishService,
+                                       EntityOwnershipService entityOwnershipService,
+                                       List<SwitchConnectionProvider> switchConnectionProviders,
+                                       ClusterSingletonServiceProvider singletonServiceProvider,
+                                       MastershipChangeServiceManager mastershipChangeServiceManager);
 }