Update openroadm-topology layer based on NETCONF event
[transportpce.git] / networkmodel / src / main / java / org / opendaylight / transportpce / networkmodel / listeners / DeviceListener.java
index 1859b2991a27ca94439d6ef6312577c65f9dbb1b..d7eaeeb8321d25304088e9a706d746a888e9e75f 100644 (file)
@@ -15,6 +15,7 @@ import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
 import org.opendaylight.transportpce.common.device.DeviceTransactionManager;
+import org.opendaylight.transportpce.networkmodel.service.NetworkModelService;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.ChangeNotification;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.OrgOpenroadmDeviceListener;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.OtdrScanResult;
@@ -36,10 +37,13 @@ public class DeviceListener implements OrgOpenroadmDeviceListener {
     private static final TimeUnit MAX_DURATION_TO_SUBMIT_TIMEUNIT = TimeUnit.MILLISECONDS;
     private final DeviceTransactionManager deviceTransactionManager;
     private final String nodeId;
+    private final NetworkModelService networkModelService;
 
-    public DeviceListener(DeviceTransactionManager deviceTransactionManager, String nodeId) {
+    public DeviceListener(DeviceTransactionManager deviceTransactionManager, String nodeId,
+                          NetworkModelService networkModelService) {
         this.deviceTransactionManager = deviceTransactionManager;
         this.nodeId = nodeId;
+        this.networkModelService = networkModelService;
     }
 
     /**
@@ -121,8 +125,7 @@ public class DeviceListener implements OrgOpenroadmDeviceListener {
                         LOG.info("Component {} configuration: {}", getCircuitPacks().getCircuitPackName(),
                                 getCircuitPacks());
                         // 3. Update openroadm-topology
-                        // TODO
-                        // networkModelService.updateOpenRoadmNode(nodeId, getCircuitPacks());
+                        networkModelService.updateOpenRoadmNetworkTopology(nodeId, getCircuitPacks());
                     }
                 };
                 Thread thread = new Thread(handlenetconfEvent);