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%2FBindingDOMDataTreeChangeListenerAdapter.java;h=1372e1cf13bf312a7087ad49d47f56d25d32753f;hb=refs%2Fchanges%2F44%2F93344%2F5;hp=6486232e1024c86f47ffa6e62c9c3ac70a52f81c;hpb=6a192f0eeedc302ae0b506d04f9d79b34406aef5;p=mdsal.git diff --git a/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMDataTreeChangeListenerAdapter.java b/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMDataTreeChangeListenerAdapter.java index 6486232e10..1372e1cf13 100644 --- a/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMDataTreeChangeListenerAdapter.java +++ b/binding/mdsal-binding-dom-adapter/src/main/java/org/opendaylight/mdsal/binding/dom/adapter/BindingDOMDataTreeChangeListenerAdapter.java @@ -7,38 +7,39 @@ */ package org.opendaylight.mdsal.binding.dom.adapter; -import org.opendaylight.mdsal.common.api.LogicalDatastoreType; +import static java.util.Objects.requireNonNull; -import org.opendaylight.mdsal.dom.api.DOMDataTreeChangeListener; -import org.opendaylight.mdsal.binding.api.DataTreeChangeListener; -import org.opendaylight.mdsal.binding.api.DataTreeModification; -import com.google.common.base.Preconditions; import java.util.Collection; +import org.opendaylight.mdsal.binding.api.DataTreeChangeListener; +import org.opendaylight.mdsal.common.api.LogicalDatastoreType; +import org.opendaylight.mdsal.dom.api.DOMDataTreeChangeListener; import org.opendaylight.yangtools.yang.binding.DataObject; import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeCandidate; /** - * Adapter wrapping Binding {@link DataTreeChangeListener} and exposing - * it as {@link DOMDataTreeChangeListener} and translated DOM events - * to their Binding equivalent. - * + * Adapter wrapping Binding {@link DataTreeChangeListener} and exposing it as {@link DOMDataTreeChangeListener} + * and translated DOM events to their Binding equivalent. */ -final class BindingDOMDataTreeChangeListenerAdapter implements DOMDataTreeChangeListener { - - private final BindingToNormalizedNodeCodec codec; +class BindingDOMDataTreeChangeListenerAdapter implements DOMDataTreeChangeListener { + private final AdapterContext adapterContext; private final DataTreeChangeListener listener; private final LogicalDatastoreType store; - BindingDOMDataTreeChangeListenerAdapter(final BindingToNormalizedNodeCodec codec, final DataTreeChangeListener listener, - final LogicalDatastoreType store) { - this.codec = Preconditions.checkNotNull(codec); - this.listener = Preconditions.checkNotNull(listener); - this.store = Preconditions.checkNotNull(store); + BindingDOMDataTreeChangeListenerAdapter(final AdapterContext adapterContext, + final DataTreeChangeListener listener, final LogicalDatastoreType store) { + this.adapterContext = requireNonNull(adapterContext); + this.listener = requireNonNull(listener); + this.store = requireNonNull(store); } @Override public void onDataTreeChanged(final Collection domChanges) { - final Collection> bindingChanges = LazyDataTreeModification.from(codec, domChanges, store); - listener.onDataTreeChanged(bindingChanges); + listener.onDataTreeChanged(LazyDataTreeModification.from(adapterContext.currentSerializer(), domChanges, + store)); + } + + @Override + public void onInitialData() { + listener.onInitialData(); } }