IRunUtil

public interface IRunUtil

com.android.tradefed.util.IRunUtil


Interface para executar operações cronometradas e comandos do sistema.

Resumo

Classes aninhadas

interface IRunUtil.IRunnableResult

Uma interface para executar de forma assíncrona uma operação que retorna um status booleano.

Métodos públicos

abstract void allowInterrupt (boolean allow)

Permite/não permite interrupções de execução no thread atual.

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

Interrompe as operações de execução em andamento/futuras no thread fornecido.

abstract void interrupt (Thread thread, String message)

Interrompe as operações de execução em andamento/futuras no thread fornecido.

abstract boolean isInterruptAllowed ()

Dê o status de interrupção do RunUtil.

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

Um método runCmdInBackground(String) alternativo que aceita os argumentos de comando no formato ERROR(/List) .

abstract Process runCmdInBackground ( command) runCmdInBackground ( command)

Um método runCmdInBackground(String) alternativo que aceita os argumentos de comando no formato ERROR(/List) .

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

A execução do comando com um ERROR(/OutputStream) registra a saída do comando.

abstract Process runCmdInBackground (String... command)

Método auxiliar para executar um comando do sistema de forma assíncrona.

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

Método auxiliar para executar um comando do sistema de forma assíncrona.

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

Bloqueia e executa uma operação várias vezes até que seja bem-sucedida.

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

Bloqueia e executa uma operação várias vezes até que seja bem-sucedida.

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

Bloqueia e executa uma operação, abortando se demorar mais do que o tempo especificado.

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

Método auxiliar para executar um comando do sistema, abortar se demorar mais do que o tempo especificado e redirecionar a saída para arquivos, se especificado.

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

Método auxiliar para executar um comando do sistema e abortar se demorar mais do que um tempo especificado.

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

Método auxiliar para executar um comando do sistema e abortar se demorar mais do que um tempo especificado.

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

Método auxiliar para executar um comando do sistema e abortar se demorar mais do que um tempo especificado.

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

Método auxiliar para executar um comando do sistema e abortar se demorar mais do que um tempo especificado.

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

Método auxiliar para executar um comando do sistema, abortar se demorar mais do que o tempo especificado e redirecionar a saída para arquivos, se especificado.

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

Método auxiliar para executar um comando do sistema que requer entrada stdin e abortar se demorar mais do que um tempo especificado.

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

Método auxiliar para executar um comando do sistema que requer entrada stdin e abortar se demorar mais do que um tempo especificado.

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

Método auxiliar para executar um comando do sistema que requer o redirecionamento de Stdin de um arquivo e a interrupção se demorar mais do que o tempo especificado.

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

Bloqueia e executa uma operação várias vezes até que seja bem-sucedida.

abstract void setEnvVariable (String key, String value)

Define uma variável de ambiente a ser usada ao executar comandos do sistema.

abstract void setEnvVariablePriority ( IRunUtil.EnvPriority priority)

Decida se, ao criar um processo, desarmar variáveis ​​de ambiente é uma prioridade maior do que configurá-las.

abstract void setInterruptibleInFuture (Thread thread, long timeMs)

Definido como interrompível após algum tempo de espera.

abstract void setLinuxInterruptProcess (boolean interrupt)

Permite usar a interrupção 'kill' do linux no processo em execução através dos métodos #runTimed quando atinge um tempo limite.

abstract void setRedirectStderrToStdout (boolean redirect)

Defina o fluxo de erro padrão para redirecionar para o fluxo de saída padrão ao executar comandos do sistema.

abstract void setWorkingDir (File dir)

Define o diretório de trabalho para comandos do sistema.

abstract void sleep (long time)

Método auxiliar para dormir por um determinado tempo, ignorando quaisquer exceções.

abstract void unsetEnvVariable (String key)

Desativa uma variável de ambiente, portanto, os comandos do sistema são executados sem essa variável de ambiente.

Métodos públicos

permitirinterrupção

public abstract void allowInterrupt (boolean allow)

