RunUtil
public
class
RunUtil
extends Object
implements
IRunUtil
| java.lang.Object | |
| ↳ | com.android.tradefed.util.RunUtil |
Zbiór metod pomocniczych do wykonywania operacji.
Podsumowanie
Stałe | |
|---|---|
String |
INHERITIO_PREFIX
|
String |
RUNNABLE_NOTIFIER_NAME
|
Publiczne konstruktory | |
|---|---|
RunUtil()
Utwórz nowy obiekt |
|
RunUtil(boolean inheritEnvVars)
|
|
Metody publiczne | |
|---|---|
void
|
allowInterrupt(boolean allow)
Zezwala na przerywanie działania bieżącego wątku lub nie zezwala na nie. |
ProcessBuilder
|
createProcessBuilder(Redirect redirect,
|
static
IRunUtil
|
getDefault()
Uzyskaj odniesienie do domyślnego obiektu |
void
|
interrupt(Thread thread, String message, ErrorIdentifier errorId)
Przerywa trwające lub nadchodzące operacje uruchamiania w danym wątku. |
void
|
interrupt(Thread thread, String message)
Przerywa trwające lub nadchodzące operacje uruchamiania w danym wątku. |
boolean
|
isInterruptAllowed()
Zwraca stan przerwania RunUtil. |
Process
|
runCmdInBackground(Redirect redirect,
Alternatywna metoda |
Process
|
runCmdInBackground(
Alternatywna metoda |
Process
|
runCmdInBackground(
Uruchom polecenie z parametrem |
Process
|
runCmdInBackground(String... command)
Metoda pomocnicza do asynchronicznego wykonywania polecenia systemowego. |
Process
|
runCmdInBackground(Redirect redirect, String... command)
Metoda pomocnicza do asynchronicznego wykonywania polecenia systemowego. |
boolean
|
runEscalatingTimedRetry(long opTimeout, long initialPollInterval, long maxPollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Blokuje i wykonuje operację wielokrotnie, dopóki nie zakończy się ona powodzeniem. |
boolean
|
runFixedTimedRetry(long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Blokuje i wykonuje operację wielokrotnie, dopóki nie zakończy się ona powodzeniem. |
boolean
|
runFixedTimedRetryWithOutputMonitor(long opTimeout, long idleOutputTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Blokuje i wykonuje operację wielokrotnie, dopóki nie zakończy się ona powodzeniem. |
CommandStatus
|
runTimed(long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Blokuje i wykonuje operację, przerywając ją, jeśli trwa dłużej niż określony czas. |
CommandResult
|
runTimedCmd(long timeout, OutputStream stdout, OutputStream stderr, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego. Przerywa działanie, jeśli trwa ono dłużej niż określony czas, i przekierowuje dane wyjściowe do plików, jeśli jest to określone. |
CommandResult
|
runTimedCmd(long timeout, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego i przerywania go, jeśli trwa dłużej niż określony czas. |
CommandResult
|
runTimedCmdRetry(long timeout, long retryInterval, int attempts, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego i przerywania go, jeśli trwa dłużej niż określony czas. |
CommandResult
|
runTimedCmdRetryWithOutputMonitor(long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego i przerywania go, jeśli trwa dłużej niż określony czas. |
CommandResult
|
runTimedCmdSilently(long timeout, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego i przerywania go, jeśli trwa dłużej niż określony czas. |
CommandResult
|
runTimedCmdSilentlyRetry(long timeout, long retryInterval, int attempts, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego i przerywania go, jeśli trwa dłużej niż określony czas. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input, File stdoutFile, File stderrFile, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego. Przerywa działanie, jeśli trwa ono dłużej niż określony czas, i przekierowuje dane wyjściowe do plików, jeśli jest to określone. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego, które wymaga danych wejściowych stdin, i przerywania działania, jeśli trwa dłużej niż określony czas. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input,
Metoda pomocnicza do wykonywania polecenia systemowego, które wymaga danych wejściowych stdin, i przerywania działania, jeśli trwa dłużej niż określony czas. |
CommandResult
|
runTimedCmdWithInputRedirect(long timeout, File inputRedirect, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego, które wymaga przekierowania Stdin z pliku i przerwania działania, jeśli trwa dłużej niż określony czas. |
CommandResult
|
runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego. Przerywa działanie, jeśli trwa ono dłużej niż określony czas, i przekierowuje dane wyjściowe do plików, jeśli jest to określone. |
CommandResult
|
runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego i przerywania go, jeśli trwa dłużej niż określony czas. |
boolean
|
runTimedRetry(long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Blokuje i wykonuje operację wielokrotnie, dopóki nie zakończy się ona powodzeniem. |
boolean
|
runTimedRetryWithOutputMonitor(long opTimeout, long idleOutputTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Blokuje i wykonuje operację wielokrotnie, dopóki nie zakończy się ona powodzeniem. |
CommandStatus
|
runTimedWithOutputMonitor(long timeout, long idleOutputTimeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Blokuje i wykonuje operację, przerywając ją, jeśli trwa dłużej niż określony czas. |
void
|
setEnvVariable(String name, String value)
Ustawia zmienną środowiskową, która będzie używana podczas wykonywania poleceń systemowych. |
void
|
setEnvVariablePriority(IRunUtil.EnvPriority priority)
Określ, czy podczas tworzenia procesu wyłączenie zmiennej środowiskowej ma wyższy priorytet niż jej ustawienie. |
void
|
setInterruptibleInFuture(Thread thread, long timeMs)
Ustaw jako przerywalne po pewnym czasie oczekiwania. |
void
|
setLinuxInterruptProcess(boolean interrupt)
Zezwalaj na używanie przerwania „kill” w systemie Linux w przypadku procesów uruchomionych za pomocą metod #runTimed, gdy osiągną limit czasu. |
void
|
setRedirectStderrToStdout(boolean redirect)
Ustaw standardowy strumień błędów tak, aby podczas wykonywania poleceń systemowych przekierowywał do standardowego strumienia wyjściowego. |
void
|
setWorkingDir(File dir)
Ustawia katalog roboczy dla poleceń systemowych. |
void
|
sleep(long time)
Metoda pomocnicza do spania przez określony czas z ignorowaniem wszelkich wyjątków. |
void
|
unsetEnvVariable(String key)
Usuwa zmienną środowiskową, dzięki czemu polecenia systemowe są uruchamiane bez tej zmiennej.
Zmienne środowiskowe mogą być dziedziczone z procesu nadrzędnego, dlatego musimy usunąć zmienną środowiskową z |
Stałe
INHERITIO_PREFIX
public static final String INHERITIO_PREFIX
Stała wartość: "inheritio-"
RUNNABLE_NOTIFIER_NAME
public static final String RUNNABLE_NOTIFIER_NAME
Constant Value: "RunnableNotifier"
Publiczne konstruktory
RunUtil
public RunUtil (boolean inheritEnvVars)
| Parametry | |
|---|---|
inheritEnvVars |
boolean |
Metody publiczne
allowInterrupt
public void allowInterrupt (boolean allow)
Zezwala na przerywanie działania bieżącego wątku lub nie zezwala na nie. Jeśli jest to dozwolone, operacje bieżącego wątku można przerwać z innych wątków za pomocą metody interrupt(Thread, String).
| Parametry | |
|---|---|
allow |
boolean: czy zezwalać na przerwanie działania w bieżącym wątku. |
createProcessBuilder
public ProcessBuilder createProcessBuilder (Redirect redirect,
commandList,
boolean enableCache) | Parametry | |
|---|---|
redirect |
Redirect |
commandList |
|
enableCache |
boolean |
| Zwroty | |
|---|---|
ProcessBuilder |
|
getDefault
public static IRunUtil getDefault ()
Uzyskaj odniesienie do domyślnego obiektu RunUtil.
Jest to przydatne dla osób dzwoniących, które chcą korzystać z IRunUtil bez dostosowywania.
Zalecamy, aby dzwoniący, którzy potrzebują niestandardowej instancji IRunUtil (np. muszą wywołać setEnvVariable(String, String) lub setWorkingDir(File)), utworzyli własną kopię.
| Zwroty | |
|---|---|
IRunUtil |
|
przerwać,
public void interrupt (Thread thread,
String message,
ErrorIdentifier errorId)Przerywa trwające lub nadchodzące operacje uruchamiania w danym wątku. Operacje uruchamiane w danym wątku będą zgłaszać wyjątek RunInterruptedException.
| Parametry | |
|---|---|
message |
String: wiadomość dotycząca: RunInterruptedException. |
errorId |
ErrorIdentifier: podanie przyczyny przerwy, jeśli jest znana. |
przerwać,
public void interrupt (Thread thread,
String message)Przerywa trwające lub nadchodzące operacje uruchamiania w danym wątku. Operacje uruchamiane w danym wątku będą zgłaszać wyjątek RunInterruptedException.
| Parametry | |
|---|---|
message |
String: wiadomość dotycząca: RunInterruptedException. |
isInterruptAllowed
public boolean isInterruptAllowed ()
Zwraca stan przerwania RunUtil.
| Zwroty | |
|---|---|
boolean |
Wartość true, jeśli działanie można przerwać. W przeciwnym razie wartość false. |
runCmdInBackground
public Process runCmdInBackground (Redirect redirect,
command) Alternatywna metoda runCmdInBackground(String), która akceptuje argumenty polecenia w formie ERROR(/List).
| Parametry | |
|---|---|
redirect |
Redirect: ERROR(/Redirect), który ma zostać zastosowany do ProcessBuilder. |
command |
: ERROR(/List) zawierający określone polecenie systemowe i opcjonalnie argumenty do wykonania. |
| Zwroty | |
|---|---|
Process |
Process wykonanego polecenia, |
runCmdInBackground
public Process runCmdInBackground (command)
Alternatywna metoda runCmdInBackground(String), która akceptuje argumenty polecenia w formie ERROR(/List).
| Parametry | |
|---|---|
command |
: ERROR(/List) zawierający określone polecenie systemowe i opcjonalnie argumenty do wykonania |
| Zwroty | |
|---|---|
Process |
Process wykonanego polecenia, |
runCmdInBackground
public Process runCmdInBackground (command, OutputStream output)
Uruchom polecenie z parametrem ERROR(/OutputStream), aby zarejestrować dane wyjściowe polecenia.
Stdout i stderr są połączone.
| Parametry | |
|---|---|
command |
: polecenie do uruchomienia |
output |
OutputStream: OutputStream do zapisania danych wyjściowych. |
| Zwroty | |
|---|---|
Process |
Process uruchamiający polecenie, |
runCmdInBackground
public Process runCmdInBackground (String... command)
Metoda pomocnicza do asynchronicznego wykonywania polecenia systemowego.
Zwraca wartość natychmiast po uruchomieniu polecenia.
| Parametry | |
|---|---|
command |
String: określone polecenie systemowe i opcjonalnie argumenty do wykonania |
| Zwroty | |
|---|---|
Process |
Process wykonanego polecenia, |
runCmdInBackground
public Process runCmdInBackground (Redirect redirect,
String... command)Metoda pomocnicza do asynchronicznego wykonywania polecenia systemowego.
Zwraca wartość natychmiast po uruchomieniu polecenia.
| Parametry | |
|---|---|
redirect |
Redirect: ERROR(/Redirect), który ma zostać zastosowany do ProcessBuilder. |
command |
String: określone polecenie systemowe i opcjonalnie argumenty do wykonania |
| Zwroty | |
|---|---|
Process |
Process wykonanego polecenia, |
runEscalatingTimedRetry
public boolean runEscalatingTimedRetry (long opTimeout,
long initialPollInterval,
long maxPollInterval,
long maxTime,
IRunUtil.IRunnableResult runnable)Blokuje i wykonuje operację wielokrotnie, dopóki nie zakończy się ona powodzeniem.
Wydłużaj czas oczekiwania między kolejnymi próbami operacji w sposób wykładniczy. Jest to przydatne podczas wykonywania operacji takich jak odpytywanie serwera, aby dać mu czas na przywrócenie działania w przypadku tymczasowej awarii.
| Parametry | |
|---|---|
opTimeout |
long: maksymalny czas oczekiwania w milisekundach na pojedynczą próbę operacji. |
initialPollInterval |
long: początkowy czas oczekiwania między próbami operacji. |
maxPollInterval |
long: maksymalny czas oczekiwania między próbami operacji. |
maxTime |
long: łączny przybliżony maksymalny czas ponawiania operacji; |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult do wykonania |
| Zwroty | |
|---|---|
boolean |
true, jeśli operacja zakończyła się przed upływem maksymalnego czasu |
runFixedTimedRetry
public boolean runFixedTimedRetry (long opTimeout,
long pollInterval,
long maxTime,
IRunUtil.IRunnableResult runnable)Blokuje i wykonuje operację wielokrotnie, dopóki nie zakończy się ona powodzeniem.
| Parametry | |
|---|---|
opTimeout |
long: maksymalny czas oczekiwania w milisekundach na pojedynczą próbę operacji. |
pollInterval |
long: początkowy czas oczekiwania między próbami operacji. |
maxTime |
long: łączny przybliżony maksymalny czas ponawiania próby wykonania operacji; |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult do wykonania |
| Zwroty | |
|---|---|
boolean |
true, jeśli operacja zakończyła się przed upływem maksymalnego czasu |
runFixedTimedRetryWithOutputMonitor
public boolean runFixedTimedRetryWithOutputMonitor (long opTimeout,
long idleOutputTimeout,
long pollInterval,
long maxTime,
IRunUtil.IRunnableResult runnable)Blokuje i wykonuje operację wielokrotnie, dopóki nie zakończy się ona powodzeniem. Monitoruje też strumienie wyjściowe pod kątem aktywności i przerywa działanie, jeśli przez określony czas nie wykryje żadnej aktywności. Jeśli wartość idleOutputTimeout jest ustawiona na zero, monitorowanie strumienia nie będzie się odbywać.
| Parametry | |
|---|---|
opTimeout |
long: maksymalny czas oczekiwania w milisekundach na pojedynczą próbę operacji. |
idleOutputTimeout |
long: maksymalny czas oczekiwania w milisekundach na dane wyjściowe w strumieniach wyjściowych. |
pollInterval |
long: początkowy czas oczekiwania między próbami operacji. |
maxTime |
long: łączny przybliżony maksymalny czas ponawiania próby wykonania operacji; |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult do wykonania |
| Zwroty | |
|---|---|
boolean |
true, jeśli operacja zakończyła się przed upływem maksymalnego czasu |
runTimed
public CommandStatus runTimed (long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Blokuje i wykonuje operację, przerywając ją, jeśli trwa dłużej niż określony czas.
| Parametry | |
|---|---|
timeout |
long: maksymalny czas oczekiwania w milisekundach |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult do wykonania |
logErrors |
boolean: czy rejestrować błędy w przypadku wyjątku. |
| Zwroty | |
|---|---|
CommandStatus |
CommandStatuswynik operacji. |
runTimedCmd
public CommandResult runTimedCmd (long timeout, OutputStream stdout, OutputStream stderr, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego. Przerywa działanie, jeśli trwa ono dłużej niż określony czas, i przekierowuje dane wyjściowe do plików, jeśli jest to określone. Jeśli ERROR(/OutputStream) są podane w ten sposób, po zakończeniu działania funkcji pozostaną otwarte.
| Parametry | |
|---|---|
timeout |
long: maksymalny czas oczekiwania w milisekundach. 0 oznacza brak limitu czasu. |
stdout |
OutputStream: ERROR(/OutputStream) miejsce, do którego zostanie przekierowane standardowe wyjście. Może mieć wartość null. |
stderr |
OutputStream: ERROR(/OutputStream) miejsce, do którego zostanie przekierowane wyjście błędu. Może mieć wartość null. |
command |
String: określone polecenie systemowe i opcjonalnie argumenty do wykonania |
| Zwroty | |
|---|---|
CommandResult |
CommandResult zawierający wynik uruchomionego polecenia. |
runTimedCmd
public CommandResult runTimedCmd (long timeout, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego i przerywania go, jeśli trwa dłużej niż określony czas.
| Parametry | |
|---|---|
timeout |
long: maksymalny czas oczekiwania w milisekundach. 0 oznacza brak limitu czasu. |
command |
String: określone polecenie systemowe i opcjonalnie argumenty do wykonania |
| Zwroty | |
|---|---|
CommandResult |
CommandResult zawierający wynik uruchomionego polecenia. |
runTimedCmdRetry
public CommandResult runTimedCmdRetry (long timeout, long retryInterval, int attempts, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego i przerywania go, jeśli trwa dłużej niż określony czas.
| Parametry | |
|---|---|
timeout |
long: maksymalny czas oczekiwania w milisekundach dla każdej próby. |
retryInterval |
long: czas oczekiwania między ponownymi próbami wykonania polecenia |
attempts |
int: maksymalna liczba prób. |
command |
String: określone polecenie systemowe i opcjonalnie argumenty do wykonania |
| Zwroty | |
|---|---|
CommandResult |
CommandResult zawierający wynik uruchomionego polecenia. |
runTimedCmdRetryWithOutputMonitor
public CommandResult runTimedCmdRetryWithOutputMonitor (long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego i przerywania go, jeśli trwa dłużej niż określony czas. Monitoruje też strumienie wyjściowe pod kątem aktywności i przerywa działanie, jeśli przez określony czas nie wykryje żadnej aktywności. Jeśli wartość idleOutputTimeout jest ustawiona na zero, monitorowanie strumienia nie będzie się odbywać.
| Parametry | |
|---|---|
timeout |
long: maksymalny czas oczekiwania w milisekundach dla każdej próby. |
idleOutputTimeout |
long: maksymalny czas oczekiwania w milisekundach na dane wyjściowe w strumieniach wyjściowych. |
retryInterval |
long: czas oczekiwania między ponownymi próbami wykonania polecenia |
attempts |
int: maksymalna liczba prób. |
command |
String: określone polecenie systemowe i opcjonalnie argumenty do wykonania |
| Zwroty | |
|---|---|
CommandResult |
CommandResult zawierający wynik uruchomionego polecenia. |
runTimedCmdSilently
public CommandResult runTimedCmdSilently (long timeout, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego i przerywania go, jeśli trwa dłużej niż określony czas. Podobne do runTimedCmd(long, String), ale nie rejestruje żadnych błędów w przypadku wyjątku.
| Parametry | |
|---|---|
timeout |
long: maksymalny czas oczekiwania w milisekundach |
command |
String: określone polecenie systemowe i opcjonalnie argumenty do wykonania |
| Zwroty | |
|---|---|
CommandResult |
CommandResult zawierający wynik uruchomionego polecenia. |
runTimedCmdSilentlyRetry
public CommandResult runTimedCmdSilentlyRetry (long timeout, long retryInterval, int attempts, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego i przerywania go, jeśli trwa dłużej niż określony czas. Podobne do runTimedCmdRetry(long, long, int, String[]), ale nie rejestruje żadnych błędów w przypadku wyjątku.
| Parametry | |
|---|---|
timeout |
long: maksymalny czas oczekiwania w milisekundach |
retryInterval |
long: czas oczekiwania między ponownymi próbami wykonania polecenia |
attempts |
int: maksymalna liczba prób. |
command |
String: określone polecenie systemowe i opcjonalnie argumenty do wykonania |
| Zwroty | |
|---|---|
CommandResult |
CommandResult zawierający wynik uruchomionego polecenia. |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input, File stdoutFile, File stderrFile, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego. Przerywa działanie, jeśli trwa ono dłużej niż określony czas, i przekierowuje dane wyjściowe do plików, jeśli jest to określone.
| Parametry | |
|---|---|
timeout |
long: maksymalny czas oczekiwania w milisekundach. 0 oznacza brak limitu czasu. |
input |
String: dane wejściowe stdin do przekazania do procesu |
stdoutFile |
File: ERROR(/File) miejsce, do którego zostanie przekierowane standardowe wyjście. Może mieć wartość null. |
stderrFile |
File: ERROR(/File) miejsce, do którego zostaną przekierowane dane wyjściowe błędu. Może mieć wartość null. |
command |
String: określone polecenie systemowe i opcjonalnie argumenty do wykonania |
| Zwroty | |
|---|---|
CommandResult |
CommandResult zawierający wynik uruchomionego polecenia. |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego, które wymaga danych wejściowych stdin, i przerywania działania, jeśli trwa dłużej niż określony czas.
| Parametry | |
|---|---|
timeout |
long: maksymalny czas oczekiwania w milisekundach |
input |
String: dane wejściowe stdin do przekazania do procesu |
command |
String: określone polecenie systemowe i opcjonalnie argumenty do wykonania |
| Zwroty | |
|---|---|
CommandResult |
CommandResult zawierający wynik uruchomionego polecenia. |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input,command)
Metoda pomocnicza do wykonywania polecenia systemowego, które wymaga danych wejściowych stdin, i przerywania działania, jeśli trwa dłużej niż określony czas.
| Parametry | |
|---|---|
timeout |
long: maksymalny czas oczekiwania w milisekundach |
input |
String: dane wejściowe stdin do przekazania do procesu |
command |
: ERROR(/List) zawierający polecenie systemowe i opcjonalnie argumenty do wykonania |
| Zwroty | |
|---|---|
CommandResult |
CommandResult zawierający wynik uruchomionego polecenia. |
runTimedCmdWithInputRedirect
public CommandResult runTimedCmdWithInputRedirect (long timeout, File inputRedirect, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego, które wymaga przekierowania Stdin z pliku i przerwania działania, jeśli trwa dłużej niż określony czas.
| Parametry | |
|---|---|
timeout |
long: maksymalny czas oczekiwania w milisekundach |
inputRedirect |
File: ERROR(/File) do przekierowania jako standardowe dane wejściowe za pomocą ProcessBuilder.redirectInput(). Jeśli wartość to null, stdin nie zostanie przekierowany. |
command |
String: określone polecenie systemowe i opcjonalnie argumenty do wykonania |
| Zwroty | |
|---|---|
CommandResult |
CommandResult zawierający wynik uruchomionego polecenia. |
runTimedCmdWithOutputMonitor
public CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego. Przerywa działanie, jeśli trwa ono dłużej niż określony czas, i przekierowuje dane wyjściowe do plików, jeśli jest to określone. Jeśli ERROR(/OutputStream) są podane w ten sposób, po zakończeniu działania funkcji pozostaną otwarte.
| Parametry | |
|---|---|
timeout |
long: maksymalny czas oczekiwania w milisekundach. 0 oznacza brak limitu czasu. |
idleOutputTimeout |
long: maksymalny czas oczekiwania w milisekundach na dane wyjściowe w strumieniach wyjściowych. |
stdout |
OutputStream: ERROR(/OutputStream) miejsce przekierowania standardowego wyjścia. Może mieć wartość null. |
stderr |
OutputStream: ERROR(/OutputStream) miejsce, do którego zostanie przekierowane wyjście błędu. Może mieć wartość null. |
command |
String: określone polecenie systemowe i opcjonalnie argumenty do wykonania |
| Zwroty | |
|---|---|
CommandResult |
CommandResult zawierający wynik uruchomionego polecenia. |
runTimedCmdWithOutputMonitor
public CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, String... command)
Metoda pomocnicza do wykonywania polecenia systemowego i przerywania go, jeśli trwa dłużej niż określony czas. Monitoruje też strumienie wyjściowe pod kątem aktywności i przerywa działanie, jeśli przez określony czas nie wykryje żadnej aktywności. Jeśli wartość idleOutputTimeout jest ustawiona na zero, monitorowanie strumienia nie będzie się odbywać.
| Parametry | |
|---|---|
timeout |
long: maksymalny czas oczekiwania w milisekundach. 0 oznacza brak limitu czasu. |
idleOutputTimeout |
long: maksymalny czas oczekiwania w milisekundach na dane wyjściowe w strumieniach wyjściowych. |
command |
String: określone polecenie systemowe i opcjonalnie argumenty do wykonania |
| Zwroty | |
|---|---|
CommandResult |
CommandResult zawierający wynik uruchomionego polecenia. |
runTimedRetry
public boolean runTimedRetry (long opTimeout,
long pollInterval,
int attempts,
IRunUtil.IRunnableResult runnable)Blokuje i wykonuje operację wielokrotnie, dopóki nie zakończy się ona powodzeniem.
| Parametry | |
|---|---|
opTimeout |
long: maksymalny czas oczekiwania w milisekundach na jedną próbę operacji. |
pollInterval |
long: czas oczekiwania między ponownymi próbami wykonania polecenia |
attempts |
int: maksymalna liczba prób. |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult do wykonania |
| Zwroty | |
|---|---|
boolean |
true, jeśli operacja została ukończona przed osiągnięciem limitu prób. |
runTimedRetryWithOutputMonitor
public boolean runTimedRetryWithOutputMonitor (long opTimeout,
long idleOutputTimeout,
long pollInterval,
int attempts,
IRunUtil.IRunnableResult runnable)Blokuje i wykonuje operację wielokrotnie, dopóki nie zakończy się ona powodzeniem. Monitoruje też strumienie wyjściowe pod kątem aktywności i przerywa działanie, jeśli przez określony czas nie wykryje żadnej aktywności. Jeśli wartość idleOutputTimeout jest ustawiona na zero, monitorowanie strumienia nie będzie się odbywać.
| Parametry | |
|---|---|
opTimeout |
long: maksymalny czas oczekiwania w milisekundach na jedną próbę operacji. |
idleOutputTimeout |
long: maksymalny czas oczekiwania w milisekundach na dane wyjściowe w strumieniach wyjściowych. |
pollInterval |
long: czas oczekiwania między ponownymi próbami wykonania polecenia |
attempts |
int: maksymalna liczba prób. |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult do wykonania |
| Zwroty | |
|---|---|
boolean |
true, jeśli operacja została ukończona przed osiągnięciem limitu prób. |
runTimedWithOutputMonitor
public CommandStatus runTimedWithOutputMonitor (long timeout, long idleOutputTimeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Blokuje i wykonuje operację, przerywając ją, jeśli trwa dłużej niż określony czas. Monitoruje też strumienie wyjściowe pod kątem aktywności i przerywa działanie, jeśli przez określony czas nie wykryje żadnej aktywności w strumieniu. Jeśli wartość idleOutputTimeout jest ustawiona na zero, monitorowanie strumienia nie będzie się odbywać.
| Parametry | |
|---|---|
timeout |
long: maksymalny czas oczekiwania w milisekundach |
idleOutputTimeout |
long: maksymalny czas oczekiwania w milisekundach na dane wyjściowe w strumieniach wyjściowych. |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult do wykonania |
logErrors |
boolean: czy rejestrować błędy w przypadku wyjątku. |
| Zwroty | |
|---|---|
CommandStatus |
CommandStatuswynik operacji. |
setEnvVariable
public void setEnvVariable (String name,
String value)Ustawia zmienną środowiskową, która będzie używana podczas wykonywania poleceń systemowych.
| Parametry | |
|---|---|
name |
String: nazwa zmiennej; |
value |
String: wartość zmiennej |
setEnvVariablePriority
public void setEnvVariablePriority (IRunUtil.EnvPriority priority)
Określ, czy podczas tworzenia procesu wyłączenie zmiennej środowiskowej ma wyższy priorytet niż jej ustawienie.
Domyślnie wyższy priorytet ma usunięcie ustawienia, co oznacza, że jeśli podjęta zostanie próba ustawienia zmiennej o tej samej nazwie, nie powiedzie się ona, ponieważ zmienna zostanie usunięta.
Nie można go używać w przypadku domyślnej instancji IRunUtil.
| Parametry | |
|---|---|
priority |
IRunUtil.EnvPriority |
setInterruptibleInFuture
public void setInterruptibleInFuture (Thread thread,
long timeMs)Ustaw jako przerywalne po pewnym czasie oczekiwania.
ERROR(/CommandScheduler#shutdownHard()), aby wymusić ostateczne zakończenie.
| Parametry | |
|---|---|
thread |
Thread: wątek, który będzie można przerwać. |
timeMs |
long: czas oczekiwania przed ustawieniem stanu przerywalności. |
setLinuxInterruptProcess
public void setLinuxInterruptProcess (boolean interrupt)
Zezwalaj na używanie przerwania „kill” w systemie Linux w przypadku procesów uruchomionych za pomocą metod #runTimed, gdy osiągną limit czasu.
Nie można go używać w przypadku domyślnej instancji IRunUtil.
| Parametry | |
|---|---|
interrupt |
boolean |
setRedirectStderrToStdout
public void setRedirectStderrToStdout (boolean redirect)
Ustaw standardowy strumień błędów tak, aby podczas wykonywania poleceń systemowych przekierowywał do standardowego strumienia wyjściowego. Wartość początkowa to fałsz.
| Parametry | |
|---|---|
redirect |
boolean: nowa wartość określająca, czy przekierowywać |
setWorkingDir
public void setWorkingDir (File dir)
Ustawia katalog roboczy dla poleceń systemowych.
| Parametry | |
|---|---|
dir |
File: katalog roboczy |
do spania
public void sleep (long time)
Metoda pomocnicza do spania przez określony czas z ignorowaniem wszelkich wyjątków.
| Parametry | |
|---|---|
time |
long: ms to sleep. values less than or equal to 0 will be ignored |
unsetEnvVariable
public void unsetEnvVariable (String key)
Usuwa zmienną środowiskową, dzięki czemu polecenia systemowe są uruchamiane bez tej zmiennej.
Zmienne środowiskowe mogą być dziedziczone z procesu nadrzędnego, dlatego musimy usunąć zmienną środowiskową z ProcessBuilder.environment()
| Parametry | |
|---|---|
key |
String: nazwa zmiennej; |
Zobacz też: