From 00411d4398aea4292d78b23b9484642ff6eec007 Mon Sep 17 00:00:00 2001 From: Stephan Richter Date: Sat, 5 Dec 2020 00:18:55 +0100 Subject: [PATCH] bugfixes --- pom.xml | 2 +- src/main/java/de/srsoftware/web4rail/BaseClass.java | 3 ++- src/main/java/de/srsoftware/web4rail/actions/ActionList.java | 2 +- .../de/srsoftware/web4rail/actions/ConditionalAction.java | 2 +- .../java/de/srsoftware/web4rail/actions/StartStopAuto.java | 4 +++- src/main/java/de/srsoftware/web4rail/moving/Train.java | 2 +- 6 files changed, 9 insertions(+), 6 deletions(-) diff --git a/pom.xml b/pom.xml index 33da4d2..90bb238 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ 4.0.0 de.srsoftware web4rail - 1.2.25 + 1.2.26 Web4Rail jar Java Model Railway Control diff --git a/src/main/java/de/srsoftware/web4rail/BaseClass.java b/src/main/java/de/srsoftware/web4rail/BaseClass.java index c654a3d..6a1dc71 100644 --- a/src/main/java/de/srsoftware/web4rail/BaseClass.java +++ b/src/main/java/de/srsoftware/web4rail/BaseClass.java @@ -135,7 +135,8 @@ public abstract class BaseClass implements Constants{ public String toString() { StringBuffer sb = new StringBuffer(getClass().getSimpleName()); sb.append("("); - sb.append(t("Train: {}",train)); + sb.append("main: "+main); + if (isSet(train)) sb.append(", "+t("Train: {}",train)); if (isSet(direction)) sb.append(", "+t("Direction: {}",direction)); if (isSet(block)) sb.append(", "+t("Block: {}",block)); if (isSet(route)) sb.append(", "+t("Route: {}",route)); diff --git a/src/main/java/de/srsoftware/web4rail/actions/ActionList.java b/src/main/java/de/srsoftware/web4rail/actions/ActionList.java index 2e661de..0e7122a 100644 --- a/src/main/java/de/srsoftware/web4rail/actions/ActionList.java +++ b/src/main/java/de/srsoftware/web4rail/actions/ActionList.java @@ -91,7 +91,7 @@ public class ActionList extends Action implements Iterable{ } public boolean fire(Context context) { - if (!isEmpty()) LOG.debug(t("Firing {}"),this); + if (!isEmpty()) LOG.debug(t("Firing {}"),actions); for (Action action : actions) { if (!action.fire(context)) return false; } diff --git a/src/main/java/de/srsoftware/web4rail/actions/ConditionalAction.java b/src/main/java/de/srsoftware/web4rail/actions/ConditionalAction.java index e9bdd24..a042595 100644 --- a/src/main/java/de/srsoftware/web4rail/actions/ConditionalAction.java +++ b/src/main/java/de/srsoftware/web4rail/actions/ConditionalAction.java @@ -29,7 +29,7 @@ public class ConditionalAction extends ActionList { @Override public boolean fire(Context context) { for (Condition condition : conditions) { - if (!condition.fulfilledBy(context)) return false; + if (!condition.fulfilledBy(context)) return true; // wenn die Bedingung nicht erfüllt ist, ist das kein Fehler! } return super.fire(context.clone()); // actions, that happen within the conditional action list must not modify the global context. } diff --git a/src/main/java/de/srsoftware/web4rail/actions/StartStopAuto.java b/src/main/java/de/srsoftware/web4rail/actions/StartStopAuto.java index dee6a97..622cabb 100644 --- a/src/main/java/de/srsoftware/web4rail/actions/StartStopAuto.java +++ b/src/main/java/de/srsoftware/web4rail/actions/StartStopAuto.java @@ -22,7 +22,9 @@ public class StartStopAuto extends Action { @Override public boolean fire(Context context) { if (isNull(context.train())) return false; - context.train().quitAutopilot(); + if (inverted) { + context.train().automatic(); + } else context.train().quitAutopilot(); return true; } diff --git a/src/main/java/de/srsoftware/web4rail/moving/Train.java b/src/main/java/de/srsoftware/web4rail/moving/Train.java index 700009b..4b5932c 100644 --- a/src/main/java/de/srsoftware/web4rail/moving/Train.java +++ b/src/main/java/de/srsoftware/web4rail/moving/Train.java @@ -193,7 +193,7 @@ public class Train extends BaseClass implements Comparable { car.train(this); } - private String automatic() { + public String automatic() { if (isNull(autopilot)) { autopilot = new Autopilot(); autopilot.start();