Adopt odlparent-10.0.0/yangtools-8.0.0-SNAPSHOT
[mdsal.git] / binding / mdsal-binding-dom-adapter / src / main / java / org / opendaylight / mdsal / binding / dom / adapter / BindingDOMDataTreeChangeListenerAdapter.java
index c2b11900df050cedaf2f69b5e9db2c73f943513d..61240d57f43692fe379a433762e5227a0d134e81 100644 (file)
@@ -7,38 +7,39 @@
  */
 package org.opendaylight.mdsal.binding.dom.adapter;
 
-import com.google.common.base.Preconditions;
-import java.util.Collection;
+import static java.util.Objects.requireNonNull;
+
+import java.util.List;
 import org.opendaylight.mdsal.binding.api.DataTreeChangeListener;
-import org.opendaylight.mdsal.binding.api.DataTreeModification;
 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;
+import org.opendaylight.yangtools.yang.data.tree.api.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.
  */
 class BindingDOMDataTreeChangeListenerAdapter<T extends DataObject> implements DOMDataTreeChangeListener {
-
-    private final BindingToNormalizedNodeCodec codec;
+    private final AdapterContext adapterContext;
     private final DataTreeChangeListener<T> listener;
     private final LogicalDatastoreType store;
 
-    BindingDOMDataTreeChangeListenerAdapter(final BindingToNormalizedNodeCodec codec,
+    BindingDOMDataTreeChangeListenerAdapter(final AdapterContext adapterContext,
             final DataTreeChangeListener<T> listener, final LogicalDatastoreType store) {
-        this.codec = Preconditions.checkNotNull(codec);
-        this.listener = Preconditions.checkNotNull(listener);
-        this.store = Preconditions.checkNotNull(store);
+        this.adapterContext = requireNonNull(adapterContext);
+        this.listener = requireNonNull(listener);
+        this.store = requireNonNull(store);
+    }
+
+    @Override
+    public void onDataTreeChanged(final List<DataTreeCandidate> domChanges) {
+        listener.onDataTreeChanged(LazyDataTreeModification.from(adapterContext.currentSerializer(), domChanges,
+            store));
     }
 
     @Override
-    public void onDataTreeChanged(final Collection<DataTreeCandidate> domChanges) {
-        final Collection<DataTreeModification<T>> bindingChanges
-                = LazyDataTreeModification.from(codec, domChanges, store);
-        listener.onDataTreeChanged(bindingChanges);
+    public void onInitialData() {
+        listener.onInitialData();
     }
 }