X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-binding-broker%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fbinding%2Fimpl%2FRootBindingAwareBroker.java;fp=opendaylight%2Fmd-sal%2Fsal-binding-broker%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fbinding%2Fimpl%2FRootBindingAwareBroker.java;h=640bc658f680105bf23a97059ce70f00114128ed;hb=bd8bff811e5f2af4622e1543106c240db8e4b2f2;hp=3fccb1d326c57f4afe91e5259e5c5062c77e85c1;hpb=421b5a27bd36cdaa04159d5f7ceb9f8e3affb2fa;p=controller.git diff --git a/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/sal/binding/impl/RootBindingAwareBroker.java b/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/sal/binding/impl/RootBindingAwareBroker.java index 3fccb1d326..640bc658f6 100644 --- a/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/sal/binding/impl/RootBindingAwareBroker.java +++ b/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/sal/binding/impl/RootBindingAwareBroker.java @@ -12,6 +12,7 @@ import static com.google.common.base.Preconditions.checkState; import com.google.common.collect.ImmutableClassToInstanceMap; import org.opendaylight.controller.md.sal.binding.api.DataBroker; import org.opendaylight.controller.md.sal.binding.api.MountPointService; +import org.opendaylight.controller.md.sal.binding.api.NotificationPublishService; import org.opendaylight.controller.md.sal.binding.util.AbstractBindingSalProviderInstance; import org.opendaylight.controller.md.sal.binding.util.BindingContextUtils; import org.opendaylight.controller.md.sal.common.api.routing.RouteChangeListener; @@ -50,6 +51,8 @@ public class RootBindingAwareBroker implements Mutable, Identifiable, Bi private NotificationProviderService notificationBroker; + private NotificationPublishService notificationPublishService; + @SuppressWarnings("deprecation") private DataProviderService legacyDataBroker; @@ -88,6 +91,9 @@ public class RootBindingAwareBroker implements Mutable, Identifiable, Bi return this.notificationBroker; } + public NotificationPublishService getNotificationPublishService() { + return this.notificationPublishService; + } public RpcProviderRegistry getRpcProviderRegistry() { return this.rpcBroker; } @@ -120,6 +126,10 @@ public class RootBindingAwareBroker implements Mutable, Identifiable, Bi this.notificationBroker = notificationBroker; } + public void setNotificationPublishService(final NotificationPublishService notificationPublishService) { + this.notificationPublishService = notificationPublishService; + } + public void setLegacyDataBroker(final DataProviderService dataBroker) { this.legacyDataBroker = dataBroker; } @@ -141,11 +151,18 @@ public class RootBindingAwareBroker implements Mutable, Identifiable, Bi } consBuilder.put(MountPointService.class, mountService); consBuilder.put(MountService.class, legacyMount).build(); + supportedConsumerServices = consBuilder.build(); - supportedProviderServices = ImmutableClassToInstanceMap. builder() - .putAll(supportedConsumerServices).put(NotificationProviderService.class, getRoot()) + final ImmutableClassToInstanceMap.Builder provBuilder = ImmutableClassToInstanceMap + .builder(); + provBuilder.putAll(supportedConsumerServices).put(NotificationProviderService.class, getRoot()) .put(DataProviderService.class, getRoot()).put(RpcProviderRegistry.class, getRoot()) - .put(MountProviderService.class, legacyMount).build(); + .put(MountProviderService.class, legacyMount); + if (notificationPublishService != null) { + provBuilder.put(NotificationPublishService.class, notificationPublishService); + } + supportedConsumerServices = consBuilder.build(); + supportedProviderServices = provBuilder.build(); } @Override