Permite/não permite interrupções de execução no thread atual. Se for permitido, as operações de execução do thread atual podem ser interrompidas por outros threads por meio do método interrupt(Thread, String) .

Parâmetros
allow boolean : permite ou não interrupções de execução no thread atual.

interromper

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

Interrompe as operações de execução em andamento/futuras no thread fornecido. As operações de execução no thread fornecido lançarão RunInterruptedException .

Parâmetros
message String : a mensagem para RunInterruptedException .

errorId ErrorIdentifier : Representando a causa da interrupção quando conhecida.

interromper

public abstract void interrupt (Thread thread, 
                String message)

Interrompe as operações de execução em andamento/futuras no thread fornecido. As operações de execução no thread fornecido lançarão RunInterruptedException .

Parâmetros
message String : a mensagem para RunInterruptedException .

é permitido interromper

public abstract boolean isInterruptAllowed ()

Dê o status de interrupção do RunUtil.

devoluções
boolean true se a execução puder ser interrompida, false caso contrário.

runCmdInBackground

public abstract Process runCmdInBackground (Redirect redirect, 
                 command)

Um método runCmdInBackground(String) alternativo que aceita os argumentos de comando no formato ERROR(/List) .

Parâmetros
redirect Redirect : O ERROR(/Redirect) a ser aplicado ao ProcessBuilder .

command : o ERROR(/List) contendo o comando do sistema especificado e, opcionalmente, argumentos para exec

devoluções
Process o Process do comando executado

lances
se o comando falhou ao executar

runCmdInBackground

public abstract Process runCmdInBackground ( command)

Um método runCmdInBackground(String) alternativo que aceita os argumentos de comando no formato ERROR(/List) .

Parâmetros
command : o ERROR(/List) contendo o comando do sistema especificado e, opcionalmente, argumentos para exec

devoluções
Process o Process do comando executado

lances
se o comando falhou ao executar

runCmdInBackground

public abstract Process runCmdInBackground ( command, 
                OutputStream output)

A execução do comando com um ERROR(/OutputStream) registra a saída do comando. Stdout e stderr são mesclados.

Parâmetros
command : o comando para executar

output OutputStream : o OutputStream para salvar a saída

devoluções
Process o Process executando o comando

lances
IOException

runCmdInBackground

public abstract Process runCmdInBackground (String... command)

Método auxiliar para executar um comando do sistema de forma assíncrona.

Retornará imediatamente após o lançamento do comando.

Parâmetros
command String : o comando do sistema especificado e, opcionalmente, argumentos para exec

devoluções
Process o Process do comando executado

lances
se o comando falhou ao executar

runCmdInBackground

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

Método auxiliar para executar um comando do sistema de forma assíncrona.

Retornará imediatamente após o lançamento do comando.

Parâmetros
redirect Redirect : O ERROR(/Redirect) a ser aplicado ao ProcessBuilder .

command String : o comando do sistema especificado e, opcionalmente, argumentos para exec

devoluções
Process o Process do comando executado

lances
se o comando falhou ao executar

runEscalatingTimedRetry

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

Bloqueia e executa uma operação várias vezes até que seja bem-sucedida.

Aumente exponencialmente o tempo de espera entre as tentativas de operação. Destina-se a ser usado ao executar uma operação como sondagem de um servidor, para dar tempo para que ele se recupere caso fique temporariamente inativo.

Parâmetros
opTimeout long : tempo máximo de espera em ms para uma única tentativa de operação

initialPollInterval long : tempo inicial de espera entre as tentativas de operação

maxPollInterval long : o tempo máximo de espera entre as tentativas de operação

maxTime long : o tempo máximo total aproximado para continuar tentando a operação

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult para executar

devoluções
boolean true se a operação foi concluída com sucesso antes de maxTime expirar

runFixedTimedRetry

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

Bloqueia e executa uma operação várias vezes até que seja bem-sucedida.

Parâmetros
opTimeout long : tempo máximo de espera em ms para uma única tentativa de operação

pollInterval long : tempo inicial de espera entre as tentativas de operação

