IRunUtil

public interface IRunUtil

com.android.tradefed.util.IRunUtil


Interfaccia per l'esecuzione di operazioni temporizzate e comandi di sistema.

Riepilogo

Classi nidificate

interface IRunUtil.IRunnableResult

Un'interfaccia per l'esecuzione asincrona di un'operazione che restituisce uno stato booleano. 

Metodi pubblici

abstract void allowInterrupt(boolean allow)

Consente/disattiva le interruzioni di esecuzione nel thread corrente.

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

Interrompe le operazioni di esecuzione in corso/future sul thread specificato.

abstract void interrupt(Thread thread, String message)

Interrompe le operazioni di esecuzione in corso/future sul thread specificato.

abstract boolean isInterruptAllowed()

Fornisce lo stato di interruzione di RunUtil.

abstract Process runCmdInBackground(Redirect redirect, command)

Un metodo runCmdInBackground(String) alternativo che accetta gli argomenti del comando in forma ERROR(/List).

abstract Process runCmdInBackground( command)

Un metodo runCmdInBackground(String) alternativo che accetta gli argomenti del comando in forma ERROR(/List).

abstract Process runCmdInBackground( command, OutputStream output)

Esegui il comando con un ERROR(/OutputStream) per registrare l'output del comando.

abstract Process runCmdInBackground(String... command)

Metodo di supporto per eseguire un comando di sistema in modo asincrono.

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

Metodo di supporto per eseguire un comando di sistema in modo asincrono.

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

Blocca ed esegue un'operazione più volte finché non va a buon fine.

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

Blocca ed esegue un'operazione più volte finché non va a buon fine.

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

Blocca ed esegue un'operazione più volte finché non va a buon fine.

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

Blocca ed esegue un'operazione, interrompendola se richiede più tempo di quello specificato.

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

Metodo di supporto per eseguire un comando di sistema, interrompere l'esecuzione se il tempo necessario è superiore a quello specificato e reindirizzare l'output ai file, se specificato.

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

Metodo di supporto per eseguire un comando di sistema e interrompere l'operazione se richiede più tempo di quello specificato.

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

Metodo di supporto per eseguire un comando di sistema e interrompere l'operazione se richiede più tempo di quello specificato.

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

Metodo di supporto per eseguire un comando di sistema e interrompere l'operazione se richiede più tempo di quello specificato.

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

Metodo di supporto per eseguire un comando di sistema e interrompere l'operazione se richiede più tempo di quello specificato.

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

Metodo di supporto per eseguire un comando di sistema e interrompere l'operazione se richiede più tempo di quello specificato.

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

Metodo di supporto per eseguire un comando di sistema, interrompere l'esecuzione se il tempo necessario è superiore a quello specificato e reindirizzare l'output ai file, se specificato.

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

Metodo di supporto per eseguire un comando di sistema che richiede l'input stdin e interrompere l'esecuzione se richiede più tempo di quello specificato.

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

Metodo di supporto per eseguire un comando di sistema che richiede l'input stdin e interrompere l'esecuzione se richiede più tempo di quello specificato.

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

Metodo di supporto per eseguire un comando di sistema che richiede il reindirizzamento di Stdin da un file e l'interruzione se l'operazione richiede più tempo di quello specificato.

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

Metodo di supporto per eseguire un comando di sistema, interrompere l'esecuzione se il tempo necessario è superiore a quello specificato e reindirizzare l'output ai file, se specificato.

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

Metodo di supporto per eseguire un comando di sistema e interrompere l'operazione se richiede più tempo di quello specificato.

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

Metodo di supporto per eseguire un comando di sistema con memorizzazione nella cache.

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

Blocca ed esegue un'operazione più volte finché non va a buon fine.

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

Blocca ed esegue un'operazione più volte finché non va a buon fine.

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

Blocca ed esegue un'operazione, interrompendola se richiede più tempo di quello specificato.

