Bump upstreams
[netconf.git] / plugins / netconf-server-mdsal / src / main / java / org / opendaylight / netconf / server / mdsal / notifications / YangLibraryNotificationProducer.java
index 35b1e5fc33c10bb7fbdf87245f0e7da87bf2f6e3..198acf82e7ff142eb2704221569fa364f7cd282a 100644 (file)
@@ -7,17 +7,15 @@
  */
 package org.opendaylight.netconf.server.mdsal.notifications;
 
-import java.util.Collection;
 import org.opendaylight.mdsal.binding.api.DataBroker;
-import org.opendaylight.mdsal.binding.api.DataTreeChangeListener;
+import org.opendaylight.mdsal.binding.api.DataListener;
 import org.opendaylight.mdsal.binding.api.DataTreeIdentifier;
-import org.opendaylight.mdsal.binding.api.DataTreeModification;
 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
 import org.opendaylight.netconf.server.api.notifications.NetconfNotificationCollector;
 import org.opendaylight.netconf.server.api.notifications.YangLibraryPublisherRegistration;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.library.rev190104.ModulesState;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.library.rev190104.YangLibraryChangeBuilder;
-import org.opendaylight.yangtools.concepts.ListenerRegistration;
+import org.opendaylight.yangtools.concepts.Registration;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 import org.osgi.service.component.annotations.Activate;
 import org.osgi.service.component.annotations.Component;
@@ -33,8 +31,8 @@ import org.osgi.service.component.annotations.Reference;
  */
 @Component(service = { })
 @Deprecated(forRemoval = true)
-public final class YangLibraryNotificationProducer implements DataTreeChangeListener<ModulesState>, AutoCloseable {
-    private final ListenerRegistration<?> yangLibraryChangeListenerRegistration;
+public final class YangLibraryNotificationProducer implements DataListener<ModulesState>, AutoCloseable {
+    private final Registration yangLibraryChangeListenerRegistration;
     private final YangLibraryPublisherRegistration yangLibraryPublisherRegistration;
 
     @Activate
@@ -42,8 +40,8 @@ public final class YangLibraryNotificationProducer implements DataTreeChangeList
             @Reference(target = "(type=netconf-notification-manager)") final NetconfNotificationCollector notifManager,
             @Reference final DataBroker dataBroker) {
         yangLibraryPublisherRegistration = notifManager.registerYangLibraryPublisher();
-        yangLibraryChangeListenerRegistration = dataBroker.registerDataTreeChangeListener(
-            DataTreeIdentifier.create(LogicalDatastoreType.OPERATIONAL, InstanceIdentifier.create(ModulesState.class)),
+        yangLibraryChangeListenerRegistration = dataBroker.registerDataListener(
+            DataTreeIdentifier.of(LogicalDatastoreType.OPERATIONAL, InstanceIdentifier.create(ModulesState.class)),
             this);
     }
 
@@ -59,14 +57,11 @@ public final class YangLibraryNotificationProducer implements DataTreeChangeList
     }
 
     @Override
-    public void onDataTreeChanged(final Collection<DataTreeModification<ModulesState>> changes) {
-        for (DataTreeModification<ModulesState> change : changes) {
-            final ModulesState dataAfter = change.getRootNode().getDataAfter();
-            if (dataAfter != null) {
-                yangLibraryPublisherRegistration.onYangLibraryChange(new YangLibraryChangeBuilder()
-                    .setModuleSetId(dataAfter.getModuleSetId())
-                    .build());
-            }
+    public void dataChangedTo(final ModulesState data) {
+        if (data != null) {
+            yangLibraryPublisherRegistration.onYangLibraryChange(new YangLibraryChangeBuilder()
+                .setModuleSetId(data.getModuleSetId())
+                .build());
         }
     }
 }