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%2Fmd%2Fsal%2Fbinding%2Fimpl%2FBindingDOMNotificationPublishServiceAdapter.java;h=ae3b5d504a5dcc1b2bcb8a8e123545c45ba38a05;hb=03c13bd8a8bb89a729d739eb2fcd501a4dfa5439;hp=6c54553e6ff13b28339f0ec58d2ceb1ea1d838a5;hpb=2727bea09c83646b6cbd2ef9672d0b7f6cf3b22f;p=controller.git diff --git a/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/md/sal/binding/impl/BindingDOMNotificationPublishServiceAdapter.java b/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/md/sal/binding/impl/BindingDOMNotificationPublishServiceAdapter.java index 6c54553e6f..ae3b5d504a 100644 --- a/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/md/sal/binding/impl/BindingDOMNotificationPublishServiceAdapter.java +++ b/opendaylight/md-sal/sal-binding-broker/src/main/java/org/opendaylight/controller/md/sal/binding/impl/BindingDOMNotificationPublishServiceAdapter.java @@ -17,44 +17,50 @@ import org.opendaylight.controller.md.sal.binding.impl.BindingDOMAdapterBuilder. import org.opendaylight.controller.md.sal.dom.api.DOMNotification; import org.opendaylight.controller.md.sal.dom.api.DOMNotificationPublishService; import org.opendaylight.controller.md.sal.dom.api.DOMService; -import org.opendaylight.yangtools.binding.data.codec.api.BindingNormalizedNodeSerializer; import org.opendaylight.yangtools.yang.binding.Notification; public class BindingDOMNotificationPublishServiceAdapter implements NotificationPublishService, AutoCloseable { - static final Factory BUILDER_FACTORY = new BindingDOMAdapterBuilder.Factory() { + static final Factory BUILDER_FACTORY = Builder::new; - @Override - public BindingDOMAdapterBuilder newBuilder() { - return new Builder(); - } - - }; - - private final BindingNormalizedNodeSerializer codecRegistry; + private final BindingToNormalizedNodeCodec codecRegistry; private final DOMNotificationPublishService domPublishService; - public BindingDOMNotificationPublishServiceAdapter(final BindingNormalizedNodeSerializer codecRegistry, final DOMNotificationPublishService domPublishService) { - this.codecRegistry = codecRegistry; + public BindingDOMNotificationPublishServiceAdapter(final BindingToNormalizedNodeCodec codec, + final DOMNotificationPublishService domPublishService) { + this.codecRegistry = codec; this.domPublishService = domPublishService; } + public BindingToNormalizedNodeCodec getCodecRegistry() { + return codecRegistry; + } + + public DOMNotificationPublishService getDomPublishService() { + return domPublishService; + } + @Override public void putNotification(final Notification notification) throws InterruptedException { domPublishService.putNotification(toDomNotification(notification)); } @Override - public boolean offerNotification(final Notification notification) { - final ListenableFuture listenableFuture = domPublishService.offerNotification(toDomNotification(notification)); - return !DOMNotificationPublishService.REJECTED.equals(listenableFuture); + public ListenableFuture offerNotification(final Notification notification) { + ListenableFuture offerResult = domPublishService.offerNotification(toDomNotification(notification)); + return DOMNotificationPublishService.REJECTED.equals(offerResult) + ? NotificationPublishService.REJECTED + : offerResult; } @Override - public boolean offerNotification(final Notification notification, final int timeout, final TimeUnit unit) throws InterruptedException { - final ListenableFuture listenableFuture = - domPublishService.offerNotification(toDomNotification(notification), timeout, unit); - return !DOMNotificationPublishService.REJECTED.equals(listenableFuture); + public ListenableFuture offerNotification(final Notification notification, final int timeout, + final TimeUnit unit) throws InterruptedException { + ListenableFuture offerResult = domPublishService.offerNotification(toDomNotification(notification), + timeout, unit); + return DOMNotificationPublishService.REJECTED.equals(offerResult) + ? NotificationPublishService.REJECTED + : offerResult; } private DOMNotification toDomNotification(final Notification notification) { @@ -76,10 +82,8 @@ public class BindingDOMNotificationPublishServiceAdapter implements Notification @Override protected NotificationPublishService createInstance(final BindingToNormalizedNodeCodec codec, final ClassToInstanceMap delegates) { - final BindingNormalizedNodeSerializer codecReg = codec.getCodecRegistry(); final DOMNotificationPublishService domPublish = delegates.getInstance(DOMNotificationPublishService.class); - return new BindingDOMNotificationPublishServiceAdapter(codecReg, domPublish); + return new BindingDOMNotificationPublishServiceAdapter(codec, domPublish); } - } }