abstract void setEnvVariable(String key, String value)

Imposta una variabile di ambiente da utilizzare durante l'esecuzione dei comandi di sistema.

abstract void setEnvVariablePriority(IRunUtil.EnvPriority priority)

Decidere se, durante la creazione di un processo, lo scollegamento della variabile di ambiente ha una priorità superiore rispetto alla sua impostazione.

abstract void setInterruptibleInFuture(Thread thread, long timeMs)

Impostato come interrompibile dopo un determinato tempo di attesa.

abstract 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.

abstract void setRedirectStderrToStdout(boolean redirect)

Imposta lo stream di errori standard in modo che venga reindirizzato allo stream di output standard quando esegui i comandi di sistema.

abstract void setWorkingDir(File dir)

Imposta la directory di lavoro per i comandi di sistema.

abstract void sleep(long time)

Metodo di supporto per mettere in pausa l'esecuzione per un determinato periodo di tempo, ignorando eventuali eccezioni.

abstract void unsetEnvVariable(String key)

Reimposta una variabile di ambiente, in modo che i comandi di sistema vengano eseguiti senza questa variabile di ambiente.

abstract void uploadCache(ICacheClient cacheClient, ExecutableActionResult actionResult)

Carica l'ultima esecuzione di ExecutableActionResult con un cacheClient.

Metodi pubblici

allowInterrupt

public abstract void allowInterrupt (boolean allow)

Consente/disattiva le interruzioni di esecuzione nel thread corrente. Se è consentito, le operazioni di esecuzione del thread corrente possono essere interrotte da altri thread tramite il metodo interrupt(Thread, String).

Parametri
allow boolean: indica se consentire interruzioni di esecuzione nel thread corrente.

interrompere

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

Interrompe le operazioni di esecuzione in corso/future sul thread specificato. Le operazioni di esecuzione sul thread specificato genereranno un RunInterruptedException.

Parametri
message String: il messaggio per RunInterruptedException.

errorId ErrorIdentifier: rappresenta la causa dell'interruzione, se nota.

interrompere

public abstract void interrupt (Thread thread, 
                String message)

Interrompe le operazioni di esecuzione in corso/future sul thread specificato. Le operazioni di esecuzione sul thread specificato genereranno un RunInterruptedException.

Parametri
message String: il messaggio per RunInterruptedException.

isInterruptAllowed

public abstract boolean isInterruptAllowed ()

Fornisce lo stato dell'interruzione di RunUtil.

Ritorni
boolean true se l'esecuzione può essere interrotta, false in caso contrario.

runCmdInBackground

public abstract Process runCmdInBackground (Redirect redirect, 
                 command)

Un metodo runCmdInBackground(String) alternativo che accetta gli argomenti del comando in forma ERROR(/List).

Parametri
redirect Redirect: il ERROR(/Redirect) da applicare al ProcessBuilder.

command : il ERROR(/List) contenente il comando di sistema specificato e facoltativamente gli argomenti da eseguire

Ritorni
Process il Process del comando eseguito

Lanci
if command failed to run

runCmdInBackground

public abstract Process runCmdInBackground ( command)

Un metodo runCmdInBackground(String) alternativo che accetta gli argomenti del comando in forma ERROR(/List).

Parametri
command : il ERROR(/List) contenente il comando di sistema specificato e facoltativamente gli argomenti da eseguire

Ritorni
Process il Process del comando eseguito

Lanci
if command failed to run

runCmdInBackground

public abstract Process runCmdInBackground ( command, 
                OutputStream output)

Esegui il comando con un ERROR(/OutputStream) per registrare l'output del comando. Stdout e stderr vengono uniti.

Parametri
command : il comando da eseguire

output OutputStream: l'OutputStream per salvare l'output

Ritorni
Process il Process che esegue il comando

Lanci
IOException

runCmdInBackground

public abstract Process runCmdInBackground (String... command)

