diff --git a/src/main/java/de/neemann/digital/core/extern/handler/StdIOProcess.java b/src/main/java/de/neemann/digital/core/extern/handler/StdIOProcess.java index 4a7417f90..e87c5e878 100644 --- a/src/main/java/de/neemann/digital/core/extern/handler/StdIOProcess.java +++ b/src/main/java/de/neemann/digital/core/extern/handler/StdIOProcess.java @@ -8,6 +8,7 @@ package de.neemann.digital.core.extern.handler; import de.neemann.digital.core.ObservableValue; import de.neemann.digital.core.ObservableValues; import de.neemann.digital.core.extern.ProcessHandler; +import de.neemann.digital.lang.Lang; import java.io.*; @@ -85,7 +86,7 @@ public class StdIOProcess implements ProcessHandler { lock.wait(1000); if (dataFound == null) - throw new IOException("timeout"); + throw new IOException(Lang.get("err_timeoutReadingData")); String line = dataFound; dataFound = null; @@ -131,7 +132,7 @@ public class StdIOProcess implements ProcessHandler { final int bits = v.getBits(); if (pos + bits > len) - throw new IOException("not enough data"); + throw new IOException(Lang.get("err_notEnoughDataReceived")); long value = 0; long highZ = 0; @@ -153,7 +154,7 @@ public class StdIOProcess implements ProcessHandler { case '0': break; default: - throw new IOException("invalid character " + c); + throw new IOException(Lang.get("err_invalidCharacterReceived_N", "" + c)); } mask <<= 1; pos++; @@ -161,7 +162,7 @@ public class StdIOProcess implements ProcessHandler { v.set(value, highZ); } } else - throw new IOException("process has stopped"); + throw new IOException(Lang.get("err_processTerminatedUnexpected")); } @Override @@ -173,10 +174,10 @@ public class StdIOProcess implements ProcessHandler { try { thread.join(1000); } catch (InterruptedException e) { - throw new IOException("thread was interrupted"); + // its ok, I just want to terminate the process! } if (thread.isAlive()) - throw new IOException("thread was not stopped"); + throw new IOException(Lang.get("err_couldNotTerminateProcess")); } } diff --git a/src/main/resources/lang/lang_de.xml b/src/main/resources/lang/lang_de.xml index b42a585f4..c0aea3fab 100644 --- a/src/main/resources/lang/lang_de.xml +++ b/src/main/resources/lang/lang_de.xml @@ -844,6 +844,11 @@ Sind evtl. die Namen der Variablen nicht eindeutig? Es konnten keine Werte an den externen Prozess übergeben werden! Es konnten keine Werte vom externen Prozess gelesen werden! Der externe Prozess konnte nicht gestartet werden! + Zeitüberschreitung beim Lesen von Daten! + Es wurden nicht genug Daten empfangen! + Der empfangene Text enthielt ein ungültiges Zeichen: {0}! + Der Prozess wurde unerwartet beendet! + Der Prozess konnte nicht beendet werden! Adress-Bits Anzahl der Adress-Bits, die verwendet werden. diff --git a/src/main/resources/lang/lang_en.xml b/src/main/resources/lang/lang_en.xml index 56abf7acc..e2cb55dbf 100644 --- a/src/main/resources/lang/lang_en.xml +++ b/src/main/resources/lang/lang_en.xml @@ -839,6 +839,11 @@ The names of the variables may not be unique. Could not write values to the external process! Could not write values from the external process! Could not create the external process! + Timeout reading data from external process! + Not enough data received! + The received text contains an invalid character: {0}! + The process has terminated unexpected! + Could not terminate the process! Address Bits Number of address bits used.