From 57bd902b70ca9de08a1339a75f697835fdb0467e Mon Sep 17 00:00:00 2001
From: Johannes Mey <johannes.mey@tu-dresden.de>
Date: Fri, 29 Jun 2018 00:28:45 +0200
Subject: [PATCH] improve RepairConnectedSegments

---
 .../JastaddTransformationRepairConnectedSegments.java | 11 +++--------
 1 file changed, 3 insertions(+), 8 deletions(-)

diff --git a/trainbenchmark-tool-jastadd-specialized-base/src/main/java/de/tudresden/inf/st/train/jastadd/transformations/repair/JastaddTransformationRepairConnectedSegments.java b/trainbenchmark-tool-jastadd-specialized-base/src/main/java/de/tudresden/inf/st/train/jastadd/transformations/repair/JastaddTransformationRepairConnectedSegments.java
index 14be6d3b9..203802332 100644
--- a/trainbenchmark-tool-jastadd-specialized-base/src/main/java/de/tudresden/inf/st/train/jastadd/transformations/repair/JastaddTransformationRepairConnectedSegments.java
+++ b/trainbenchmark-tool-jastadd-specialized-base/src/main/java/de/tudresden/inf/st/train/jastadd/transformations/repair/JastaddTransformationRepairConnectedSegments.java
@@ -24,16 +24,11 @@ public class JastaddTransformationRepairConnectedSegments<TJastaddDriver extends
       java.util.List<Sensor> sensorsToRemoveSegmentFrom = new java.util.ArrayList<>();
 
       // delete all references to segment2 (monitoring sensors and other segments connecting to it)
+      segment2.monitoredBy().clear();
+
       for (Region region : driver.getModel().getRegionList()) {
-        for (Sensor sensor : region.getSensorList()) {
-          if (sensor.getMonitoredElementList().contains(segment2)) {
-            sensor.removeMonitoredElement(segment2);
-          }
-        }
         for (TrackElement element : region.getTrackElementList()) {
-          if (element.getConnectsToList().contains(segment2)) {
-            element.removeConnectsTo(segment2);
-          }
+          element.removeConnectsTo(segment2);
         }
       }
 
-- 
GitLab