Metodo di supporto per eseguire un comando di sistema in modo asincrono.

Restituirà un valore immediatamente dopo il comando di lancio.

Parametri
command String: il comando di sistema specificato e, facoltativamente, gli argomenti per exec

Ritorni
Process il Process del comando eseguito

Lanci
if command failed to run

runCmdInBackground

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

Metodo di supporto per eseguire un comando di sistema in modo asincrono.

Restituirà un valore immediatamente dopo il comando di lancio.

Parametri
redirect Redirect: il ERROR(/Redirect) da applicare al ProcessBuilder.

command String: il comando di sistema specificato e, facoltativamente, gli argomenti per exec

Ritorni
Process il Process del comando eseguito

Lanci
if command failed to run

runEscalatingTimedRetry

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

Blocca ed esegue un'operazione più volte finché non va a buon fine.

Aumenta in modo esponenziale il tempo di attesa tra i tentativi di operazione. Deve essere utilizzato quando si esegue un'operazione come il polling di un server, per dargli il tempo di riprendersi nel caso in cui sia temporaneamente non disponibile.

Parametri
opTimeout long: tempo massimo di attesa in millisecondi per un singolo tentativo di operazione

initialPollInterval long: tempo iniziale di attesa 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

Ritorni
boolean true se l'operazione è stata completata correttamente prima della scadenza di maxTime

runFixedTimedRetry

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

Blocca ed esegue un'operazione più volte finché non va a buon fine.

Parametri
opTimeout long: tempo massimo di attesa in millisecondi per un singolo tentativo di operazione

pollInterval long: tempo iniziale 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

Ritorni
boolean true se l'operazione è stata completata correttamente prima della scadenza di maxTime

runFixedTimedRetryWithOutputMonitor

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

Blocca ed esegue un'operazione più volte finché non va a buon fine. Monitora inoltre l'attività degli stream di output, interrompendoli se non viene rilevata alcuna attività per un periodo di tempo specificato. Se idleOutputTimeout è impostato su zero, non verrà eseguito alcun monitoraggio dello stream.

Parametri
opTimeout long: tempo massimo di attesa in millisecondi per un singolo tentativo di operazione

idleOutputTimeout long: tempo massimo di attesa in millisecondi per l'output negli stream di output

pollInterval long: tempo iniziale 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

Ritorni
boolean true se l'operazione è stata completata correttamente prima della scadenza di maxTime

runTimed

public abstract 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: indica se registrare o meno gli errori in caso di eccezione.

Ritorni
CommandStatus il CommandStatus risultato dell'operazione.

runTimedCmd

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

Metodo di supporto per eseguire un comando di sistema, interrompere l'esecuzione se il tempo necessario è superiore a quello specificato e reindirizzare l'output ai file, se specificato. Quando ERROR(/OutputStream) vengono forniti in questo modo, verranno lasciati aperti alla fine della funzione.

Parametri
timeout long: tempo massimo di attesa in millisecondi. 0 indica che non è previsto alcun timeout.

stdout OutputStream: ERROR(/OutputStream) dove verrà reindirizzato l'output standard. Può essere null.

stderr OutputStream: ERROR(/OutputStream) dove verrà reindirizzato l'output dell'errore. Può essere null.

command String: il comando di sistema specificato e, facoltativamente, gli argomenti per exec

Ritorni
CommandResult un CommandResult contenente il risultato dell'esecuzione del comando

runTimedCmd

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

Metodo di supporto per eseguire un comando di sistema e interrompere l'operazione se richiede più tempo di quello specificato.

Parametri
timeout long: tempo massimo di attesa in millisecondi. 0 indica che non è previsto alcun timeout.

command String: il comando di sistema specificato e, facoltativamente, gli argomenti per exec

Ritorni
CommandResult un CommandResult contenente il risultato dell'esecuzione del comando

runTimedCmdRetry

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

