X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fsamples%2Fsimpleforwarding%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsamples%2Fsimpleforwarding%2Finternal%2FActivator.java;h=1a71511ef5bd0435fea671c08d10998dd9e18a00;hb=1597d9226a515d3896af4085b2efdfd57bc64ec9;hp=bf6c1f4213585dcee6a20bd37cdb339e5ce3ad89;hpb=29f7cfb54b580928c7feac63abce028a7014b0d5;p=controller.git diff --git a/opendaylight/samples/simpleforwarding/src/main/java/org/opendaylight/controller/samples/simpleforwarding/internal/Activator.java b/opendaylight/samples/simpleforwarding/src/main/java/org/opendaylight/controller/samples/simpleforwarding/internal/Activator.java index bf6c1f4213..1a71511ef5 100644 --- a/opendaylight/samples/simpleforwarding/src/main/java/org/opendaylight/controller/samples/simpleforwarding/internal/Activator.java +++ b/opendaylight/samples/simpleforwarding/src/main/java/org/opendaylight/controller/samples/simpleforwarding/internal/Activator.java @@ -9,6 +9,9 @@ package org.opendaylight.controller.samples.simpleforwarding.internal; +import java.util.Dictionary; +import java.util.Hashtable; + import org.apache.felix.dm.Component; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -18,8 +21,12 @@ import org.opendaylight.controller.forwardingrulesmanager.IForwardingRulesManage import org.opendaylight.controller.hosttracker.IfIptoHost; import org.opendaylight.controller.hosttracker.IfNewHostNotify; import org.opendaylight.controller.sal.core.ComponentActivatorAbstractBase; +import org.opendaylight.controller.sal.packet.IDataPacketService; +import org.opendaylight.controller.sal.packet.IListenDataPacket; import org.opendaylight.controller.sal.routing.IListenRoutingUpdates; import org.opendaylight.controller.sal.routing.IRouting; +import org.opendaylight.controller.samples.simpleforwarding.IBroadcastHandler; +import org.opendaylight.controller.samples.simpleforwarding.IBroadcastPortSelector; import org.opendaylight.controller.switchmanager.IInventoryListener; import org.opendaylight.controller.switchmanager.ISwitchManager; import org.opendaylight.controller.topologymanager.ITopologyManager; @@ -28,24 +35,6 @@ public class Activator extends ComponentActivatorAbstractBase { protected static final Logger logger = LoggerFactory .getLogger(Activator.class); - /** - * Function called when the activator starts just after some - * initializations are done by the - * ComponentActivatorAbstractBase. - * - */ - public void init() { - - } - - /** - * Function called when the activator stops just before the - * cleanup done by ComponentActivatorAbstractBase - * - */ - public void destroy() { - - } /** * Function that is used to communicate to dependency manager the @@ -57,7 +46,8 @@ public class Activator extends ComponentActivatorAbstractBase { * Object */ public Object[] getImplementations() { - Object[] res = { SimpleForwardingImpl.class }; + Object[] res = { SimpleForwardingImpl.class, + SimpleBroadcastHandlerImpl.class }; return res; } @@ -106,6 +96,29 @@ public class Activator extends ComponentActivatorAbstractBase { c.add(createContainerServiceDependency(containerName).setService( IRouting.class).setCallbacks("setRouting", "unsetRouting") .setRequired(false)); + }else if (imp.equals(SimpleBroadcastHandlerImpl.class)) { + Dictionary props = new Hashtable(); + props.put("salListenerName", "simplebroadcasthandler"); + + // export the service + c.setInterface(new String[] { IBroadcastHandler.class.getName(), + IListenDataPacket.class.getName() }, props); + + c.add(createContainerServiceDependency(containerName).setService( + IDataPacketService.class).setCallbacks("setDataPacketService", + "unsetDataPacketService").setRequired(false)); + + c.add(createContainerServiceDependency(containerName).setService( + ITopologyManager.class).setCallbacks("setTopologyManager", + "unsetTopologyManager").setRequired(true)); + + c.add(createContainerServiceDependency(containerName).setService( + IBroadcastPortSelector.class).setCallbacks("setBroadcastPortSelector", + "unsetBroadcastPortSelector").setRequired(false)); + + c.add(createContainerServiceDependency(containerName).setService( + ISwitchManager.class).setCallbacks("setSwitchManager", + "unsetSwitchManager").setRequired(false)); } } }