IRunUtil

public interface IRunUtil

com.android.tradefed.util.IRunUtil


Schnittstelle zum Ausführen von zeitgesteuerten Operationen und Systembefehlen.

Zusammenfassung

Verschachtelte Klassen

enum IRunUtil.EnvPriority

Enum, das definiert, ob eine bestimmte Umgebung festgelegt oder deaktiviert wird.

interface IRunUtil.IRunnableResult

Eine Schnittstelle zum asynchronen Ausführen einer Operation, die einen booleschen Status zurückgibt.

Öffentliche Methoden

abstract void allowInterrupt (boolean allow)

Erlaubt/verbietet die Ausführung von Interrupts für den aktuellen Thread.

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

Unterbricht die laufenden/anstehenden Ausführungsvorgänge für den angegebenen Thread.

abstract void interrupt (Thread thread, String message)

Unterbricht die laufenden/anstehenden Ausführungsvorgänge für den angegebenen Thread.

abstract boolean isInterruptAllowed ()

Geben Sie den Interrupt-Status von RunUtil an.

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

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

abstract Process runCmdInBackground (String... command)

Hilfsmethode zum asynchronen Ausführen eines Systembefehls.

abstract Process runCmdInBackground ( command) runCmdInBackground ( command)

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

abstract Process runCmdInBackground ( command, OutputStream output) runCmdInBackground ( command, OutputStream output)

Ausführen des Befehls mit einem ERROR(/OutputStream) protokolliert die Ausgabe des Befehls.

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 eine Operation mehrmals aus, bis sie erfolgreich ist.

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

Blockiert und führt eine Operation mehrmals aus, bis sie erfolgreich ist.

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

Blockiert und führt eine Operation aus und bricht ab, wenn sie länger als eine angegebene Zeit dauert.

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

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn es länger als eine angegebene Zeit dauert.

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

Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn dies länger als eine angegebene Zeit dauert, und zum Umleiten der Ausgabe in Dateien, falls angegeben.

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

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn es länger als eine angegebene Zeit dauert.

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

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn es länger als eine angegebene Zeit dauert.

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

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn es länger als eine angegebene Zeit dauert.

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

Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn dies länger als eine angegebene Zeit dauert, und zum Umleiten der Ausgabe in Dateien, falls angegeben.

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

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

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

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

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

Hilfsmethode zum Ausführen eines Systembefehls, der das Umleiten von Stdin aus einer Datei erfordert, und das Abbrechen, wenn es länger als eine angegebene Zeit dauert.

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

Blockiert und führt eine Operation mehrmals aus, bis sie erfolgreich ist.

abstract void setEnvVariable (String key, String value)

Legt eine Umgebungsvariable fest, die beim Ausführen von Systembefehlen verwendet werden soll.

abstract void setEnvVariablePriority ( IRunUtil.EnvPriority priority)

Entscheiden Sie, ob beim Erstellen eines Prozesses das Deaktivieren der Umgebungsvariable eine höhere Priorität hat als das Setzen.

abstract void setInterruptibleInFuture (Thread thread, long timeMs)

Nach einiger Wartezeit als unterbrechbar setzen.

abstract void setLinuxInterruptProcess (boolean interrupt)

Erlauben Sie die Verwendung von Linux-'Kill'-Unterbrechungen für Prozesse, die durch #runTimed-Methoden ausgeführt werden, wenn eine Zeitüberschreitung erreicht wird.

abstract void setRedirectStderrToStdout (boolean redirect)

Stellen Sie den Standardfehlerstream so ein, dass er beim Ausführen von Systembefehlen zum Standardausgabestream umgeleitet wird.

abstract void setWorkingDir (File dir)

Legt das Arbeitsverzeichnis für Systembefehle fest.

abstract void sleep (long time)

Hilfsmethode zum Schlafen für eine bestimmte Zeit, wobei alle Ausnahmen ignoriert werden.

abstract void unsetEnvVariable (String key)

Setzt eine Umgebungsvariable zurück, sodass die Systembefehle ohne diese Umgebungsvariable ausgeführt werden.

Öffentliche Methoden

erlaubenInterrupt

