From da5c50bfb1b13286c1797b46682daedcd15aad97 Mon Sep 17 00:00:00 2001 From: Johannes Mey <johannes.mey@tu-dresden.de> Date: Thu, 28 Jun 2018 09:19:25 +0200 Subject: [PATCH] fix InjectRouteSensor and some bidirectional wrappers. --- .../JastaddTransformationInjectRouteSensor.java | 10 +--------- .../src/main/jastadd/intrinsics/bidirectional.jadd | 12 ++++++------ .../src/main/jastadd/intrinsics/bidirectional.jadd | 12 ++++++------ 3 files changed, 13 insertions(+), 21 deletions(-) diff --git a/trainbenchmark-tool-jastadd-specialized-base/src/main/java/de/tudresden/inf/st/train/jastadd/transformations/inject/JastaddTransformationInjectRouteSensor.java b/trainbenchmark-tool-jastadd-specialized-base/src/main/java/de/tudresden/inf/st/train/jastadd/transformations/inject/JastaddTransformationInjectRouteSensor.java index 3edb0670c..0e55df9bf 100644 --- a/trainbenchmark-tool-jastadd-specialized-base/src/main/java/de/tudresden/inf/st/train/jastadd/transformations/inject/JastaddTransformationInjectRouteSensor.java +++ b/trainbenchmark-tool-jastadd-specialized-base/src/main/java/de/tudresden/inf/st/train/jastadd/transformations/inject/JastaddTransformationInjectRouteSensor.java @@ -23,15 +23,7 @@ public class JastaddTransformationInjectRouteSensor<TJastaddDriver extends Jasta java.util.List<Sensor> refsToBeRemoved = new ArrayList<>(); for (final JastaddRouteSensorInjectMatch match : matches) { - for (Sensor sensor : match.getRoute().getRequiredSensors()) { - if (sensor == match.getSensor()) { - refsToBeRemoved.add(sensor); - } - } - } - - for(Sensor sensor : refsToBeRemoved) { - sensor.removeSelf(); + match.getRoute().removeRequiredSensor(match.getSensor()); } driver.flushCache(); diff --git a/trainbenchmark-tool-jastadd-specialized-incremental/src/main/jastadd/intrinsics/bidirectional.jadd b/trainbenchmark-tool-jastadd-specialized-incremental/src/main/jastadd/intrinsics/bidirectional.jadd index 06cef5aa1..56a888a9f 100644 --- a/trainbenchmark-tool-jastadd-specialized-incremental/src/main/jastadd/intrinsics/bidirectional.jadd +++ b/trainbenchmark-tool-jastadd-specialized-incremental/src/main/jastadd/intrinsics/bidirectional.jadd @@ -162,7 +162,7 @@ aspect SwitchPositionsTargetSwitch { s.getManagedPositions().add(this); } } - public void Switch.addToPositions(SwitchPosition s) { + public void Switch.addPosition(SwitchPosition s) { Switch old_Target = s.getManagedTarget(); if (old_Target != null) { old_Target.getManagedPositions().remove(s); @@ -170,7 +170,7 @@ aspect SwitchPositionsTargetSwitch { this.getManagedPositions().add(s); s.setManagedTarget(this); } - public void Switch.removeFromPositions(SwitchPosition s) { + public void Switch.removePosition(SwitchPosition s) { this.getManagedPositions().remove(s); s.setManagedTarget(null); } @@ -203,11 +203,11 @@ aspect RouteRequireSensor { return ((RefList)this.getManagedRequiredSensors()).contains(s); } - public void Sensor.addToRequiringRoutes(Route r) { + public void Sensor.addRequiringRoute(Route r) { this.getManagedRequiringRoutes().add(r); r.getManagedRequiredSensors().add(this); } - public boolean Sensor.removeFromRequiringRoutes(Route r) { + public boolean Sensor.removeRequiringRoute(Route r) { boolean a = this.getManagedRequiringRoutes().remove(r); boolean b = r.getManagedRequiredSensors().remove(this); if (a != b) { @@ -215,11 +215,11 @@ aspect RouteRequireSensor { } return a || b; } - public void Route.addToRequiredSensors(Sensor s) { + public void Route.addRequiredSensor(Sensor s) { this.getManagedRequiredSensors().add(s); s.getManagedRequiringRoutes().add(this); } - public boolean Route.removeFromRequiredSensors(Sensor s) { + public boolean Route.removeRequiredSensor(Sensor s) { boolean a = this.getManagedRequiredSensors().remove(s); boolean b = s.getManagedRequiringRoutes().remove(this); if (a != b) { diff --git a/trainbenchmark-tool-jastadd-specialized/src/main/jastadd/intrinsics/bidirectional.jadd b/trainbenchmark-tool-jastadd-specialized/src/main/jastadd/intrinsics/bidirectional.jadd index c922dc056..33f1a65ce 100644 --- a/trainbenchmark-tool-jastadd-specialized/src/main/jastadd/intrinsics/bidirectional.jadd +++ b/trainbenchmark-tool-jastadd-specialized/src/main/jastadd/intrinsics/bidirectional.jadd @@ -154,7 +154,7 @@ aspect SwitchPositionsTargetSwitch { s.getManagedPositions().add(this); } } - public void Switch.addToPositions(SwitchPosition s) { + public void Switch.addPosition(SwitchPosition s) { Switch old_Target = s.getManagedTarget(); if (old_Target != null) { old_Target.getManagedPositions().remove(s); @@ -162,7 +162,7 @@ aspect SwitchPositionsTargetSwitch { this.getManagedPositions().add(s); s.setManagedTarget(this); } - public void Switch.removeFromPositions(SwitchPosition s) { + public void Switch.removePosition(SwitchPosition s) { this.getManagedPositions().remove(s); s.setManagedTarget(null); } @@ -195,11 +195,11 @@ aspect RouteRequireSensor { return ((RefList)this.getManagedRequiredSensors()).contains(s); } - public void Sensor.addToRequiringRoutes(Route r) { + public void Sensor.addRequiringRoute(Route r) { this.getManagedRequiringRoutes().add(r); r.getManagedRequiredSensors().add(this); } - public boolean Sensor.removeFromRequiringRoutes(Route r) { + public boolean Sensor.removeRequiringRoute(Route r) { boolean a = this.getManagedRequiringRoutes().remove(r); boolean b = r.getManagedRequiredSensors().remove(this); if (a != b) { @@ -207,11 +207,11 @@ aspect RouteRequireSensor { } return a || b; } - public void Route.addToRequiredSensors(Sensor s) { + public void Route.addRequiredSensor(Sensor s) { this.getManagedRequiredSensors().add(s); s.getManagedRequiringRoutes().add(this); } - public boolean Route.removeFromRequiredSensors(Sensor s) { + public boolean Route.removeRequiredSensor(Sensor s) { boolean a = this.getManagedRequiredSensors().remove(s); boolean b = s.getManagedRequiringRoutes().remove(this); if (a != b) { -- GitLab