IRunUtil

public interface IRunUtil

com.android.tradefed.util.IRunUtil


Schnittstelle zum Ausführen von zeitgesteuerten Vorgängen und Systembefehlen.

Zusammenfassung

Verschachtelte Klassen

interface IRunUtil.IRunnableResult

Eine Schnittstelle für die asynchrone Ausführung eines Vorgangs, der einen booleschen Status zurückgibt. 

Öffentliche Methoden

abstract void allowInterrupt(boolean allow)

Lässt Laufunterbrechungen im aktuellen Thread zu oder deaktiviert sie.

abstract void interrupt(Thread thread, String message, ErrorIdentifier errorId)

Unterbricht die laufenden/anstehenden Ausführungsvorgänge im angegebenen Thread.

abstract void interrupt(Thread thread, String message)

Unterbricht die laufenden/anstehenden Ausführungsvorgänge im angegebenen Thread.

abstract boolean isInterruptAllowed()

Gibt den Unterbrechungsstatus von RunUtil an.

abstract Process runCmdInBackground(Redirect redirect, command)

Eine alternative runCmdInBackground(String)-Methode, die die Befehlsargumente in ERROR(/List)-Form akzeptiert.

abstract Process runCmdInBackground( command)

Eine alternative runCmdInBackground(String)-Methode, die die Befehlsargumente in ERROR(/List)-Form akzeptiert.

abstract Process runCmdInBackground( command, OutputStream output)

Wenn Sie einen Befehl mit einem ERROR(/OutputStream) ausführen, wird die Ausgabe des Befehls protokolliert.

abstract Process runCmdInBackground(String... command)

Hilfsmethode zum asynchronen Ausführen eines Systembefehls.

abstract Process runCmdInBackground(Redirect redirect, String... command)

Hilfsmethode zum asynchronen Ausführen eines Systembefehls.

abstract boolean runEscalatingTimedRetry(long opTimeout, long initialPollInterval, long maxPollInterval, long maxTime, IRunUtil.IRunnableResult runnable)

Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist.

abstract boolean runFixedTimedRetry(long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)

Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist.

abstract boolean runFixedTimedRetryWithOutputMonitor(long opTimeout, long idleOutputTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)

Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist.

abstract CommandStatus runTimed(long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors)

Blockiert und führt einen Vorgang aus und bricht ihn ab, wenn er länger als eine bestimmte Zeit dauert.