public abstract void allowInterrupt (boolean allow)

Erlaubt/verbietet die Ausführung von Interrupts für den aktuellen Thread. Wenn dies zulässig ist, können Ausführungsvorgänge des aktuellen Threads von anderen Threads über die Methode interrupt(Thread, String) werden.

Parameter
allow boolean : ob Laufunterbrechungen für den aktuellen Thread zugelassen werden sollen.

unterbrechen

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

Unterbricht die laufenden/anstehenden Ausführungsvorgänge für den angegebenen Thread. Die Ausführungsvorgänge für den angegebenen Thread RunInterruptedException .

Parameter
message String : die Nachricht für RunInterruptedException .

errorId ErrorIdentifier : Stellt die Ursache der Unterbrechung dar, sofern bekannt.

unterbrechen

public abstract void interrupt (Thread thread, 
                String message)

Unterbricht die laufenden/anstehenden Ausführungsvorgänge für den angegebenen Thread. Die Ausführungsvorgänge für den angegebenen Thread RunInterruptedException .

Parameter
message String : die Nachricht für RunInterruptedException .

isInterruptAllowed

public abstract boolean isInterruptAllowed ()

Geben Sie den Interrupt-Status von RunUtil an.

Kehrt zurück
boolean true, wenn der Run 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 den ProcessBuilder werden soll.

command : Der ERROR(/List) enthält den angegebenen Systembefehl und optional Argumente für exec

Kehrt zurück
Process der Process des ausgeführten Befehls

Wirft
wenn der Befehl nicht ausgeführt werden konnte

runCmdInBackground

public abstract Process runCmdInBackground (String... command)

Hilfsmethode zum asynchronen Ausführen eines Systembefehls.

Wird sofort nach dem Start des Befehls zurückgegeben.

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

Kehrt zurück
Process der Process des ausgeführten Befehls

Wirft
wenn der Befehl nicht ausgeführt werden konnte

runCmdInBackground

public abstract Process runCmdInBackground ( command)

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

Parameter
command : Der ERROR(/List) enthält den angegebenen Systembefehl und optional Argumente für exec

Kehrt zurück
Process der Process des ausgeführten Befehls

Wirft
wenn der Befehl nicht ausgeführt werden konnte

runCmdInBackground

public abstract Process runCmdInBackground ( command, 
                OutputStream output)

Ausführen des Befehls mit einem ERROR(/OutputStream) protokolliert die Ausgabe des Befehls. Stdout und stderr werden zusammengeführt.

Parameter
command : der auszuführende Befehl

output OutputStream : der OutputStream zum Speichern der Ausgabe

Kehrt zurück
Process der Process , der den Befehl ausführt

runCmdInBackground

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

Hilfsmethode zum asynchronen Ausführen eines Systembefehls.

Wird sofort nach dem Start des Befehls zurückgegeben.

Parameter
redirect Redirect : Der ERROR(/Redirect) der auf den ProcessBuilder werden soll.

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

Kehrt zurück
Process der Process des ausgeführten Befehls

Wirft
wenn der Befehl nicht ausgeführt werden konnte

runEscalatingTimedRetry

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

Blockiert und führt eine Operation mehrmals aus, bis sie erfolgreich ist.

Erhöhen Sie die Wartezeit zwischen den Vorgangsversuchen exponentiell. Dies soll verwendet werden, wenn eine Operation wie das Abfragen eines Servers durchgeführt wird, um ihm Zeit zum Wiederherstellen zu geben, falls er vorübergehend ausfällt.

Parameter
opTimeout long : Maximale Wartezeit in ms für einen einzelnen Vorgangsversuch

initialPollInterval long : anfängliche Wartezeit zwischen den Operationsversuchen

maxPollInterval long : die maximale Wartezeit zwischen den Operationsversuchen

maxTime long : die ungefähre maximale Gesamtzeit, um den Vorgang fortzusetzen

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

Kehrt zurück
boolean true wenn der Vorgang erfolgreich abgeschlossen wurde, bevor maxTime abgelaufen ist

runFixedTimedRetry

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

Blockiert und führt eine Operation mehrmals aus, bis sie erfolgreich ist.