maxTime long : o tempo máximo total aproximado para continuar tentando a operação

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult para executar

devoluções
boolean true se a operação foi concluída com sucesso antes de maxTime expirar

tempo de execução

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

Bloqueia e executa uma operação, abortando se demorar mais do que o tempo especificado.

Parâmetros
timeout long : tempo máximo de espera em ms

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult para executar

logErrors boolean : registra erros na exceção ou não.

devoluções
CommandStatus o resultado da operação CommandStatus .

runTimedCmd

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

Método auxiliar para executar um comando do sistema, abortar se demorar mais do que o tempo especificado e redirecionar a saída para arquivos, se especificado. Quando ERROR(/OutputStream) são fornecidos desta forma, eles serão deixados em aberto no final da função.

Parâmetros
timeout long : timeout tempo máximo de espera em ms. 0 significa que não há tempo limite.

stdout OutputStream : ERROR(/OutputStream) onde a saída padrão será redirecionada. Pode ser nulo.

stderr OutputStream : ERROR(/OutputStream) onde a saída de erro será redirecionada. Pode ser nulo.

command String : o comando do sistema especificado e, opcionalmente, argumentos para exec

devoluções
CommandResult um CommandResult contendo o resultado da execução do comando

runTimedCmd

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

Método auxiliar para executar um comando do sistema e abortar se demorar mais do que um tempo especificado.

Parâmetros
timeout long : tempo máximo de espera em ms. 0 significa que não há tempo limite.

command String : o comando do sistema especificado e, opcionalmente, argumentos para exec

devoluções
CommandResult um CommandResult contendo o resultado da execução do comando

runTimedCmdRetry

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

Método auxiliar para executar um comando do sistema e abortar se demorar mais do que um tempo especificado.

Parâmetros
timeout long : tempo máximo de espera em ms para cada tentativa

retryInterval long : tempo de espera entre novas tentativas de comando

attempts int : o número máximo de tentativas para tentar

command String : o comando do sistema especificado e, opcionalmente, argumentos para exec

devoluções
CommandResult um CommandResult contendo o resultado da execução do comando

runTimedCmdSilently

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

Método auxiliar para executar um comando do sistema e abortar se demorar mais do que um tempo especificado. Semelhante a runTimedCmd(long, String) , mas não registra nenhum erro na exceção.

Parâmetros
timeout long : tempo máximo de espera em ms

command String : o comando do sistema especificado e, opcionalmente, argumentos para exec

devoluções
CommandResult um CommandResult contendo o resultado da execução do comando

runTimedCmdSilentlyRetry

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

Método auxiliar para executar um comando do sistema e abortar se demorar mais do que um tempo especificado. Semelhante a runTimedCmdRetry(long, long, int, String[]) , mas não registra nenhum erro na exceção.

Parâmetros
timeout long : tempo máximo de espera em ms

retryInterval long : tempo de espera entre novas tentativas de comando

attempts int : o número máximo de tentativas para tentar

command String : o comando do sistema especificado e, opcionalmente, argumentos para exec

devoluções
CommandResult um CommandResult contendo o resultado da execução do comando

runTimedCmdWithInput

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

Método auxiliar para executar um comando do sistema, abortar se demorar mais do que o tempo especificado e redirecionar a saída para arquivos, se especificado.

Parâmetros
timeout long : timeout tempo máximo de espera em ms. 0 significa que não há tempo limite.

input String : a entrada stdin para passar para o processo

stdoutFile File : ERROR(/File) onde a saída padrão será redirecionada. Pode ser nulo.

stderrFile File : ERROR(/File) para onde a saída do erro será redirecionada. Pode ser nulo.

command String : o comando do sistema especificado e, opcionalmente, argumentos para exec

devoluções
CommandResult um CommandResult contendo o resultado da execução do comando

runTimedCmdWithInput

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

Método auxiliar para executar um comando do sistema que requer entrada stdin e abortar se demorar mais do que um tempo especificado.

