X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Frouting%2Fdijkstra_implementation%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Frouting%2Fdijkstra_implementation%2Finternal%2FActivator.java;h=82f37d0235842fdf05fa735ae33cb7324da5c3c8;hb=3f3012bc570eed553b7d41f2e4ff01e997b9d94d;hp=3cd696854c3c9d89a6f6d5543b3ce276f751dfbc;hpb=53c4c25db41a16aa3d820e50657e143cbc177c8c;p=controller.git diff --git a/opendaylight/routing/dijkstra_implementation/src/main/java/org/opendaylight/controller/routing/dijkstra_implementation/internal/Activator.java b/opendaylight/routing/dijkstra_implementation/src/main/java/org/opendaylight/controller/routing/dijkstra_implementation/internal/Activator.java index 3cd696854c..82f37d0235 100644 --- a/opendaylight/routing/dijkstra_implementation/src/main/java/org/opendaylight/controller/routing/dijkstra_implementation/internal/Activator.java +++ b/opendaylight/routing/dijkstra_implementation/src/main/java/org/opendaylight/controller/routing/dijkstra_implementation/internal/Activator.java @@ -10,18 +10,20 @@ package org.opendaylight.controller.routing.dijkstra_implementation.internal; import java.util.Dictionary; +import java.util.HashSet; import java.util.Hashtable; +import java.util.Set; + import org.apache.felix.dm.Component; import org.slf4j.Logger; import org.slf4j.LoggerFactory; - import org.opendaylight.controller.sal.core.ComponentActivatorAbstractBase; import org.opendaylight.controller.sal.routing.IListenRoutingUpdates; import org.opendaylight.controller.sal.routing.IRouting; import org.opendaylight.controller.switchmanager.ISwitchManager; -import org.opendaylight.controller.sal.reader.IReadService; import org.opendaylight.controller.topologymanager.ITopologyManager; -import org.opendaylight.controller.topologymanager.ITopologyManagerAware; +import org.opendaylight.controller.topologymanager.ITopologyManagerClusterWideAware; +import org.opendaylight.controller.clustering.services.IClusterContainerServices; public class Activator extends ComponentActivatorAbstractBase { protected static final Logger logger = LoggerFactory @@ -33,6 +35,7 @@ public class Activator extends ComponentActivatorAbstractBase { * ComponentActivatorAbstractBase. * */ + @Override public void init() { } @@ -41,6 +44,7 @@ public class Activator extends ComponentActivatorAbstractBase { * cleanup done by ComponentActivatorAbstractBase * */ + @Override public void destroy() { } @@ -54,6 +58,7 @@ public class Activator extends ComponentActivatorAbstractBase { * instantiated in order to get an fully working implementation * Object */ + @Override public Object[] getImplementations() { Object[] res = { DijkstraImplementation.class }; return res; @@ -72,32 +77,39 @@ public class Activator extends ComponentActivatorAbstractBase { * also optional per-container different behavior if needed, usually * should not be the case though. */ - public void configureInstance(Component c, Object imp, String containerName) { + @Override + public void configureInstance(final Component c, final Object imp, final String containerName) { if (imp.equals(DijkstraImplementation.class)) { // export the service - Dictionary props = new Hashtable(); + final Dictionary props = new Hashtable(); props.put("topoListenerName", "routing.Dijkstra"); - c.setInterface(new String[] { ITopologyManagerAware.class.getName(), - IRouting.class.getName() }, props); + + c.setInterface(new String[] { ITopologyManagerClusterWideAware.class.getName(), IRouting.class.getName() }, + props); // Now lets add a service dependency to make sure the // provider of service exists - c.add(createContainerServiceDependency(containerName).setService( - IListenRoutingUpdates.class).setCallbacks( - "setListenRoutingUpdates", "unsetListenRoutingUpdates") + c.add(createContainerServiceDependency(containerName).setService(IListenRoutingUpdates.class) + .setCallbacks("setListenRoutingUpdates", "unsetListenRoutingUpdates") .setRequired(false)); - c.add(createContainerServiceDependency(containerName).setService( - ISwitchManager.class).setCallbacks("setSwitchManager", - "unsetSwitchManager").setRequired(true)); + c.add(createContainerServiceDependency(containerName).setService(ISwitchManager.class) + .setCallbacks("setSwitchManager", "unsetSwitchManager") + .setRequired(true)); - c.add(createContainerServiceDependency(containerName).setService( - ITopologyManager.class).setCallbacks("setTopologyManager", - "unsetTopologyManager").setRequired(true)); + c.add(createContainerServiceDependency(containerName).setService(ITopologyManager.class) + .setCallbacks("setTopologyManager", "unsetTopologyManager") + .setRequired(true)); - c.add(createContainerServiceDependency(containerName).setService( - IReadService.class).setCallbacks("setReadService", - "unsetReadService").setRequired(true)); + c.add(createContainerServiceDependency(containerName).setService(IClusterContainerServices.class) + .setCallbacks("setClusterContainerService", "unsetClusterContainerService") + .setRequired(true)); } } + + @Override + protected Object[] getGlobalImplementations() { + final Object[] res = { DijkstraImplementationCLI.class }; + return res; + } }