Parameter
opTimeout long : Maximale Wartezeit in ms für einen einzelnen Vorgangsversuch

pollInterval long : anfängliche Wartezeit zwischen den Operationsversuchen

maxTime long : die ungefähre maximale Gesamtzeit, um den Vorgang fortzusetzen

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

Kehrt zurück
boolean true wenn der Vorgang erfolgreich abgeschlossen wurde, bevor maxTime abgelaufen ist

runTimed

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

Blockiert und führt eine Operation aus und bricht ab, wenn sie länger als eine angegebene Zeit dauert.

Parameter
timeout long : maximale Wartezeit in ms

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

logErrors boolean : Fehler bei Ausnahme protokollieren oder nicht.

Kehrt zurück
CommandStatus das CommandStatus Ergebnis der Operation.

runTimedCmd

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

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn es länger als eine angegebene Zeit dauert.

Parameter
timeout long : maximale Wartezeit in ms. 0 bedeutet kein Timeout.

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

Kehrt zurück
CommandResult ein CommandResult , das das Ergebnis der Befehlsausführung enthält

runTimedCmd

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

Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn dies länger als eine angegebene Zeit dauert, und zum Umleiten der Ausgabe in Dateien, falls angegeben. Wenn ERROR(/OutputStream) auf diese Weise bereitgestellt werden, bleiben sie am Ende der Funktion offen.

Parameter
timeout long : Timeout maximale Wartezeit in ms. 0 bedeutet kein Timeout.

stdout OutputStream : ERROR(/OutputStream) wo die Standardausgabe umgeleitet wird. Kann null sein.

stderr OutputStream : ERROR(/OutputStream) wo die Fehlerausgabe umgeleitet wird. Kann null sein.

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

Kehrt zurück
CommandResult ein CommandResult , das das Ergebnis der Befehlsausführung enthält

runTimedCmdRetry

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

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn es länger als eine angegebene Zeit dauert.

Parameter
timeout long : maximale Wartezeit in ms für jeden Versuch

retryInterval long : Wartezeit zwischen Befehlswiederholungen

attempts int : die maximale Anzahl von Versuchen

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

Kehrt zurück
CommandResult ein CommandResult , das das Ergebnis der Befehlsausführung enthält

runTimedCmdSilently

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

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn es länger als eine angegebene Zeit dauert. Ähnlich wie runTimedCmd(long, String) , protokolliert jedoch keine Fehler bei einer Ausnahme.

Parameter
timeout long : maximale Wartezeit in ms

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

Kehrt zurück
CommandResult ein CommandResult , das das Ergebnis der Befehlsausführung enthält

runTimedCmdSilentlyRetry

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

Hilfsmethode zum Ausführen eines Systembefehls und zum Abbrechen, wenn es länger als eine angegebene Zeit dauert. Ähnlich wie runTimedCmdRetry(long, long, int, String[]) , protokolliert jedoch keine Fehler bei einer Ausnahme.

Parameter
timeout long : maximale Wartezeit in ms

retryInterval long : Wartezeit zwischen Befehlswiederholungen

attempts int : die maximale Anzahl von Versuchen

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

Kehrt zurück
CommandResult ein CommandResult , das das Ergebnis der Befehlsausführung enthält

runTimedCmdWithInput

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

Hilfsmethode zum Ausführen eines Systembefehls, zum Abbrechen, wenn dies länger als eine angegebene Zeit dauert, und zum Umleiten der Ausgabe in Dateien, falls angegeben.

Parameter
timeout long : Timeout maximale Wartezeit in ms. 0 bedeutet kein Timeout.

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

stdoutFile File : ERROR(/File) wohin die std-Ausgabe umgeleitet wird. Kann null sein.

stderrFile File : ERROR(/File) wohin die Fehlerausgabe umgeleitet wird. Kann null sein.

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

Kehrt zurück
CommandResult ein CommandResult , das das Ergebnis der Befehlsausführung enthält

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 dies länger als eine angegebene Zeit dauert.

Parameter
timeout long : maximale Wartezeit in ms

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

command : ERROR(/List) enthält den Systembefehl und optional Argumente für exec

