RunUtil
public
class
RunUtil
extends Object
implements
IRunUtil
| java.lang.Object | |
| ↳ | com.android.tradefed.util.RunUtil |
Una raccolta di metodi helper per l'esecuzione di operazioni.
Riepilogo
Costanti | |
|---|---|
String |
INHERITIO_PREFIX
|
String |
RUNNABLE_NOTIFIER_NAME
|
Costruttori pubblici | |
|---|---|
RunUtil()
Crea un nuovo oggetto |
|
RunUtil(boolean inheritEnvVars)
|
|
Metodi pubblici | |
|---|---|
void
|
allowInterrupt(boolean allow)
Consente/non consente interruzioni di esecuzione sul thread corrente. |
ProcessBuilder
|
createProcessBuilder(ProcessBuilder.Redirect redirect, List<String> commandList, boolean enableCache)
|
static
IRunUtil
|
getDefault()
Ottieni un riferimento all'oggetto |
void
|
interrupt(Thread thread, String message, ErrorIdentifier errorId)
Interrompe le operazioni di esecuzione in corso/imminenti sul thread specificato. |
void
|
interrupt(Thread thread, String message)
Interrompe le operazioni di esecuzione in corso/imminenti sul thread specificato. |
boolean
|
isInterruptAllowed()
Restituisce lo stato di interruzione di RunUtil. |
Process
|
runCmdInBackground(ProcessBuilder.Redirect redirect, List<String> command)
Un metodo |
Process
|
runCmdInBackground(ProcessBuilder.Redirect redirect, String... command)
Metodo helper per eseguire un comando di sistema in modo asincrono. |
Process
|
runCmdInBackground(List<String> command)
Un metodo |
Process
|
runCmdInBackground(String... command)
Metodo helper per eseguire un comando di sistema in modo asincrono. |
Process
|
runCmdInBackground(List<String> command, OutputStream output)
L'esecuzione del comando con |
boolean
|
runEscalatingTimedRetry(long opTimeout, long initialPollInterval, long maxPollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Blocca ed esegue un'operazione più volte finché non ha esito positivo. |
boolean
|
runFixedTimedRetry(long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Blocca ed esegue un'operazione più volte finché non ha esito positivo. |
boolean
|
runFixedTimedRetryWithOutputMonitor(long opTimeout, long idleOutputTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Blocca ed esegue un'operazione più volte finché non ha esito positivo. |
CommandStatus
|
runTimed(long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Blocca ed esegue un'operazione, interrompendola se richiede più tempo di quello specificato. |
CommandResult
|
runTimedCmd(long timeout, String... command)
Metodo helper per eseguire un comando di sistema e interromperlo se richiede più tempo di quello specificato. |
CommandResult
|
runTimedCmd(long timeout, OutputStream stdout, OutputStream stderr, String... command)
Metodo helper per eseguire un comando di sistema, interrompere l'operazione se richiede più tempo di quello specificato e reindirizzare l'output ai file, se specificato. |
CommandResult
|
runTimedCmdRetry(long timeout, long retryInterval, int attempts, String... command)
Metodo helper per eseguire un comando di sistema e interromperlo se richiede più tempo di quello specificato. |
CommandResult
|
runTimedCmdRetryWithOutputMonitor(long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)
Metodo helper per eseguire un comando di sistema e interromperlo se richiede più tempo di quello specificato. |
CommandResult
|
runTimedCmdSilently(long timeout, String... command)
Metodo helper per eseguire un comando di sistema e interromperlo se richiede più tempo di quello specificato. |
CommandResult
|
runTimedCmdSilentlyRetry(long timeout, long retryInterval, int attempts, String... command)
Metodo helper per eseguire un comando di sistema e interromperlo se richiede più tempo di quello specificato. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input, String... command)
Metodo helper per eseguire un comando di sistema che richiede l'input stdin e per interrompere l'esecuzione se richiede più tempo di quello specificato. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input, List<String> command)
Metodo helper per eseguire un comando di sistema che richiede l'input stdin e interrompere l'operazione se richiede più tempo di quello specificato. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input, File stdoutFile, File stderrFile, String... command)
Metodo helper per eseguire un comando di sistema, interrompere l'operazione se richiede più tempo di quello specificato e reindirizzare l'output ai file, se specificato. |
CommandResult
|
runTimedCmdWithInputRedirect(long timeout, File inputRedirect, String... command)
Metodo helper per eseguire un comando di sistema che richiede il reindirizzamento di Stdin da un file e l'interruzione se richiede più tempo di quello specificato. |
CommandResult
|
runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, String... command)
Metodo helper per eseguire un comando di sistema e interromperlo se richiede più tempo di quello specificato. |
CommandResult
|
runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)
Metodo helper per eseguire un comando di sistema, interrompere l'operazione se richiede più tempo di quello specificato e reindirizzare l'output ai file, se specificato. |
boolean
|
runTimedRetry(long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Blocca ed esegue un'operazione più volte finché non ha esito positivo. |
boolean
|
runTimedRetryWithOutputMonitor(long opTimeout, long idleOutputTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Blocca ed esegue un'operazione più volte finché non ha esito positivo. |
CommandStatus
|
runTimedWithOutputMonitor(long timeout, long idleOutputTimeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Blocca ed esegue un'operazione, interrompendola se richiede più tempo di quello specificato. |
void
|
setEnvVariable(String name, String value)
Imposta una variabile di ambiente da utilizzare durante l'esecuzione dei comandi di sistema. |
void
|
setEnvVariablePriority(IRunUtil.EnvPriority priority)
Decidi se, durante la creazione di un processo, l'annullamento dell'impostazione della variabile di ambiente abbia una priorità superiore rispetto alla sua impostazione. |
void
|
setInterruptibleInFuture(Thread thread, long timeMs)
Impostato come interrompibile dopo un determinato periodo di attesa. |
void
|
setLinuxInterruptProcess(boolean interrupt)
Consente di utilizzare l'interruzione "kill" di Linux per il processo in esecuzione tramite i metodi #runTimed quando raggiunge un timeout. |
void
|
setRedirectStderrToStdout(boolean redirect)
Imposta il flusso di errori standard in modo che venga reindirizzato al flusso di output standard quando esegui comandi di sistema. |
void
|
setWorkingDir(File dir)
Imposta la directory di lavoro per i comandi di sistema. |
void
|
sleep(long time)
Metodo helper per sospendere l'esecuzione per un determinato periodo di tempo, ignorando eventuali eccezioni. |
void
|
unsetEnvVariable(String key)
Annulla l'impostazione di una variabile di ambiente, in modo che i comandi di sistema vengano eseguiti senza questa variabile di ambiente.
Le variabili di ambiente potrebbero essere ereditate dal processo padre, quindi dobbiamo eliminare
la variabile di ambiente da |
Costanti
INHERITIO_PREFIX
public static final String INHERITIO_PREFIX
Valore costante: "inheritio-"
RUNNABLE_NOTIFIER_NAME
public static final String RUNNABLE_NOTIFIER_NAME
Valore costante: "RunnableNotifier"
Costruttori pubblici
RunUtil
public RunUtil (boolean inheritEnvVars)
| Parametri | |
|---|---|
inheritEnvVars |
boolean |
Metodi pubblici
allowInterrupt
public void allowInterrupt (boolean allow)
Consente/non consente interruzioni di esecuzione sul thread corrente. Se è consentito, le operazioni del
thread corrente possono essere interrotte da altri thread tramite il metodo interrupt(Thread, String).
| Parametri | |
|---|---|
allow |
boolean: indica se consentire le interruzioni di esecuzione sul thread corrente. |
createProcessBuilder
public ProcessBuilder createProcessBuilder (ProcessBuilder.Redirect redirect,
List<String> commandList,
boolean enableCache)| Parametri | |
|---|---|
redirect |
ProcessBuilder.Redirect |
commandList |
List |
enableCache |
boolean |
| Resi | |
|---|---|
ProcessBuilder |
|
getDefault
public static IRunUtil getDefault ()
Ottieni un riferimento all'oggetto RunUtil predefinito.
Questa opzione è utile per i chiamanti che vogliono utilizzare IRunUtil senza personalizzazione.
È consigliabile che i chiamanti che hanno bisogno di un'istanza IRunUtil personalizzata
(ad es. devono chiamare setEnvVariable(String,String) o
setWorkingDir(File) creino la propria copia.
| Resi | |
|---|---|
IRunUtil |
|
interrompere
public void interrupt (Thread thread,
String message,
ErrorIdentifier errorId)Interrompe le operazioni di esecuzione in corso/imminenti sul thread specificato. Le operazioni di esecuzione sul thread specificato genereranno RunInterruptedException.
| Parametri | |
|---|---|
message |
String: il messaggio per RunInterruptedException. |
errorId |
ErrorIdentifier: rappresenta la causa dell'interruzione, se nota. |
interrompere
public void interrupt (Thread thread,
String message)Interrompe le operazioni di esecuzione in corso/imminenti sul thread specificato. Le operazioni di esecuzione sul thread specificato genereranno RunInterruptedException.
| Parametri | |
|---|---|
message |
String: il messaggio per RunInterruptedException. |
isInterruptAllowed
public boolean isInterruptAllowed ()
Restituisce lo stato di interruzione di RunUtil.
| Resi | |
|---|---|
boolean |
true se l'esecuzione può essere interrotta, false in caso contrario. |
runCmdInBackground
public Process runCmdInBackground (ProcessBuilder.Redirect redirect,
List<String> command)Un metodo runCmdInBackground(String...) alternativo che accetta gli argomenti del comando
nel formato List.
| Parametri | |
|---|---|
redirect |
ProcessBuilder.Redirect: il Redirect da applicare al ProcessBuilder. |
command |
List: il List contenente il comando di sistema specificato e, facoltativamente, gli argomenti
da eseguire |
| Resi | |
|---|---|
Process |
il Process del comando eseguito |
| Genera | |
|---|---|
IOException |
|
runCmdInBackground
public Process runCmdInBackground (ProcessBuilder.Redirect redirect,
String... command)Metodo helper per eseguire un comando di sistema in modo asincrono.
Verrà restituito immediatamente dopo l'esecuzione del comando.
| Parametri | |
|---|---|
redirect |
ProcessBuilder.Redirect: il Redirect da applicare al ProcessBuilder. |
command |
String: il comando di sistema specificato e, facoltativamente, gli argomenti da eseguire |
| Resi | |
|---|---|
Process |
il Process del comando eseguito |
| Genera | |
|---|---|
IOException |
|
runCmdInBackground
public Process runCmdInBackground (List<String> command)
Un metodo runCmdInBackground(String...) alternativo che accetta gli argomenti del comando
nel formato List.
| Parametri | |
|---|---|
command |
List: il List contenente il comando di sistema specificato e, facoltativamente, gli argomenti
da eseguire |
| Resi | |
|---|---|
Process |
il Process del comando eseguito |
| Genera | |
|---|---|
IOException |
|
runCmdInBackground
public Process runCmdInBackground (String... command)
Metodo helper per eseguire un comando di sistema in modo asincrono.
Verrà restituito immediatamente dopo l'esecuzione del comando.
| Parametri | |
|---|---|
command |
String: il comando di sistema specificato e, facoltativamente, gli argomenti da eseguire |
| Resi | |
|---|---|
Process |
il Process del comando eseguito |
| Genera | |
|---|---|
IOException |
|
runCmdInBackground
public Process runCmdInBackground (List<String> command,
OutputStream output)L'esecuzione del comando con OutputStream registra l'output del comando.
Stdout e stderr vengono uniti.
| Parametri | |
|---|---|
command |
List: il comando da eseguire |
output |
OutputStream: l'OutputStream per salvare l'output |
| Resi | |
|---|---|
Process |
il Process che esegue il comando |
| Genera | |
|---|---|
IOException |
|
runEscalatingTimedRetry
public boolean runEscalatingTimedRetry (long opTimeout,
long initialPollInterval,
long maxPollInterval,
long maxTime,
IRunUtil.IRunnableResult runnable)Blocca ed esegue un'operazione più volte finché non ha esito positivo.
Aumenta in modo esponenziale il tempo di attesa tra i tentativi di operazione. Questo valore deve essere utilizzato quando esegui un'operazione come il polling di un server, per dargli il tempo di ripristinarsi nel caso in cui non sia temporaneamente disponibile.
| Parametri | |
|---|---|
opTimeout |
long: il tempo massimo di attesa in millisecondi per un singolo tentativo di operazione |
initialPollInterval |
long: tempo di attesa iniziale tra i tentativi di operazione |
maxPollInterval |
long: il tempo massimo di attesa tra i tentativi di operazione |
maxTime |
long: il tempo massimo approssimativo totale per continuare a tentare l'operazione |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult da eseguire |
| Resi | |
|---|---|
boolean |
true se l'operazione è stata completata correttamente prima della scadenza di maxTime |
runFixedTimedRetry
public boolean runFixedTimedRetry (long opTimeout,
long pollInterval,
long maxTime,
IRunUtil.IRunnableResult runnable)Blocca ed esegue un'operazione più volte finché non ha esito positivo.
| Parametri | |
|---|---|
opTimeout |
long: il tempo massimo di attesa in millisecondi per un singolo tentativo di operazione |
pollInterval |
long: tempo di attesa iniziale tra i tentativi di operazione |
maxTime |
long: il tempo massimo approssimativo totale per continuare a tentare l'operazione |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult da eseguire |
| Resi | |
|---|---|
boolean |
true se l'operazione è stata completata correttamente prima della scadenza di maxTime |
runFixedTimedRetryWithOutputMonitor
public boolean runFixedTimedRetryWithOutputMonitor (long opTimeout,
long idleOutputTimeout,
long pollInterval,
long maxTime,
IRunUtil.IRunnableResult runnable)Blocca ed esegue un'operazione più volte finché non ha esito positivo. Monitora anche i flussi di output per l'attività, interrompendoli se non viene osservata alcuna attività di streaming per un periodo di tempo specificato. Se idleOutputTimeout è impostato su zero, non verrà eseguito alcun monitoraggio dello stream.
| Parametri | |
|---|---|
opTimeout |
long: il tempo massimo di attesa in millisecondi per un singolo tentativo di operazione |
idleOutputTimeout |
long: il tempo massimo di attesa in ms per l'output nei flussi di output |
pollInterval |
long: tempo di attesa iniziale tra i tentativi di operazione |
maxTime |
long: il tempo massimo approssimativo totale per continuare a tentare l'operazione |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult da eseguire |
| Resi | |
|---|---|
boolean |
true se l'operazione è stata completata correttamente prima della scadenza di maxTime |
runTimed
public CommandStatus runTimed (long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Blocca ed esegue un'operazione, interrompendola se richiede più tempo di quello specificato.
| Parametri | |
|---|---|
timeout |
long: tempo massimo di attesa in ms |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult da eseguire |
logErrors |
boolean: registra gli errori in caso di eccezione o meno. |
| Resi | |
|---|---|
CommandStatus |
il risultato dell'operazione CommandStatus. |
runTimedCmd
public CommandResult runTimedCmd (long timeout, String... command)
Metodo helper per eseguire un comando di sistema e interromperlo se richiede più tempo di quello specificato.
| Parametri | |
|---|---|
timeout |
long: tempo massimo di attesa in millisecondi. 0 significa nessun timeout. |
command |
String: il comando di sistema specificato e, facoltativamente, gli argomenti da eseguire |
| Resi | |
|---|---|
CommandResult |
un CommandResult contenente il risultato dell'esecuzione del comando |
runTimedCmd
public CommandResult runTimedCmd (long timeout, OutputStream stdout, OutputStream stderr, String... command)
Metodo helper per eseguire un comando di sistema, interrompere l'operazione se richiede più tempo di quello specificato
e reindirizzare l'output ai file, se specificato. Quando OutputStream vengono forniti in questo modo,
rimarranno aperti al termine della funzione.
| Parametri | |
|---|---|
timeout |
long: tempo massimo di attesa in millisecondi. 0 significa nessun timeout. |
stdout |
OutputStream: OutputStream in cui verrà reindirizzato l'output standard. Può essere null. |
stderr |
OutputStream: OutputStream in cui verrà reindirizzato l'output degli errori. Può essere null. |
command |
String: il comando di sistema specificato e, facoltativamente, gli argomenti da eseguire |
| Resi | |
|---|---|
CommandResult |
un CommandResult contenente il risultato dell'esecuzione del comando |
runTimedCmdRetry
public CommandResult runTimedCmdRetry (long timeout, long retryInterval, int attempts, String... command)
Metodo helper per eseguire un comando di sistema e interromperlo se richiede più tempo di quello specificato.
| Parametri | |
|---|---|
timeout |
long: il tempo massimo di attesa in millisecondi per ogni tentativo |
retryInterval |
long: tempo di attesa tra i tentativi di comando |
attempts |
int: il numero massimo di tentativi da provare |
command |
String: il comando di sistema specificato e, facoltativamente, gli argomenti da eseguire |
| Resi | |
|---|---|
CommandResult |
un CommandResult contenente il risultato dell'esecuzione del comando |
runTimedCmdRetryWithOutputMonitor
public CommandResult runTimedCmdRetryWithOutputMonitor (long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)
Metodo helper per eseguire un comando di sistema e interromperlo se richiede più tempo di quello specificato. Monitora anche i flussi di output per l'attività, interrompendola se non viene osservata alcuna attività di flusso per un periodo di tempo specificato. Se idleOutputTimeout è impostato su zero, non verrà eseguito alcun monitoraggio dello stream.
| Parametri | |
|---|---|
timeout |
long: il tempo massimo di attesa in millisecondi per ogni tentativo |
idleOutputTimeout |
long: il tempo massimo di attesa in ms per l'output nei flussi di output |
retryInterval |
long: tempo di attesa tra i tentativi di comando |
attempts |
int: il numero massimo di tentativi da provare |
command |
String: il comando di sistema specificato e, facoltativamente, gli argomenti da eseguire |
| Resi | |
|---|---|
CommandResult |
un CommandResult contenente il risultato dell'esecuzione del comando |
runTimedCmdSilently
public CommandResult runTimedCmdSilently (long timeout, String... command)
Metodo helper per eseguire un comando di sistema e interromperlo se richiede più tempo di quello specificato. Simile a runTimedCmd(long,String...), ma non registra errori in caso di eccezione.
| Parametri | |
|---|---|
timeout |
long: tempo massimo di attesa in ms |
command |
String: il comando di sistema specificato e, facoltativamente, gli argomenti da eseguire |
| Resi | |
|---|---|
CommandResult |
un CommandResult contenente il risultato dell'esecuzione del comando |
runTimedCmdSilentlyRetry
public CommandResult runTimedCmdSilentlyRetry (long timeout, long retryInterval, int attempts, String... command)
Metodo helper per eseguire un comando di sistema e interromperlo se richiede più tempo di quello specificato. Simile a runTimedCmdRetry(long,long,int,String[]),
ma non registra errori in caso di eccezione.
| Parametri | |
|---|---|
timeout |
long: tempo massimo di attesa in ms |
retryInterval |
long: tempo di attesa tra i tentativi di comando |
attempts |
int: il numero massimo di tentativi da provare |
command |
String: il comando di sistema specificato e, facoltativamente, gli argomenti da eseguire |
| Resi | |
|---|---|
CommandResult |
un CommandResult contenente il risultato dell'esecuzione del comando |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input, String... command)
Metodo helper per eseguire un comando di sistema che richiede l'input stdin e interrompere l'operazione se richiede più tempo di quello specificato.
| Parametri | |
|---|---|
timeout |
long: tempo massimo di attesa in ms |
input |
String: l'input stdin da passare al processo |
command |
String: il comando di sistema specificato e, facoltativamente, gli argomenti da eseguire |
| Resi | |
|---|---|
CommandResult |
un CommandResult contenente il risultato dell'esecuzione del comando |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input, List<String> command)
Metodo helper per eseguire un comando di sistema che richiede l'input stdin e interrompere l'operazione se richiede più tempo di quello specificato.
| Parametri | |
|---|---|
timeout |
long: tempo massimo di attesa in ms |
input |
String: l'input stdin da passare al processo |
command |
List: List contenente il comando di sistema e, facoltativamente, gli argomenti da eseguire |
| Resi | |
|---|---|
CommandResult |
un CommandResult contenente il risultato dell'esecuzione del comando |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input, File stdoutFile, File stderrFile, String... command)
Metodo helper per eseguire un comando di sistema, interrompere l'operazione se richiede più tempo di quello specificato e reindirizzare l'output ai file, se specificato.
| Parametri | |
|---|---|
timeout |
long: tempo massimo di attesa in millisecondi. 0 significa nessun timeout. |
input |
String: l'input stdin da passare al processo |
stdoutFile |
File: File in cui verrà reindirizzato l'output standard. Può essere null. |
stderrFile |
File: File in cui verrà reindirizzato l'output degli errori. Può essere null. |
command |
String: il comando di sistema specificato e, facoltativamente, gli argomenti da eseguire |
| Resi | |
|---|---|
CommandResult |
un CommandResult contenente il risultato dell'esecuzione del comando |
runTimedCmdWithInputRedirect
public CommandResult runTimedCmdWithInputRedirect (long timeout, File inputRedirect, String... command)
Metodo helper per eseguire un comando di sistema che richiede il reindirizzamento di Stdin da un file e l'interruzione se richiede più tempo di quello specificato.
| Parametri | |
|---|---|
timeout |
long: tempo massimo di attesa in ms |
inputRedirect |
File: il File da reindirizzare come input standard utilizzando ProcessBuilder.redirectInput(). Se è null, stdin non verrà reindirizzato. |
command |
String: il comando di sistema specificato e, facoltativamente, gli argomenti da eseguire |
| Resi | |
|---|---|
CommandResult |
un CommandResult contenente il risultato dell'esecuzione del comando |
runTimedCmdWithOutputMonitor
public CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, String... command)
Metodo helper per eseguire un comando di sistema e interromperlo se richiede più tempo di quello specificato. Monitora anche i flussi di output per l'attività, interrompendola se non viene osservata alcuna attività di flusso per un periodo di tempo specificato. Se idleOutputTimeout è impostato su zero, non verrà eseguito alcun monitoraggio dello stream.
| Parametri | |
|---|---|
timeout |
long: tempo massimo di attesa in millisecondi. 0 significa nessun timeout. |
idleOutputTimeout |
long: il tempo massimo di attesa in ms per l'output nei flussi di output |
command |
String: il comando di sistema specificato e, facoltativamente, gli argomenti da eseguire |
| Resi | |
|---|---|
CommandResult |
un CommandResult contenente il risultato dell'esecuzione del comando |
runTimedCmdWithOutputMonitor
public CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)
Metodo helper per eseguire un comando di sistema, interrompere l'operazione se richiede più tempo di quello specificato
e reindirizzare l'output ai file, se specificato. Quando OutputStream vengono forniti in questo modo,
rimarranno aperti al termine della funzione.
| Parametri | |
|---|---|
timeout |
long: tempo massimo di attesa in millisecondi. 0 significa nessun timeout. |
idleOutputTimeout |
long: il tempo massimo di attesa in millisecondi per l'output nei flussi di output |
stdout |
OutputStream: OutputStream in cui verrà reindirizzato l'output standard. Può essere null. |
stderr |
OutputStream: OutputStream in cui verrà reindirizzato l'output degli errori. Può essere null. |
command |
String: il comando di sistema specificato e, facoltativamente, gli argomenti da eseguire |
| Resi | |
|---|---|
CommandResult |
un CommandResult contenente il risultato dell'esecuzione del comando |
runTimedRetry
public boolean runTimedRetry (long opTimeout,
long pollInterval,
int attempts,
IRunUtil.IRunnableResult runnable)Blocca ed esegue un'operazione più volte finché non ha esito positivo.
| Parametri | |
|---|---|
opTimeout |
long: il tempo massimo di attesa in millisecondi per un tentativo di operazione |
pollInterval |
long: tempo di attesa tra i tentativi di comando |
attempts |
int: il numero massimo di tentativi da provare |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult da eseguire |
| Resi | |
|---|---|
boolean |
true se l'operazione è stata completata correttamente prima del raggiungimento del numero di tentativi. |
runTimedRetryWithOutputMonitor
public boolean runTimedRetryWithOutputMonitor (long opTimeout,
long idleOutputTimeout,
long pollInterval,
int attempts,
IRunUtil.IRunnableResult runnable)Blocca ed esegue un'operazione più volte finché non ha esito positivo. Monitora anche i flussi di output per l'attività, interrompendoli se non viene osservata alcuna attività di streaming per un periodo di tempo specificato. Se idleOutputTimeout è impostato su zero, non verrà eseguito alcun monitoraggio dello stream.
| Parametri | |
|---|---|
opTimeout |
long: il tempo massimo di attesa in millisecondi per un tentativo di operazione |
idleOutputTimeout |
long: il tempo massimo di attesa in ms per l'output nei flussi di output |
pollInterval |
long: tempo di attesa tra i tentativi di comando |
attempts |
int: il numero massimo di tentativi da provare |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult da eseguire |
| Resi | |
|---|---|
boolean |
true se l'operazione è stata completata correttamente prima del raggiungimento del numero di tentativi. |
runTimedWithOutputMonitor
public CommandStatus runTimedWithOutputMonitor (long timeout, long idleOutputTimeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Blocca ed esegue un'operazione, interrompendola se richiede più tempo di quello specificato. Inoltre, monitora i flussi di output per rilevare attività, interrompendoli se non viene osservata alcuna attività di streaming per un periodo di tempo specificato. Se idleOutputTimeout è impostato su zero, non verrà eseguito alcun monitoraggio dello stream.
| Parametri | |
|---|---|
timeout |
long: tempo massimo di attesa in ms |
idleOutputTimeout |
long: il tempo massimo di attesa in ms per l'output nei flussi di output |
runnable |
IRunUtil.IRunnableResult: IRunUtil.IRunnableResult da eseguire |
logErrors |
boolean: registra gli errori in caso di eccezione o meno. |
| Resi | |
|---|---|
CommandStatus |
il risultato dell'operazione CommandStatus. |
setEnvVariable
public void setEnvVariable (String name,
String value)Imposta una variabile di ambiente da utilizzare durante l'esecuzione dei comandi di sistema.
| Parametri | |
|---|---|
name |
String: il nome della variabile |
value |
String: il valore della variabile |
setEnvVariablePriority
public void setEnvVariablePriority (IRunUtil.EnvPriority priority)
Decidi se, durante la creazione di un processo, l'annullamento dell'impostazione della variabile di ambiente abbia una priorità superiore rispetto alla sua impostazione.
Per impostazione predefinita, l'annullamento dell'impostazione ha la priorità più alta: ciò significa che se viene effettuato un tentativo di impostare una variabile con lo stesso nome, l'operazione non andrà a buon fine perché la variabile verrà annullata.
Non può essere utilizzato sull'istanza IRunUtil predefinita.
| Parametri | |
|---|---|
priority |
IRunUtil.EnvPriority |
setInterruptibleInFuture
public void setInterruptibleInFuture (Thread thread,
long timeMs)Impostato come interrompibile dopo un determinato periodo di attesa.
ERROR(/CommandScheduler#shutdownHard()) per far sì che la terminazione venga applicata.
| Parametri | |
|---|---|
thread |
Thread: il thread che diventerà interrompibile. |
timeMs |
long: tempo di attesa prima di impostare l'interruzione. |
setLinuxInterruptProcess
public void setLinuxInterruptProcess (boolean interrupt)
Consente di utilizzare l'interruzione "kill" di Linux per il processo in esecuzione tramite i metodi #runTimed quando
raggiunge un timeout.
Non può essere utilizzato sull'istanza IRunUtil predefinita.
| Parametri | |
|---|---|
interrupt |
boolean |
setRedirectStderrToStdout
public void setRedirectStderrToStdout (boolean redirect)
Imposta il flusso di errori standard in modo che venga reindirizzato al flusso di output standard quando esegui comandi di sistema. Il valore iniziale è false.
| Parametri | |
|---|---|
redirect |
boolean: nuovo valore per indicare se reindirizzare o meno |
setWorkingDir
public void setWorkingDir (File dir)
Imposta la directory di lavoro per i comandi di sistema.
| Parametri | |
|---|---|
dir |
File: la directory di lavoro |
sonno
public void sleep (long time)
Metodo helper per sospendere l'esecuzione per un determinato periodo di tempo, ignorando eventuali eccezioni.
| Parametri | |
|---|---|
time |
long: ms to sleep. values less than or equal to 0 will be ignored |
unsetEnvVariable
public void unsetEnvVariable (String key)
Annulla l'impostazione di una variabile di ambiente, in modo che i comandi di sistema vengano eseguiti senza questa variabile di ambiente.
Le variabili di ambiente potrebbero essere ereditate dal processo padre, quindi dobbiamo eliminare
la variabile di ambiente da ProcessBuilder.environment()
| Parametri | |
|---|---|
key |
String: il nome della variabile |
Vedi anche: