X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=binding%2Fmdsal-binding-dom-adapter%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fmdsal%2Fbinding%2Fdom%2Fadapter%2FBindingDOMNotificationPublishServiceAdapter.java;h=9354986195183085f31a7bd3688e162fd4bd0864;hb=refs%2Fchanges%2F35%2F100435%2F10;hp=88c662866c7922d5c6abcd143207427f8f4a1ee2;hpb=c1e637cf8254e8c71f5849f531e000b1e4cd4b29;p=mdsal.git diff --git a/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMNotificationPublishServiceAdapter.java b/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMNotificationPublishServiceAdapter.java index 88c662866c..9354986195 100644 --- a/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMNotificationPublishServiceAdapter.java +++ b/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMNotificationPublishServiceAdapter.java @@ -11,7 +11,6 @@ import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.ClassToInstanceMap; import com.google.common.collect.ImmutableSet; import com.google.common.util.concurrent.ListenableFuture; -import java.time.Instant; import java.util.Set; import java.util.concurrent.TimeUnit; import org.eclipse.jdt.annotation.NonNull; @@ -20,10 +19,10 @@ import org.opendaylight.mdsal.binding.dom.adapter.BindingDOMAdapterBuilder.Facto import org.opendaylight.mdsal.dom.api.DOMNotification; import org.opendaylight.mdsal.dom.api.DOMNotificationPublishService; import org.opendaylight.mdsal.dom.api.DOMService; -import org.opendaylight.yangtools.yang.binding.EventInstantAware; import org.opendaylight.yangtools.yang.binding.Notification; @VisibleForTesting +// FIXME: 10.0.0: make this class final public class BindingDOMNotificationPublishServiceAdapter extends AbstractBindingAdapter implements NotificationPublishService { @@ -34,6 +33,7 @@ public class BindingDOMNotificationPublishServiceAdapter extends AbstractBinding super(adapterContext, domPublishService); } + @Deprecated(forRemoval = true, since = "9.0.2") public DOMNotificationPublishService getDomPublishService() { return getDelegate(); } @@ -45,28 +45,26 @@ public class BindingDOMNotificationPublishServiceAdapter extends AbstractBinding @Override public ListenableFuture offerNotification(final Notification notification) { - ListenableFuture offerResult = getDelegate().offerNotification(toDomNotification(notification)); - return DOMNotificationPublishService.REJECTED.equals(offerResult) - ? NotificationPublishService.REJECTED - : offerResult; + return toBindingResult(getDelegate().offerNotification(toDomNotification(notification))); } @Override public ListenableFuture offerNotification(final Notification notification, final int timeout, final TimeUnit unit) throws InterruptedException { - ListenableFuture offerResult = getDelegate().offerNotification(toDomNotification(notification), timeout, - unit); - return DOMNotificationPublishService.REJECTED.equals(offerResult) - ? NotificationPublishService.REJECTED - : offerResult; + return toBindingResult(getDelegate().offerNotification(toDomNotification(notification), timeout, unit)); } private @NonNull DOMNotification toDomNotification(final Notification notification) { - final Instant instant = notification instanceof EventInstantAware - ? ((EventInstantAware) notification).eventInstant() : Instant.now(); - return LazySerializedDOMNotification.create(currentSerializer(), notification, instant); + return new LazySerializedNotification(currentSerializer(), notification); } + private static @NonNull ListenableFuture toBindingResult( + final @NonNull ListenableFuture domResult) { + return DOMNotificationPublishService.REJECTED.equals(domResult) ? NotificationPublishService.REJECTED + : domResult; + } + + // FIXME: 10.0.0: hide this class and make it final protected static class Builder extends BindingDOMAdapterBuilder { Builder(final AdapterContext adapterContext) { super(adapterContext);