- // 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(false));
+
+ //consumes plugins' reader updates
+ c.add(createContainerServiceDependency(containerName)
+ .setService(IReadServiceListener.class)
+ .setCallbacks("setReaderListener", "unsetReaderListener")
+ .setRequired(false));