Parâmetros
timeout long : tempo máximo de espera em ms

input String : a entrada stdin para passar para o processo

command String : o comando do sistema especificado e, opcionalmente, argumentos para exec

devoluções
CommandResult um CommandResult contendo o resultado da execução do comando

runTimedCmdWithInput

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

Método auxiliar para executar um comando do sistema que requer entrada stdin e abortar se demorar mais do que um tempo especificado.

Parâmetros
timeout long : tempo máximo de espera em ms

input String : a entrada stdin para passar para o processo

command : ERROR(/List) contendo o comando do sistema e, opcionalmente, argumentos para exec

devoluções
CommandResult um CommandResult contendo o resultado da execução do comando

runTimedCmdWithInputRedirect

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

Método auxiliar para executar um comando do sistema que requer o redirecionamento de Stdin de um arquivo e a interrupção se demorar mais do que o tempo especificado.

Parâmetros
timeout long : tempo máximo de espera em ms

inputRedirect File : o ERROR(/File) para redirecionar como entrada padrão usando ProcessBuilder.redirectInput() . Se nulo, stdin não será redirecionado.

command String : o comando do sistema especificado e, opcionalmente, argumentos para exec

devoluções
CommandResult um CommandResult contendo o resultado da execução do comando

runTimedRetry

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

Bloqueia e executa uma operação várias vezes até que seja bem-sucedida.

Parâmetros
opTimeout long : tempo máximo de espera em ms para uma tentativa de operação

pollInterval long : tempo de espera entre novas tentativas de comando

attempts int : o número máximo de tentativas para tentar

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult para executar

devoluções
boolean true se a operação foi concluída com êxito antes das tentativas.

setEnvVariable

public abstract void setEnvVariable (String key, 
                String value)

Define uma variável de ambiente a ser usada ao executar comandos do sistema.

Parâmetros
key String : o nome da variável

value String : o valor da variável

setEnvVariablePriority

public abstract void setEnvVariablePriority (IRunUtil.EnvPriority priority)

Decida se, ao criar um processo, desarmar variáveis ​​de ambiente é uma prioridade maior do que configurá-las. Por padrão, a desativação é de maior prioridade: ou seja, se for feita uma tentativa de definir uma variável com o mesmo nome, isso não acontecerá, pois a variável será desativada. Não pode ser usado na instância IRunUtil padrão.

Parâmetros
priority IRunUtil.EnvPriority

definirInterruptibleInFuture

public abstract void setInterruptibleInFuture (Thread thread, 
                long timeMs)

Definido como interrompível após algum tempo de espera. ERROR(/CommandScheduler#shutdownHard()) para impor que encerramos eventualmente.

Parâmetros
thread Thread : o thread que se tornará interrompível.

timeMs long : tempo de espera antes de definir a interrupção.

setLinuxInterruptProcess

public abstract void setLinuxInterruptProcess (boolean interrupt)

Permite usar a interrupção 'kill' do linux no processo em execução através dos métodos #runTimed quando atinge um tempo limite. Não pode ser usado na instância IRunUtil padrão.

Parâmetros
interrupt boolean

setRedirectStderrToStdout

public abstract void setRedirectStderrToStdout (boolean redirect)

Defina o fluxo de erro padrão para redirecionar para o fluxo de saída padrão ao executar comandos do sistema. O valor inicial é falso.

Parâmetros
redirect boolean : novo valor para redirecionar ou não

setWorkingDir

public abstract void setWorkingDir (File dir)

Define o diretório de trabalho para comandos do sistema.

Parâmetros
dir File : o diretório de trabalho

dormir

public abstract void sleep (long time)

Método auxiliar para dormir por um determinado tempo, ignorando quaisquer exceções.

Parâmetros
time long : ms para dormir. valores menores ou iguais a 0 serão ignorados

unsetEnvVariable

public abstract void unsetEnvVariable (String key)

Desativa uma variável de ambiente, portanto, os comandos do sistema são executados sem essa variável de ambiente.

Parâmetros
key String : o nome da variável