Kehrt zurück
CommandResult ein CommandResult , das das Ergebnis der Befehlsausführung enthält

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 dies länger als eine angegebene 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

Kehrt zurück
CommandResult ein CommandResult , das das Ergebnis der Befehlsausführung enthält

runTimedCmdWithInputRedirect

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

Hilfsmethode zum Ausführen eines Systembefehls, der das Umleiten von Stdin aus einer Datei erfordert, und das Abbrechen, wenn es länger als eine angegebene Zeit dauert.

Parameter
timeout long : maximale Wartezeit in ms

inputRedirect File : der ERROR(/File) zum Umleiten als Standardeingabe mit ProcessBuilder.redirectInput() . Wenn null, wird stdin nicht umgeleitet.

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

Kehrt zurück
CommandResult ein CommandResult , das das Ergebnis der Befehlsausführung enthält

runTimedRetry

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

Blockiert und führt eine Operation mehrmals aus, bis sie erfolgreich ist.

Parameter
opTimeout long : maximale Wartezeit in ms für einen Operationsversuch

pollInterval long : Wartezeit zwischen Befehlswiederholungen

attempts int : die maximale Anzahl von Versuchen

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

Kehrt zurück
boolean true wenn der Vorgang erfolgreich abgeschlossen wurde, bevor die Versuche erreicht wurden.

setEnvVariable

public abstract void setEnvVariable (String key, 
                String value)

Legt eine Umgebungsvariable fest, die beim Ausführen von Systembefehlen verwendet werden soll.

Parameter
key String : der Variablenname

value String : der Variablenwert

setEnvVariablePriority

public abstract void setEnvVariablePriority (IRunUtil.EnvPriority priority)

Entscheiden Sie, ob beim Erstellen eines Prozesses das Deaktivieren der Umgebungsvariable eine höhere Priorität hat als das Setzen. Standardmäßig hat das Deaktivieren eine höhere Priorität: Das heißt, wenn versucht wird, eine Variable mit demselben Namen zu setzen, wird dies nicht passieren, da die Variable zurückgesetzt wird. Kann nicht auf der standardmäßigen IRunUtil Instanz verwendet werden.

Parameter
priority IRunUtil.EnvPriority

setInterruptibleInFuture

public abstract void setInterruptibleInFuture (Thread thread, 
                long timeMs)

Nach einiger Wartezeit als unterbrechbar setzen. ERROR(/CommandScheduler#shutdownHard()) um zu erzwingen, dass wir schließlich beenden.

Parameter
thread Thread : Der Thread, der unterbrechbar wird.

timeMs long : Wartezeit, bevor unterbrechbar eingestellt wird.

setLinuxInterruptProcess

public abstract void setLinuxInterruptProcess (boolean interrupt)

Erlauben Sie die Verwendung von Linux-'Kill'-Unterbrechungen für Prozesse, die durch #runTimed-Methoden ausgeführt werden, wenn eine Zeitüberschreitung erreicht wird. Kann nicht auf der standardmäßigen IRunUtil Instanz verwendet werden.

Parameter
interrupt boolean

setRedirectStderrToStdout

public abstract void setRedirectStderrToStdout (boolean redirect)

Stellen Sie den Standardfehlerstream so ein, dass er beim Ausführen von Systembefehlen zum Standardausgabestream umgeleitet wird. Der Anfangswert ist falsch.

Parameter
redirect boolean : neuer Wert, ob umgeleitet werden soll oder nicht

setWorkingDir

public abstract void setWorkingDir (File dir)

Legt das Arbeitsverzeichnis für Systembefehle fest.

Parameter
dir File : das Arbeitsverzeichnis

schlafen

public abstract void sleep (long time)

Hilfsmethode zum Schlafen für eine bestimmte Zeit, wobei alle Ausnahmen ignoriert werden.

Parameter
time long : ms zu schlafen. Werte kleiner oder gleich 0 werden ignoriert

unsetEnvVariable

public abstract void unsetEnvVariable (String key)

Setzt eine Umgebungsvariable zurück, sodass die Systembefehle ohne diese Umgebungsvariable ausgeführt werden.

Parameter
key String : der Variablenname