Migrate pcep to MD-SAL APIs
[bgpcep.git] / pcep / tunnel / tunnel-provider / src / main / java / org / opendaylight / bgpcep / pcep / tunnel / provider / PCEPTunnelTopologyProvider.java
index 72f81de7682324a9bbea944414c0285a490a1845..a8fe67b95f76112e346af339a3b33a105a370d0c 100644 (file)
@@ -8,13 +8,14 @@
 package org.opendaylight.bgpcep.pcep.tunnel.provider;
 
 import java.util.ArrayList;
+import java.util.concurrent.ExecutionException;
 import javax.annotation.concurrent.GuardedBy;
 import org.opendaylight.bgpcep.topology.DefaultTopologyReference;
 import org.opendaylight.bgpcep.topology.TopologyReference;
-import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.md.sal.binding.api.DataTreeIdentifier;
-import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
-import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
+import org.opendaylight.mdsal.binding.api.DataBroker;
+import org.opendaylight.mdsal.binding.api.DataTreeIdentifier;
+import org.opendaylight.mdsal.binding.api.WriteTransaction;
+import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.topology.tunnel.pcep.rev130820.TopologyTypes1;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.topology.tunnel.pcep.rev130820.TopologyTypes1Builder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.topology.tunnel.pcep.rev130820.topology.tunnel.pcep.type.TopologyTunnelPcepBuilder;
@@ -25,9 +26,13 @@ import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.
 import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.TopologyTypesBuilder;
 import org.opendaylight.yangtools.concepts.ListenerRegistration;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public final class PCEPTunnelTopologyProvider extends DefaultTopologyReference implements AutoCloseable {
 
+    private static final Logger LOG = LoggerFactory.getLogger(PCEPTunnelTopologyProvider.class);
+
     private final NodeChangedListener ncl;
     private final InstanceIdentifier<Node> src;
     private final DefaultTopologyReference ref;
@@ -59,9 +64,13 @@ public final class PCEPTunnelTopologyProvider extends DefaultTopologyReference i
                                         .setTopologyTunnelPcep(
                                                 new TopologyTunnelPcepBuilder().build()).build()).build())
                         .setNode(new ArrayList<>()).build(), true);
-        tx.submit();
+        try {
+            tx.commit().get();
+        } catch (final InterruptedException | ExecutionException e) {
+            LOG.error("Failed to create Tunnel Topology root", e);
+        }
         this.reg = this.ncl.getDataProvider()
-                .registerDataTreeChangeListener(new DataTreeIdentifier<>(LogicalDatastoreType.OPERATIONAL, this.src),
+                .registerDataTreeChangeListener(DataTreeIdentifier.create(LogicalDatastoreType.OPERATIONAL, this.src),
                         this.ncl);
     }