Fix bugs to make renderer functional tests running
[transportpce.git] / renderer / src / main / java / org / opendaylight / transportpce / renderer / provisiondevice / DeviceRendererServiceImpl.java
index 78b72a22874dcc14682ffea4a6c0f7adde8b041e..2e0e3cb1e5438d9ca447ddc1235a127f1a43ea5e 100644 (file)
@@ -210,6 +210,7 @@ public class DeviceRendererServiceImpl implements DeviceRendererService {
             LOG.error("Error while setting up service paths!", e);
         }
         forkJoinPool.shutdown();
+
         if (success.get()) {
             results.add("Roadm-connection successfully created for nodes: " + String.join(", ", nodesProvisioned));
         }
@@ -454,15 +455,17 @@ public class DeviceRendererServiceImpl implements DeviceRendererService {
             throw e;
         }
         if (services.isPresent()) {
+            LOG.info("service {} already exists", name);
             servicesBuilder = new ServicesBuilder(services.get());
+            servicesBuilder.setTopology(topo);
+            WriteTransaction writeTx = this.dataBroker.newWriteOnlyTransaction();
+            writeTx.merge(LogicalDatastoreType.OPERATIONAL, iid, servicesBuilder.build());
+            writeTx.submit().get(Timeouts.DATASTORE_WRITE, TimeUnit.MILLISECONDS);
         } else {
-            servicesBuilder = new ServicesBuilder();
-            servicesBuilder.withKey(serviceKey);
+            LOG.warn("Service {} does not exist - topology can not be updated", name);
+//            servicesBuilder = new ServicesBuilder();
+//            servicesBuilder.withKey(serviceKey);
         }
-        servicesBuilder.setTopology(topo);
-        WriteTransaction writeTx = this.dataBroker.newWriteOnlyTransaction();
-        writeTx.merge(LogicalDatastoreType.OPERATIONAL, iid, servicesBuilder.build());
-        writeTx.submit().get(Timeouts.DATASTORE_WRITE, TimeUnit.MILLISECONDS);
     }
 
     @Override