Metodo di supporto per eseguire un comando di sistema e interrompere l'operazione se richiede più tempo di quello specificato.

Parametri
timeout long: tempo massimo di attesa in millisecondi per ogni tentativo

retryInterval long: tempo di attesa tra i nuovi tentativi di esecuzione del comando

attempts int: il numero massimo di tentativi da effettuare

command String: il comando di sistema specificato e, facoltativamente, gli argomenti per exec

Ritorni
CommandResult un CommandResult contenente il risultato dell'esecuzione del comando

runTimedCmdRetryWithOutputMonitor

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

Metodo di supporto per eseguire un comando di sistema e interrompere l'operazione se richiede più tempo di quello specificato. Monitora anche l'attività degli stream di output, interrompendoli se non viene osservata alcuna attività per un determinato periodo di tempo. Se idleOutputTimeout è impostato su zero, non verrà eseguito alcun monitoraggio dello stream.

Parametri
timeout long: tempo massimo di attesa in millisecondi per ogni tentativo

idleOutputTimeout long: tempo massimo di attesa in millisecondi per l'output negli stream di output

retryInterval long: tempo di attesa tra i nuovi tentativi di comando

attempts int: il numero massimo di tentativi da effettuare

command String: il comando di sistema specificato e, facoltativamente, gli argomenti per exec

Ritorni
CommandResult un CommandResult contenente il risultato dell'esecuzione del comando

runTimedCmdSilently

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

Metodo di supporto per eseguire un comando di sistema e interrompere l'operazione 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 per exec

Ritorni
CommandResult un CommandResult contenente il risultato dell'esecuzione del comando

runTimedCmdSilentlyRetry

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

Metodo di supporto per eseguire un comando di sistema e interrompere l'operazione 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 nuovi tentativi di comando

attempts int: il numero massimo di tentativi da effettuare

command String: il comando di sistema specificato e, facoltativamente, gli argomenti per exec

Ritorni
CommandResult un CommandResult contenente il risultato dell'esecuzione del comando

runTimedCmdWithInput

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

Metodo di supporto per eseguire un comando di sistema, interrompere l'esecuzione se il tempo necessario è superiore a quello specificato e reindirizzare l'output ai file, se specificato.

Parametri
timeout long: tempo massimo di attesa in millisecondi. 0 indica che non è previsto alcun timeout.

input String: l'input stdin da passare al processo

stdoutFile File: ERROR(/File) dove verrà reindirizzato l'output standard. Può essere null.

stderrFile File: ERROR(/File) dove verrà reindirizzato l'output dell'errore. Può essere null.

command String: il comando di sistema specificato e, facoltativamente, gli argomenti per exec

Ritorni
CommandResult un CommandResult contenente il risultato dell'esecuzione del comando

runTimedCmdWithInput

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

Metodo di supporto per eseguire un comando di sistema che richiede l'input stdin e interrompere l'esecuzione 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 per exec

Ritorni
CommandResult un CommandResult contenente il risultato dell'esecuzione del comando

runTimedCmdWithInput

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

Metodo di supporto per eseguire un comando di sistema che richiede l'input stdin e interrompere l'esecuzione 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 : ERROR(/List) contenente il comando di sistema e, facoltativamente, gli argomenti per l'esecuzione

Ritorni
CommandResult un CommandResult contenente il risultato dell'esecuzione del comando

runTimedCmdWithInputRedirect

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

Metodo di supporto per eseguire un comando di sistema che richiede il reindirizzamento di Stdin da un file e l'interruzione se l'operazione richiede più tempo di quello specificato.

Parametri
timeout long: tempo massimo di attesa in ms

inputRedirect File: il ERROR(/File) da reindirizzare come input standard utilizzando ProcessBuilder.redirectInput(). Se è nullo, stdin non verrà reindirizzato.

command String: il comando di sistema specificato e, facoltativamente, gli argomenti per exec