abstract CommandResult runTimedCmd(long timeout, OutputStream stdout, OutputStream stderr, String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert, und zum Weiterleiten der Ausgabe an Dateien, sofern angegeben.

abstract CommandResult runTimedCmd(long timeout, String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert.

abstract CommandResult runTimedCmdRetry(long timeout, long retryInterval, int attempts, String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert.

abstract CommandResult runTimedCmdRetryWithOutputMonitor(long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert.

abstract CommandResult runTimedCmdSilently(long timeout, String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert.

abstract CommandResult runTimedCmdSilentlyRetry(long timeout, long retryInterval, int attempts, String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert.

abstract CommandResult runTimedCmdWithInput(long timeout, String input, File stdoutFile, File stderrFile, String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert, und zum Weiterleiten der Ausgabe an Dateien, sofern angegeben.

abstract CommandResult runTimedCmdWithInput(long timeout, String input, String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der eine stdin-Eingabe erfordert, und zum Abbrechen, wenn er länger als eine bestimmte Zeit dauert.

abstract CommandResult runTimedCmdWithInput(long timeout, String input, command)

Hilfsmethode zum Ausführen eines Systembefehls, der eine stdin-Eingabe erfordert, und zum Abbrechen, wenn er länger als eine bestimmte Zeit dauert.

abstract CommandResult runTimedCmdWithInputRedirect(long timeout, File inputRedirect, String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der die Umleitung von Stdin von einer Datei erfordert, und zum Abbrechen, wenn er länger als eine bestimmte Zeit dauert.

abstract CommandResult runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert, und zum Weiterleiten der Ausgabe an Dateien, sofern angegeben.

abstract CommandResult runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert.

abstract CommandResult runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, ICacheClient cacheClient, String... command)

Hilfsmethode zum Ausführen eines Systembefehls mit Caching.

abstract boolean runTimedRetry(long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)

Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist.

abstract boolean runTimedRetryWithOutputMonitor(long opTimeout, long idleOutputTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)

Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist.

abstract CommandStatus runTimedWithOutputMonitor(long timeout, long idleOutputTimeout, IRunUtil.IRunnableResult runnable, boolean logErrors)

Blockiert und führt einen Vorgang aus und bricht ihn ab, wenn er länger als eine bestimmte Zeit dauert.

abstract void setEnvVariable(String key, String value)

Hiermit wird eine Umgebungsvariable festgelegt, die beim Ausführen von Systembefehlen verwendet werden soll.

abstract void setEnvVariablePriority(IRunUtil.EnvPriority priority)

Legen Sie fest, ob beim Erstellen eines Prozesses das Entfernen von Umgebungsvariablen eine höhere Priorität hat als das Festlegen.

abstract void setInterruptibleInFuture(Thread thread, long timeMs)

Nach einer gewissen Wartezeit als unterbrechbar festlegen

abstract void setLinuxInterruptProcess(boolean interrupt)

Es wird zugelassen, den Linux-Befehl „kill“ zu verwenden, um einen Prozess zu beenden, der über die #runTimed-Methoden ausgeführt wird, wenn ein Zeitlimit erreicht wird.

abstract void setRedirectStderrToStdout(boolean redirect)

Legen Sie fest, dass der Standardfehlerstream beim Ausführen von Systembefehlen an den Standardausgabestream umgeleitet wird.

abstract void setWorkingDir(File dir)

Hiermit wird das Arbeitsverzeichnis für Systembefehle festgelegt.

abstract void sleep(long time)

Hilfsmethode, um für eine bestimmte Zeit zu schlafen und dabei alle Ausnahmen zu ignorieren.

abstract void unsetEnvVariable(String key)

Heben Sie die Festlegung einer Umgebungsvariablen auf, damit die Systembefehle ohne diese Umgebungsvariable ausgeführt werden.

abstract void uploadCache(ICacheClient cacheClient, ExecutableActionResult actionResult)

Hier werden die letzten ExecutableActionResult hochgeladen, die mit einem cacheClient ausgeführt wurden.

Öffentliche Methoden

allowInterrupt

public abstract void allowInterrupt (boolean allow)

Lässt Laufunterbrechungen im aktuellen Thread zu oder deaktiviert sie. Wenn dies zulässig ist, können Vorgänge des aktuellen Threads von anderen Threads über die Methode interrupt(Thread, String) unterbrochen werden.

Parameter
allow boolean: Gibt an, ob Ausführungsunterbrechungen im aktuellen Thread zulässig sind.

Unterbrechung

public abstract void interrupt (Thread thread, 
                String message, 
                ErrorIdentifier errorId)

Unterbricht die laufenden/anstehenden Ausführungsvorgänge im angegebenen Thread. Die Ausführung von Vorgängen auf dem angegebenen Thread führt zu RunInterruptedException.

Parameter
message String: die Nachricht für RunInterruptedException.

errorId ErrorIdentifier: Die Ursache der Unterbrechung, sofern bekannt.

Unterbrechung

public abstract void interrupt (Thread thread, 
                String message)

Unterbricht die laufenden/anstehenden Ausführungsvorgänge im angegebenen Thread. Die Ausführung von Vorgängen auf dem angegebenen Thread führt zu RunInterruptedException.

Parameter
message String: die Nachricht für RunInterruptedException.

isInterruptAllowed

public abstract boolean isInterruptAllowed ()

Gibt den Unterbrechungsstatus von RunUtil an.

Returns
boolean „true“, wenn der Ablauf unterbrochen werden kann, andernfalls „false“.

runCmdInBackground

public abstract Process runCmdInBackground (Redirect redirect, 
                 command)

Eine alternative runCmdInBackground(String)-Methode, die die Befehlsargumente in ERROR(/List)-Form akzeptiert.

Parameter
redirect Redirect: Der ERROR(/Redirect), der auf die ProcessBuilder angewendet werden soll.

command : ERROR(/List) mit dem angegebenen Systembefehl und optionalen Argumenten für die Ausführung

Returns
Process die Process des ausgeführten Befehls

Ausgabe
if command failed to run

runCmdInBackground

public abstract Process runCmdInBackground ( command)

Eine alternative runCmdInBackground(String)-Methode, die die Befehlsargumente in ERROR(/List)-Form akzeptiert.

Parameter
command : der ERROR(/List) mit dem angegebenen Systembefehl und optionalen Argumenten für die Ausführung

Returns
Process die Process des ausgeführten Befehls

Ausgabe
if command failed to run

runCmdInBackground

public abstract Process runCmdInBackground ( command, 
                OutputStream output)

Wenn Sie einen Befehl mit einem ERROR(/OutputStream) ausführen, wird die Ausgabe des Befehls protokolliert. Stdout und stderr werden zusammengeführt.

Parameter
command : der auszuführende Befehl

output OutputStream: der OutputStream, in dem die Ausgabe gespeichert werden soll

Returns
Process Process, mit dem der Befehl ausgeführt wird

Ausgabe
IOException

runCmdInBackground

public abstract Process runCmdInBackground (String... command)

Hilfsmethode zum asynchronen Ausführen eines Systembefehls.

Wird sofort nach dem Starten des Befehls zurückgegeben.

Parameter
command String: Der angegebene Systembefehl und optional Argumente für exec

Returns
Process die Process des ausgeführten Befehls

Ausgabe
if command failed to run

runCmdInBackground

public abstract Process runCmdInBackground (Redirect redirect, 
                String... command)

Hilfsmethode zum asynchronen Ausführen eines Systembefehls.

Wird sofort nach dem Starten des Befehls zurückgegeben.

Parameter
redirect Redirect: Der ERROR(/Redirect), der auf die ProcessBuilder angewendet werden soll.

command String: Der angegebene Systembefehl und optional Argumente für exec

Returns
Process die Process des ausgeführten Befehls

Ausgabe
if command failed to run

runEscalatingTimedRetry

public abstract boolean runEscalatingTimedRetry (long opTimeout, 
                long initialPollInterval, 
                long maxPollInterval, 
                long maxTime, 
                IRunUtil.IRunnableResult runnable)

Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist.

Die Wartezeit zwischen den Ausführungsversuchen wird exponentiell erhöht. Diese Option sollte bei Vorgängen wie dem Abfragen eines Servers verwendet werden, um ihm Zeit zur Wiederherstellung zu geben, falls er vorübergehend ausgefallen ist.

Parameter
opTimeout long: Maximale Wartezeit in Millisekunden für einen einzelnen Vorgang

initialPollInterval long: Anfangswartezeit zwischen den Vorgangsversuchen

maxPollInterval long: die maximale Wartezeit zwischen den Ausführungsversuchen

maxTime long: die ungefähre maximale Zeit, die der Vorgang wiederholt versucht werden kann

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult zum Ausführen

Returns
boolean true, wenn der Vorgang vor Ablauf der maximalen Zeit erfolgreich abgeschlossen wurde

runFixedTimedRetry

public abstract boolean runFixedTimedRetry (long opTimeout, 
                long pollInterval, 
                long maxTime, 
                IRunUtil.IRunnableResult runnable)

Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist.

Parameter
opTimeout long: Maximale Wartezeit in Millisekunden für einen einzelnen Vorgang

pollInterval long: Anfangswartezeit zwischen den Vorgangsversuchen

maxTime long: die ungefähre maximale Zeit, die der Vorgang wiederholt versucht werden kann

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult zum Ausführen

Returns
boolean true, wenn der Vorgang vor Ablauf der maximalen Zeit erfolgreich abgeschlossen wurde

runFixedTimedRetryWithOutputMonitor

public abstract boolean runFixedTimedRetryWithOutputMonitor (long opTimeout, 
                long idleOutputTimeout, 
                long pollInterval, 
                long maxTime, 
                IRunUtil.IRunnableResult runnable)

Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist. Außerdem werden die Ausgabestreams auf Aktivität überwacht und der Vorgang abgebrochen, wenn für einen bestimmten Zeitraum keine Streamaktivität festgestellt wird. Wenn „idleOutputTimeout“ auf null gesetzt ist, erfolgt kein Stream-Monitoring.

Parameter
opTimeout long: Maximale Wartezeit in Millisekunden für einen einzelnen Vorgang

idleOutputTimeout long: Maximale Wartezeit in Millisekunden für die Ausgabe in den Ausgabestreams

pollInterval long: Anfangswartezeit zwischen den Vorgangsversuchen

maxTime long: die ungefähre maximale Zeit, die der Vorgang wiederholt versucht werden kann

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult zum Ausführen

Returns
boolean true, wenn der Vorgang vor Ablauf der maximalen Zeit erfolgreich abgeschlossen wurde

runTimed

public abstract CommandStatus runTimed (long timeout, 
                IRunUtil.IRunnableResult runnable, 
                boolean logErrors)

Blockiert und führt einen Vorgang aus und bricht ihn ab, wenn er länger als eine bestimmte Zeit dauert.

Parameter
timeout long: Maximale Wartezeit in ms

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult zum Ausführen

logErrors boolean: Ob Fehler bei einer Ausnahme protokolliert werden sollen oder nicht.

Returns
CommandStatus das CommandStatus-Ergebnis des Vorgangs.

runTimedCmd

public abstract CommandResult runTimedCmd (long timeout, 
                OutputStream stdout, 
                OutputStream stderr, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert, und zum Weiterleiten der Ausgabe an Dateien, sofern angegeben. Wenn ERROR(/OutputStream) auf diese Weise angegeben werden, bleiben sie am Ende der Funktion geöffnet.

Parameter
timeout long: timeout: maximale Wartezeit in ms. „0“ bedeutet kein Zeitlimit.

stdout OutputStream: ERROR(/OutputStream), an das die Standardausgabe weitergeleitet wird. Kann null sein.

stderr OutputStream: ERROR(/OutputStream), an das die Fehlerausgabe weitergeleitet wird. Kann null sein.

command String: Der angegebene Systembefehl und optional Argumente für exec

Returns
CommandResult CommandResult mit dem Ergebnis des Befehlslaufs

runTimedCmd

public abstract CommandResult runTimedCmd (long timeout, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert.

Parameter
timeout long: Maximale Wartezeit in ms. „0“ bedeutet, dass keine Zeitüberschreitung festgelegt ist.

command String: Der angegebene Systembefehl und optional Argumente für exec

Returns
CommandResult CommandResult mit dem Ergebnis des Befehlslaufs

runTimedCmdRetry

public abstract CommandResult runTimedCmdRetry (long timeout, 
                long retryInterval, 
                int attempts, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert.

Parameter
timeout long: Maximale Wartezeit in Millisekunden für jeden Versuch

retryInterval long: Wartezeit zwischen den Befehlswiederholungen

attempts int: die maximale Anzahl von Versuchen

command String: Der angegebene Systembefehl und optional Argumente für exec

Returns
CommandResult CommandResult mit dem Ergebnis des Befehlslaufs

runTimedCmdRetryWithOutputMonitor

public abstract CommandResult runTimedCmdRetryWithOutputMonitor (long timeout, 
                long idleOutputTimeout, 
                long retryInterval, 
                int attempts, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert. Außerdem werden die Ausgabestreams auf Aktivität überwacht und der Vorgang abgebrochen, wenn für einen bestimmten Zeitraum keine Streamaktivität festgestellt wird. Wenn „idleOutputTimeout“ auf null gesetzt ist, erfolgt kein Stream-Monitoring.

Parameter
timeout long: Maximale Wartezeit in Millisekunden für jeden Versuch

idleOutputTimeout long: Maximale Wartezeit in Millisekunden für die Ausgabe in den Ausgabestreams

retryInterval long: Wartezeit zwischen den Befehlswiederholungen

attempts int: die maximale Anzahl von Versuchen

command String: Der angegebene Systembefehl und optional Argumente für exec

Returns
CommandResult CommandResult mit dem Ergebnis des Befehlslaufs

runTimedCmdSilently

public abstract CommandResult runTimedCmdSilently (long timeout, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert. Ähnlich wie runTimedCmd(long, String), protokolliert aber keine Fehler bei einer Ausnahme.

Parameter
timeout long: Maximale Wartezeit in ms

command String: Der angegebene Systembefehl und optional Argumente für exec

Returns
CommandResult CommandResult mit dem Ergebnis des Befehlslaufs

runTimedCmdSilentlyRetry

public abstract CommandResult runTimedCmdSilentlyRetry (long timeout, 
                long retryInterval, 
                int attempts, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert. Ähnlich wie runTimedCmdRetry(long, long, int, String[]), protokolliert aber keine Fehler bei Ausnahmen.

Parameter
timeout long: Maximale Wartezeit in ms

retryInterval long: Wartezeit zwischen den Befehlswiederholungen

attempts int: die maximale Anzahl von Versuchen

command String: Der angegebene Systembefehl und optional Argumente für exec

Returns
CommandResult CommandResult mit dem Ergebnis des Befehlslaufs

runTimedCmdWithInput

public abstract CommandResult runTimedCmdWithInput (long timeout, 
                String input, 
                File stdoutFile, 
                File stderrFile, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert, und zum Weiterleiten der Ausgabe an Dateien, sofern angegeben.

Parameter
timeout long: timeout: maximale Wartezeit in ms. „0“ bedeutet kein Zeitlimit.

input String: die stdin-Eingabe, die an den Prozess übergeben werden soll

stdoutFile File: ERROR(/File), an das die Standardausgabe weitergeleitet wird. Kann null sein.

stderrFile File: ERROR(/File), an das die Fehlerausgabe weitergeleitet wird. Kann null sein.

command String: Der angegebene Systembefehl und optional Argumente für exec

Returns
CommandResult CommandResult mit dem Ergebnis des Befehlslaufs

runTimedCmdWithInput

public abstract CommandResult runTimedCmdWithInput (long timeout, 
                String input, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der eine stdin-Eingabe erfordert, und zum Abbrechen, wenn er länger als eine bestimmte Zeit dauert.

Parameter
timeout long: Maximale Wartezeit in ms

input String: die stdin-Eingabe, die an den Prozess übergeben werden soll

command String: Der angegebene Systembefehl und optional Argumente für exec

Returns
CommandResult CommandResult mit dem Ergebnis des Befehlslaufs

runTimedCmdWithInput

public abstract CommandResult runTimedCmdWithInput (long timeout, 
                String input, 
                 command)

Hilfsmethode zum Ausführen eines Systembefehls, der eine stdin-Eingabe erfordert, und zum Abbrechen, wenn er länger als eine bestimmte Zeit dauert.

Parameter
timeout long: Maximale Wartezeit in ms

input String: die stdin-Eingabe, die an den Prozess übergeben werden soll

command : ERROR(/List) mit dem Systembefehl und optional Argumenten für die Ausführung

Returns
CommandResult CommandResult mit dem Ergebnis des Befehlslaufs

runTimedCmdWithInputRedirect

public abstract CommandResult runTimedCmdWithInputRedirect (long timeout, 
                File inputRedirect, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der die Umleitung von Stdin von einer Datei erfordert, und zum Abbrechen, wenn er länger als eine bestimmte Zeit dauert.

Parameter
timeout long: Maximale Wartezeit in ms

inputRedirect File: Die ERROR(/File), die mit ProcessBuilder.redirectInput() als Standardeingabe weitergeleitet werden soll. Wenn „null“ angegeben ist, wird stdin nicht umgeleitet.

command String: Der angegebene Systembefehl und optional Argumente für exec

Returns
CommandResult CommandResult mit dem Ergebnis des Befehlslaufs

runTimedCmdWithOutputMonitor

public abstract CommandResult runTimedCmdWithOutputMonitor (long timeout, 
                long idleOutputTimeout, 
                OutputStream stdout, 
                OutputStream stderr, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert, und zum Weiterleiten der Ausgabe an Dateien, sofern angegeben. Wenn ERROR(/OutputStream) auf diese Weise angegeben werden, bleiben sie am Ende der Funktion geöffnet.

Parameter
timeout long: timeout: maximale Wartezeit in ms. „0“ bedeutet kein Zeitlimit.

idleOutputTimeout long: Maximale Wartezeit in Millisekunden für die Ausgabe in den Ausgabestreams

stdout OutputStream: ERROR(/OutputStream), an das die Standardausgabe weitergeleitet wird. Kann null sein.

stderr OutputStream: ERROR(/OutputStream), an das die Fehlerausgabe weitergeleitet wird. Kann null sein.

command String: Der angegebene Systembefehl und optional Argumente für exec

Returns
CommandResult CommandResult mit dem Ergebnis des Befehlslaufs

runTimedCmdWithOutputMonitor

public abstract CommandResult runTimedCmdWithOutputMonitor (long timeout, 
                long idleOutputTimeout, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls, der abgebrochen wird, wenn er länger als eine bestimmte Zeit dauert. Außerdem werden die Ausgabestreams auf Aktivität überwacht und der Vorgang abgebrochen, wenn für einen bestimmten Zeitraum keine Streamaktivität festgestellt wird. Wenn „idleOutputTimeout“ auf null gesetzt ist, erfolgt kein Stream-Monitoring.

Parameter
timeout long: Maximale Wartezeit in ms. „0“ bedeutet, dass keine Zeitüberschreitung festgelegt ist.

idleOutputTimeout long: Maximale Wartezeit in Millisekunden für die Ausgabe in den Ausgabestreams

command String: Der angegebene Systembefehl und optional Argumente für exec

Returns
CommandResult CommandResult mit dem Ergebnis des Befehlslaufs

runTimedCmdWithOutputMonitor

public abstract CommandResult runTimedCmdWithOutputMonitor (long timeout, 
                long idleOutputTimeout, 
                OutputStream stdout, 
                OutputStream stderr, 
                ICacheClient cacheClient, 
                String... command)

Hilfsmethode zum Ausführen eines Systembefehls mit Caching.

Wenn cacheClient angegeben ist, wird das Caching aktiviert. Wenn der Cache verfügbar ist, wird das im Cache gespeicherte Ergebnis zurückgegeben. Andernfalls wird runTimedCmdWithOutputMonitor(long, long, OutputStream, OutputStream, String) verwendet, um den Befehl auszuführen, und das Ergebnis wird zum Caching hochgeladen.

Parameter
timeout long: timeout: maximale Wartezeit in ms. „0“ bedeutet kein Zeitlimit.

idleOutputTimeout long: Maximale Wartezeit in Millisekunden für die Ausgabe in den Ausgabestreams.

stdout OutputStream: ERROR(/OutputStream), an das die Standardausgabe weitergeleitet wird. Kann null sein.

stderr OutputStream: ERROR(/OutputStream), an das die Fehlerausgabe weitergeleitet wird. Kann null sein.

cacheClient ICacheClient: Eine Instanz von ICacheClient, die zum Cachen verwendet wird.

command String: Der angegebene Systembefehl und optional Argumente für exec.

Returns
CommandResult CommandResult mit dem Ergebnis des Befehls

runTimedRetry

public abstract boolean runTimedRetry (long opTimeout, 
                long pollInterval, 
                int attempts, 
                IRunUtil.IRunnableResult runnable)

Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist.

Parameter
opTimeout long: Maximale Wartezeit in Millisekunden für einen Vorgang

pollInterval long: Wartezeit zwischen den Befehlswiederholungen

attempts int: die maximale Anzahl von Versuchen

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult zum Ausführen

Returns
boolean true, wenn der Vorgang vor Erreichen der Anzahl der Versuche erfolgreich abgeschlossen wurde.

runTimedRetryWithOutputMonitor

public abstract boolean runTimedRetryWithOutputMonitor (long opTimeout, 
                long idleOutputTimeout, 
                long pollInterval, 
                int attempts, 
                IRunUtil.IRunnableResult runnable)

Blockiert und führt einen Vorgang mehrmals aus, bis er erfolgreich ist. Außerdem werden die Ausgabestreams auf Aktivität überwacht und der Vorgang abgebrochen, wenn für einen bestimmten Zeitraum keine Streamaktivität festgestellt wird. Wenn „idleOutputTimeout“ auf null gesetzt ist, erfolgt kein Stream-Monitoring.

Parameter
opTimeout long: Maximale Wartezeit in Millisekunden für einen Vorgang

idleOutputTimeout long: Maximale Wartezeit in Millisekunden für die Ausgabe in den Ausgabestreams

pollInterval long: Wartezeit zwischen den Befehlswiederholungen

attempts int: die maximale Anzahl von Versuchen

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult zum Ausführen

Returns
boolean true, wenn der Vorgang vor Erreichen der Anzahl der Versuche erfolgreich abgeschlossen wurde.

runTimedWithOutputMonitor

public abstract CommandStatus runTimedWithOutputMonitor (long timeout, 
                long idleOutputTimeout, 
                IRunUtil.IRunnableResult runnable, 
                boolean logErrors)

Blockiert und führt einen Vorgang aus und bricht ihn ab, wenn er länger als eine bestimmte Zeit dauert. Außerdem werden die Ausgabestreams auf Aktivität überwacht und der Vorgang abgebrochen, wenn für einen bestimmten Zeitraum keine Streamaktivität festgestellt wird. Wenn „idleOutputTimeout“ auf null gesetzt ist, erfolgt kein Stream-Monitoring.

Parameter
timeout long: Maximale Wartezeit in ms

idleOutputTimeout long: Maximale Wartezeit in Millisekunden für die Ausgabe in den Ausgabestreams

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult zum Ausführen

logErrors boolean: Ob Fehler bei einer Ausnahme protokolliert werden sollen oder nicht.

Returns
CommandStatus das CommandStatus-Ergebnis des Vorgangs.

setEnvVariable

public abstract void setEnvVariable (String key, 
                String value)

Hiermit wird eine Umgebungsvariable festgelegt, die beim Ausführen von Systembefehlen verwendet werden soll.

Parameter
key String: den Variablennamen

value String: den Variablenwert

Weitere Informationen

setEnvVariablePriority

public abstract void setEnvVariablePriority (IRunUtil.EnvPriority priority)

Legen Sie fest, ob beim Erstellen eines Prozesses das Entfernen von Umgebungsvariablen eine höhere Priorität hat als das Festlegen. Standardmäßig hat das Entfernen einer Variablen eine höhere Priorität. Das bedeutet, dass ein Versuch, eine Variable mit demselben Namen festzulegen, fehlschlägt, da die Variable entfernt wird. Kann nicht für die Standard-IRunUtil-Instanz verwendet werden.

Parameter
priority IRunUtil.EnvPriority

setInterruptibleInFuture

public abstract void setInterruptibleInFuture (Thread thread, 
                long timeMs)

Nach einer gewissen Wartezeit als unterbrechbar festlegen ERROR(/CommandScheduler#shutdownHard()), um die Schließung zu erzwingen.

Parameter
thread Thread: Der Thread, der unterbrochen werden kann.

timeMs long: Zeit, die gewartet werden soll, bevor die Funktion „Unterbrechbar“ festgelegt wird.

setLinuxInterruptProcess

public abstract void setLinuxInterruptProcess (boolean interrupt)

Es wird zugelassen, den Linux-Befehl „kill“ zu verwenden, um einen Prozess zu beenden, der über die #runTimed-Methoden ausgeführt wird, wenn ein Zeitlimit erreicht wird. Kann nicht für die Standard-IRunUtil-Instanz verwendet werden.

Parameter
interrupt boolean

setRedirectStderrToStdout

public abstract void setRedirectStderrToStdout (boolean redirect)

Legen Sie fest, dass der Standardfehlerstream beim Ausführen von Systembefehlen an den Standardausgabestream umgeleitet wird. Der Standardwert ist „false“.

Parameter
redirect boolean: neuer Wert für die Weiterleitung

setWorkingDir

public abstract void setWorkingDir (File dir)

Hiermit wird das Arbeitsverzeichnis für Systembefehle festgelegt.

Parameter
dir File: das Arbeitsverzeichnis

Weitere Informationen

Schlafen

public abstract void sleep (long time)

Hilfsmethode, um für eine bestimmte Zeit zu schlafen und dabei alle Ausnahmen zu ignorieren.

Parameter
time long: Zeit in Millisekunden, nach der der Modus „Ruhe“ aktiviert wird. Werte unter oder gleich 0 werden ignoriert.

unsetEnvVariable

public abstract void unsetEnvVariable (String key)

Heben Sie die Festlegung einer Umgebungsvariablen auf, damit die Systembefehle ohne diese Umgebungsvariable ausgeführt werden.

Parameter
key String: den Variablennamen

Weitere Informationen

uploadCache

public abstract void uploadCache (ICacheClient cacheClient, 
                ExecutableActionResult actionResult)

Hier werden die letzten ExecutableActionResult hochgeladen, die mit einem cacheClient ausgeführt wurden.

Parameter
cacheClient ICacheClient: Der ICacheClient, mit dem das Ergebnis hochgeladen wurde.

actionResult ExecutableActionResult: Der hochzuladende ExecutableActionResult.