X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fsal%2Fimplementation%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fimplementation%2Finternal%2FActivator.java;h=85d239f4b9e1c52a265e2cb685fcb64925dac3d2;hp=b56a96e50cb8acc844f3419276bc4140a1ca34a0;hb=eed57e2b0afd50823bc882123b6cbac04bcc48d9;hpb=7c595c8a6f3c4dfaa11cb616b937faf414e74852 diff --git a/opendaylight/sal/implementation/src/main/java/org/opendaylight/controller/sal/implementation/internal/Activator.java b/opendaylight/sal/implementation/src/main/java/org/opendaylight/controller/sal/implementation/internal/Activator.java index b56a96e50c..85d239f4b9 100644 --- a/opendaylight/sal/implementation/src/main/java/org/opendaylight/controller/sal/implementation/internal/Activator.java +++ b/opendaylight/sal/implementation/src/main/java/org/opendaylight/controller/sal/implementation/internal/Activator.java @@ -23,7 +23,9 @@ import org.opendaylight.controller.sal.packet.IListenDataPacket; import org.opendaylight.controller.sal.packet.IPluginInDataPacketService; import org.opendaylight.controller.sal.packet.IPluginOutDataPacketService; import org.opendaylight.controller.sal.reader.IPluginInReadService; +import org.opendaylight.controller.sal.reader.IPluginOutReadService; import org.opendaylight.controller.sal.reader.IReadService; +import org.opendaylight.controller.sal.reader.IReadServiceListener; import org.opendaylight.controller.sal.topology.IListenTopoUpdates; import org.opendaylight.controller.sal.topology.IPluginInTopologyService; import org.opendaylight.controller.sal.topology.IPluginOutTopologyService; @@ -145,14 +147,22 @@ public class Activator extends ComponentActivatorAbstractBase { } if (imp.equals(ReadService.class)) { - // It is the provider of IReadService - c.setInterface(IReadService.class.getName(), null); + // export services + c.setInterface(new String[] { + IReadService.class.getName(),IPluginOutReadService.class.getName()}, null); // It is also the consumer of IPluginInReadService c.add(createContainerServiceDependency(containerName) .setService(IPluginInReadService.class) .setCallbacks("setService", "unsetService") - .setRequired(true)); + .setRequired(false)); + + //consumes plugins' reader updates + c.add(createContainerServiceDependency(containerName) + .setService(IReadServiceListener.class) + .setCallbacks("setReaderListener", "unsetReaderListener") + .setRequired(false)); + } /************************/