Ritorni
CommandResult un CommandResult contenente il risultato dell'esecuzione del comando

runTimedCmdWithOutputMonitor

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

Metodo di supporto per eseguire un comando di sistema, interrompere l'esecuzione se il tempo necessario è superiore a quello specificato e reindirizzare l'output ai file, se specificato. Quando ERROR(/OutputStream) vengono forniti in questo modo, verranno lasciati aperti alla fine della funzione.

Parametri
timeout long: tempo massimo di attesa in millisecondi. 0 indica che non è previsto alcun timeout.

idleOutputTimeout long: tempo massimo di attesa in millisecondi per l'output negli stream di output

stdout OutputStream: ERROR(/OutputStream) dove verrà reindirizzato l'output standard. Può essere null.

stderr OutputStream: ERROR(/OutputStream) dove verrà reindirizzato l'output dell'errore. Può essere null.

command String: il comando di sistema specificato e, facoltativamente, gli argomenti per exec

Ritorni
CommandResult un CommandResult contenente il risultato dell'esecuzione del comando

runTimedCmdWithOutputMonitor

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

Metodo di supporto per eseguire un comando di sistema e interrompere l'operazione se richiede più tempo di quello specificato. Monitora anche l'attività degli stream di output, interrompendoli se non viene osservata alcuna attività per un determinato periodo di tempo. Se idleOutputTimeout è impostato su zero, non verrà eseguito alcun monitoraggio dello stream.

Parametri
timeout long: tempo massimo di attesa in millisecondi. 0 indica che non è previsto alcun timeout.

idleOutputTimeout long: tempo massimo di attesa in millisecondi per l'output negli stream di output

command String: il comando di sistema specificato e, facoltativamente, gli argomenti per exec

Ritorni
CommandResult un CommandResult contenente il risultato dell'esecuzione del comando

runTimedCmdWithOutputMonitor

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

Metodo di supporto per eseguire un comando di sistema con memorizzazione nella cache.

Se viene specificato cacheClient, la memorizzazione nella cache verrà attivata. Se la cache è disponibile, verrà restituito il risultato memorizzato nella cache. In caso contrario, verrà utilizzato runTimedCmdWithOutputMonitor(long, long, OutputStream, OutputStream, String) per eseguire il comando e il risultato verrà caricato per la memorizzazione nella cache.

Parametri
timeout long: tempo massimo di attesa in millisecondi. 0 indica che non è previsto alcun timeout.

idleOutputTimeout long: tempo massimo di attesa in millisecondi per l'output negli stream di output.

stdout OutputStream: ERROR(/OutputStream) dove verrà reindirizzato l'output standard. Può essere null.

stderr OutputStream: ERROR(/OutputStream) dove verrà reindirizzato l'output dell'errore. Può essere null.

cacheClient ICacheClient: un'istanza di ICacheClient utilizzata per gestire la memorizzazione nella cache.

command String: il comando di sistema specificato e, facoltativamente, gli argomenti per exec.

Ritorni
CommandResult un CommandResult contenente il risultato dell'esecuzione del comando.

runTimedRetry

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

Blocca ed esegue un'operazione più volte finché non va a buon fine.

Parametri
opTimeout long: tempo massimo di attesa in millisecondi per un tentativo di operazione

pollInterval long: tempo di attesa tra i nuovi tentativi di esecuzione del comando

attempts int: il numero massimo di tentativi da effettuare

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult da eseguire

Ritorni
boolean true se l'operazione è stata completata correttamente prima del raggiungimento del numero di tentativi.

runTimedRetryWithOutputMonitor

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

Blocca ed esegue un'operazione più volte finché non va a buon fine. Monitora inoltre l'attività degli stream di output, interrompendoli se non viene rilevata alcuna attività per un periodo di tempo specificato. Se idleOutputTimeout è impostato su zero, non verrà eseguito alcun monitoraggio dello stream.

