From 9233240d2569c82b7ad4e683cf0a82d552b98a5c Mon Sep 17 00:00:00 2001 From: Stephan Richter <github@keawe.de> Date: Sat, 14 Nov 2020 17:07:51 +0100 Subject: [PATCH] main app now accepting argument: --start-trains --- pom.xml | 2 +- src/main/java/de/srsoftware/web4rail/Application.java | 8 ++++++++ src/main/java/de/srsoftware/web4rail/moving/Train.java | 4 ++++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 361d955..9a07cfa 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ <modelVersion>4.0.0</modelVersion> <groupId>de.srsoftware</groupId> <artifactId>web4rail</artifactId> - <version>0.11.32</version> + <version>1.0.1</version> <name>Web4Rail</name> <packaging>jar</packaging> <description>Java Model Railway Control</description> diff --git a/src/main/java/de/srsoftware/web4rail/Application.java b/src/main/java/de/srsoftware/web4rail/Application.java index 92ad5ac..c8dc5cb 100644 --- a/src/main/java/de/srsoftware/web4rail/Application.java +++ b/src/main/java/de/srsoftware/web4rail/Application.java @@ -40,6 +40,7 @@ import de.srsoftware.web4rail.tiles.Contact; */ public class Application extends BaseClass{ private static final Logger LOG = LoggerFactory.getLogger(Application.class); + private static final String START_TRAINS = "--start-trains"; /** * entry point for the application:<br/> @@ -71,6 +72,13 @@ public class Application extends BaseClass{ plan = new Plan(); } Desktop.getDesktop().browse(URI.create("http://"+InetAddress.getLocalHost().getHostName()+":"+config.getInt(PORT)+"/plan")); + for (String arg : args) { + switch (arg) { + case START_TRAINS: + Train.startAll(); + break; + } + } } /** diff --git a/src/main/java/de/srsoftware/web4rail/moving/Train.java b/src/main/java/de/srsoftware/web4rail/moving/Train.java index 473c79e..ed1fed6 100644 --- a/src/main/java/de/srsoftware/web4rail/moving/Train.java +++ b/src/main/java/de/srsoftware/web4rail/moving/Train.java @@ -642,6 +642,10 @@ public class Train extends BaseClass implements Comparable<Train> { return t("Started {}",this); } + public static void startAll() { + for (Train train : list()) train.automatic(); + } + private void startSimulation() { for (Contact contact : route.contacts()) { if (contact.addr() != 0) return; // simulate train only when all contacts are non-physical