Parametri
opTimeout long: tempo massimo di attesa in millisecondi per un tentativo di operazione

idleOutputTimeout long: tempo massimo di attesa in millisecondi per l'output negli stream di output

pollInterval long: tempo di attesa tra i nuovi tentativi di comando

attempts int: il numero massimo di tentativi da effettuare

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult da eseguire

Ritorni
boolean true se l'operazione è stata completata correttamente prima del raggiungimento del numero di tentativi.

runTimedWithOutputMonitor

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

Blocca ed esegue un'operazione, interrompendola se richiede più tempo di quello specificato. Monitora inoltre l'attività degli stream di output, interrompendoli se non viene rilevata alcuna attività per un determinato periodo di tempo. Se idleOutputTimeout è impostato su zero, non verrà eseguito alcun monitoraggio dello stream.

Parametri
timeout long: tempo massimo di attesa in ms

idleOutputTimeout long: tempo massimo di attesa in millisecondi per l'output negli stream di output

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult da eseguire

logErrors boolean: indica se registrare o meno gli errori in caso di eccezione.

Ritorni
CommandStatus il CommandStatus risultato dell'operazione.

setEnvVariable

public abstract void setEnvVariable (String key, 
                String value)

Imposta una variabile di ambiente da utilizzare durante l'esecuzione dei comandi di sistema.

Parametri
key String: il nome della variabile

value String: il valore della variabile

setEnvVariablePriority

public abstract void setEnvVariablePriority (IRunUtil.EnvPriority priority)

Decidere se, durante la creazione di un processo, lo scollegamento della variabile di ambiente ha una priorità superiore rispetto alla sua impostazione. Per impostazione predefinita, lo scollegamento ha una priorità più elevata: ciò significa che se viene tentato di impostare una variabile con lo stesso nome, non verrà eseguita poiché la variabile non verrà impostata. Non può essere utilizzato nell'istanza IRunUtil predefinita.

Parametri
priority IRunUtil.EnvPriority

setInterruptibleInFuture

public abstract void setInterruptibleInFuture (Thread thread, 
                long timeMs)

Impostato come interrompibile dopo un determinato tempo di attesa. ERROR(/CommandScheduler#shutdownHard()) per applicare l'interruzione definitiva.

Parametri
thread Thread: il thread che diventerà interrompibile.

timeMs long: il tempo di attesa prima di impostare l'interruzione.

setLinuxInterruptProcess

public abstract 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 nell'istanza IRunUtil predefinita.

Parametri
interrupt boolean

setRedirectStderrToStdout

public abstract void setRedirectStderrToStdout (boolean redirect)

Imposta lo stream di errori standard in modo che venga reindirizzato allo stream di output standard quando esegui i comandi di sistema. Il valore iniziale è falso.

Parametri
redirect boolean: nuovo valore per indicare se eseguire o meno il reindirizzamento

setWorkingDir

public abstract void setWorkingDir (File dir)

Imposta la directory di lavoro per i comandi di sistema.

Parametri
dir File: la directory di lavoro

sonno

public abstract void sleep (long time)

Metodo di supporto per mettere in pausa l'esecuzione per un determinato periodo di tempo, ignorando eventuali eccezioni.

Parametri
time long: tempo di sospensione in millisecondi. I valori inferiori o uguali a 0 verranno ignorati

unsetEnvVariable

public abstract void unsetEnvVariable (String key)

Reimposta una variabile di ambiente, in modo che i comandi di sistema vengano eseguiti senza questa variabile di ambiente.

Parametri
key String: il nome della variabile

uploadCache

public abstract void uploadCache (ICacheClient cacheClient, 
                ExecutableActionResult actionResult)

Carica l'ultima esecuzione di ExecutableActionResult con un cacheClient.

Parametri
cacheClient ICacheClient: il ICacheClient utilizzato per caricare il risultato.

actionResult ExecutableActionResult: il ExecutableActionResult da caricare.