RunUtil

public class RunUtil
extends Object implements IRunUtil

java.lang.Object
   ↳ com.android.tradefed.util.RunUtil


Es una colección de métodos auxiliares para ejecutar operaciones.

Resumen

Campos

public static final String INHERITIO_PREFIX

public static final String RUNNABLE_NOTIFIER_NAME

Constructores públicos

RunUtil()

Crea un objeto RunUtil nuevo para usarlo.

RunUtil(boolean inheritEnvVars)

Métodos públicos

void allowInterrupt(boolean allow)

Permite o no ejecutar interrupciones en el subproceso actual.

ProcessBuilder createProcessBuilder(Redirect redirect, commandList, boolean enableCache)
static IRunUtil getDefault()

Obtén una referencia al objeto RunUtil predeterminado.

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

Interrumpe las operaciones de ejecución en curso o futuras en el subproceso determinado.

void interrupt(Thread thread, String message)

Interrumpe las operaciones de ejecución en curso o próximas en el subproceso determinado.

boolean isInterruptAllowed()

Proporciona el estado de interrupción de RunUtil.

static File linkFile(File destRoot, String relToRoot, File target)

Vincula el target a un lugar en destRoot.

Process runCmdInBackground(Redirect redirect, command)

Un método runCmdInBackground(String) alternativo que acepta los argumentos del comando en formato ERROR(/List).

Process runCmdInBackground( command)

Un método runCmdInBackground(String) alternativo que acepte los argumentos del comando en formato ERROR(/List)

Process runCmdInBackground( command, OutputStream output)

Ejecutar el comando con un registro ERROR(/OutputStream) en el resultado del comando

Process runCmdInBackground(String... command)

Es un método de ayuda para ejecutar un comando del sistema de forma asíncrona.

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

Es un método auxiliar para ejecutar un comando del sistema de forma asíncrona.

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

Bloquea y ejecuta una operación varias veces hasta que se complete correctamente.

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

Bloquea y ejecuta una operación varias veces hasta que se complete correctamente.

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

Bloquea y ejecuta una operación varias veces hasta que se complete correctamente.

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

Bloquea y ejecuta una operación, y la aborta si tarda más de un tiempo especificado.

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

Es un método auxiliar para ejecutar un comando del sistema, abortarlo si tarda más de un tiempo especificado y redireccionar el resultado a archivos si se especifica.

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

Es un método de ayuda para ejecutar un comando del sistema y abortarlo si tarda más que un tiempo especificado.

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

Es un método de ayuda para ejecutar un comando del sistema y abortarlo si tarda más que un tiempo especificado.

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

Es un método de ayuda para ejecutar un comando del sistema y abortarlo si tarda más que un tiempo especificado.

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

Es un método de ayuda para ejecutar un comando del sistema y abortarlo si tarda más que un tiempo especificado.

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

Es un método de ayuda para ejecutar un comando del sistema y abortarlo si tarda más que un tiempo especificado.

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

Es un método auxiliar para ejecutar un comando del sistema, abortarlo si tarda más de un tiempo especificado y redireccionar el resultado a archivos si se especifica.

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

Es un método auxiliar para ejecutar un comando del sistema que requiere una entrada de stdin y abortar si tarda más que un tiempo especificado.

CommandResult runTimedCmdWithInput(long timeout, String input, command)

Método auxiliar para ejecutar un comando del sistema que requiere una entrada stdin y que se anula si tarda más de un tiempo especificado.

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

Es un método auxiliar para ejecutar un comando del sistema que requiere redireccionar Stdin desde un archivo y abortarlo si tarda más de un tiempo especificado.

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

Es un método auxiliar para ejecutar un comando del sistema, abortarlo si tarda más de un tiempo especificado y redireccionar el resultado a archivos si se especifica.

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

Es un método de ayuda para ejecutar un comando del sistema y abortarlo si tarda más que un tiempo especificado.

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

Método auxiliar para ejecutar un comando del sistema con almacenamiento en caché.

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

Bloquea y ejecuta una operación varias veces hasta que se complete correctamente.

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

Bloquea y ejecuta una operación varias veces hasta que se complete correctamente.

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

Bloquea y ejecuta una operación, y la aborta si tarda más de un tiempo especificado.

void setEnvVariable(String name, String value)

Establece una variable de entorno que se usará cuando se ejecuten comandos del sistema.

void setEnvVariablePriority(IRunUtil.EnvPriority priority)

Decide si, cuando creas un proceso, anular la configuración de la variable de entorno tiene una prioridad más alta que configurarla.

void setInterruptibleInFuture(Thread thread, long timeMs)

Se establece como interrumpible después de un tiempo de espera.

void setLinuxInterruptProcess(boolean interrupt)

Permite usar la interrupción "kill" de Linux en el proceso que se ejecuta a través de métodos #runTimed cuando se alcanza un tiempo de espera.

void setRedirectStderrToStdout(boolean redirect)

Establece el flujo de error estándar para que redireccione al flujo de salida estándar cuando se ejecuten comandos del sistema.

void setWorkingDir(File dir)

Establece el directorio de trabajo para los comandos del sistema.

void sleep(long time)

Método de ayuda para dormir durante un tiempo determinado, ignorando todas las excepciones.

static String toRelative(File start, File target)
static String toRelative(File start, String target)
void unsetEnvVariable(String key)

Anula una variable de entorno para que los comandos del sistema se ejecuten sin esta variable de entorno. Las variables de entorno pueden heredarse del proceso superior, por lo que debemos borrar la variable de entorno de ProcessBuilder.environment().

void uploadCache(ICacheClient cacheClient, ExecutableActionResult actionResult)

Sube el último ExecutableActionResult que se ejecutó con un cacheClient.

Campos

INHERITIO_PREFIX

public static final String INHERITIO_PREFIX

NOMBRE DEL NOTIFIER_EJECUTABLE

public static final String RUNNABLE_NOTIFIER_NAME

Constructores públicos

RunUtil

public RunUtil ()

Crea un objeto RunUtil nuevo para usar.

RunUtil

public RunUtil (boolean inheritEnvVars)

Parámetros
inheritEnvVars boolean

Métodos públicos

allowInterrupt

public void allowInterrupt (boolean allow)

Permite o inhabilita las interrupciones de ejecución en el subproceso actual. Si está permitido, las operaciones de ejecución del subproceso actual pueden interrumpirse desde otros subprocesos mediante el método interrupt(Thread, String).

Parámetros
allow boolean: Indica si se permiten interrupciones de ejecución en el subproceso actual.

createProcessBuilder

public ProcessBuilder createProcessBuilder (Redirect redirect, 
                 commandList, 
                boolean enableCache)

Parámetros
redirect Redirect

commandList

enableCache boolean

Muestra
ProcessBuilder

getDefault

public static IRunUtil getDefault ()

Obtén una referencia al objeto RunUtil predeterminado.

Esto es útil para los emisores que desean usar IRunUtil sin personalización. Se recomienda que los llamadores que necesiten una instancia personalizada de IRunUtil (es decir, que deban llamar a setEnvVariable(String, String) o setWorkingDir(File)) creen su propia copia.

Muestra
IRunUtil

interrumpir

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

Interrumpe las operaciones de ejecución en curso o próximas en el subproceso determinado. Las operaciones de ejecución en el subproceso determinado arrojarán RunInterruptedException.

Parámetros
message String: Es el mensaje para RunInterruptedException.

errorId ErrorIdentifier: Representa la causa de la interrupción cuando se conoce.

interrumpir

public void interrupt (Thread thread, 
                String message)

Interrumpe las operaciones de ejecución en curso o próximas en el subproceso determinado. Las operaciones de ejecución en el subproceso determinado arrojarán RunInterruptedException.

Parámetros
message String: Es el mensaje para RunInterruptedException.

isInterruptAllowed

public boolean isInterruptAllowed ()

Proporciona el estado de interrupción de RunUtil.

Muestra
boolean Es verdadero si se puede interrumpir la ejecución; de lo contrario, es falso.

linkFile

public static File linkFile (File destRoot, 
                String relToRoot, 
                File target)

Vincula el target a un lugar en destRoot.

Si el archivo de destino o el symlink ya existen en destRoot, el archivo no se vinculará.

Parámetros
destRoot File: Es la raíz del destino.

relToRoot String: Es la ruta de acceso relativa del directorio de destino a la raíz.

target File: Es el archivo de destino que se vinculará.

Muestra
File el symlink

Arroja
si no se puede vincular el archivo de destino.

runCmdInBackground

public Process runCmdInBackground (Redirect redirect, 
                 command)

Un método runCmdInBackground(String) alternativo que acepta los argumentos del comando en formato ERROR(/List).

Parámetros
redirect Redirect: Es el ERROR(/Redirect) que se aplicará a ProcessBuilder.

command : Es el ERROR(/List) que contiene el comando del sistema especificado y, de manera opcional, los argumentos para ejecutar.

Muestra
Process el Process del comando ejecutado

runCmdEnBackground

public Process runCmdInBackground ( command)

Un método runCmdInBackground(String) alternativo que acepta los argumentos del comando en formato ERROR(/List).

Parámetros
command : Es el ERROR(/List) que contiene el comando del sistema especificado y, de manera opcional, los argumentos para ejecutar.

Muestra
Process el Process del comando ejecutado

runCmdInBackground

public Process runCmdInBackground ( command, 
                OutputStream output)

Ejecutar el comando con un registro de ERROR(/OutputStream) en el resultado del comando Stdout y stderr se combinan.

Parámetros
command : Es el comando que se ejecutará.

output OutputStream: Es el OutputStream para guardar el resultado.

Muestra
Process el Process que ejecuta el comando

runCmdInBackground

public Process runCmdInBackground (String... command)

Es un método auxiliar para ejecutar un comando del sistema de forma asíncrona.

Se mostrará inmediatamente después de iniciar el comando.

Parámetros
command String: Es el comando del sistema especificado y, opcionalmente, argumentos para ejecutar.

Muestra
Process el Process del comando ejecutado

runCmdEnBackground

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

Es un método auxiliar para ejecutar un comando del sistema de forma asíncrona.

Se mostrará inmediatamente después de iniciar el comando.

Parámetros
redirect Redirect: Es el ERROR(/Redirect) que se aplicará a ProcessBuilder.

command String: El comando del sistema especificado y, de manera opcional, los argumentos para ejecutar

Muestra
Process el Process del comando ejecutado

runEscalatingTimedRetry

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

Bloquea y ejecuta una operación varias veces hasta que se complete correctamente.

Aumenta exponencialmente el tiempo de espera entre los intentos de la operación. Se diseñó para usarse cuando se realiza una operación, como sondear un servidor, para darle tiempo para recuperarse en caso de que esté inactivo temporalmente.

Parámetros
opTimeout long: Es el tiempo máximo de espera en ms para un solo intento de operación.

initialPollInterval long: Es el tiempo inicial de espera entre los intentos de operación.

maxPollInterval long: Es el tiempo máximo de espera entre los intentos de operación.

maxTime long: Es el tiempo máximo aproximado total para seguir intentando la operación.

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult para ejecutar

Muestra
boolean true si la operación se completó correctamente antes de que venciera maxTime

runFixedTimedRetry

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

Bloquea y ejecuta una operación varias veces hasta que se complete correctamente.

Parámetros
opTimeout long: Es el tiempo máximo de espera en ms para un solo intento de operación.

pollInterval long: Es el tiempo inicial de espera entre los intentos de operación.

maxTime long: Es el tiempo máximo aproximado total para seguir intentando la operación.

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult para ejecutar

Muestra
boolean true si la operación se completó correctamente antes de que venciera maxTime

runFixedTimedRetryWithOutputMonitor

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

Bloquear y ejecutar una operación varias veces hasta que tenga éxito También supervisa las transmisiones de salida en busca de actividad y se cancela si no se observa actividad de transmisión durante un tiempo especificado. Si idleOutputTimeout se establece en cero, no se realizará ninguna supervisión de transmisión.

Parámetros
opTimeout long: Es el tiempo máximo de espera en ms para un solo intento de operación.

idleOutputTimeout long: Es el tiempo máximo en ms que se debe esperar para obtener resultados en los flujos de salida.

pollInterval long: Es el tiempo inicial de espera entre los intentos de operación.

maxTime long: Es el tiempo máximo aproximado total para seguir intentando la operación.

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult para ejecutar

Muestra
boolean true si la operación se completó correctamente antes de que venciera maxTime

cronometrado de ejecución

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

Bloquea y ejecuta una operación, y la aborta si tarda más de un tiempo especificado.

Parámetros
timeout long: Es el tiempo máximo de espera en ms.

runnable IRunUtil.IRunnableResult: Es IRunUtil.IRunnableResult para ejecutar.

logErrors boolean: Registra errores en la excepción o no.

Muestra
CommandStatus el resultado CommandStatus de la operación.

runTimedCmd

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

Es un método auxiliar para ejecutar un comando del sistema, anularlo si tarda más de un tiempo especificado y redireccionar el resultado a archivos si se especifica. Cuando se proporcionen ERROR(/OutputStream) de esta manera, se dejarán abiertos al final de la función.

Parámetros
timeout long: Es el tiempo máximo de espera en ms. 0 significa que no hay tiempo de espera.

stdout OutputStream: ERROR(/OutputStream) a la que se redireccionará el resultado estándar. Puede ser nulo.

stderr OutputStream: ERROR(/OutputStream), a la que se redireccionará el resultado del error. Puede ser nulo.

command String: El comando del sistema especificado y, de manera opcional, los argumentos para ejecutar

Muestra
CommandResult Un CommandResult que contiene el resultado de la ejecución del comando

Comando de ejecución de tiempo

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

Es un método de ayuda para ejecutar un comando del sistema y abortarlo si tarda más que un tiempo especificado.

Parámetros
timeout long: Es el tiempo máximo de espera en ms. 0 significa que no hay tiempo de espera.

command String: El comando del sistema especificado y, de manera opcional, los argumentos para ejecutar

Muestra
CommandResult Un CommandResult que contiene el resultado de la ejecución del comando

runTimedCmdreintentar

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

Es un método de ayuda para ejecutar un comando del sistema y abortarlo si tarda más que un tiempo especificado.

Parámetros
timeout long: Es el tiempo máximo de espera en ms para cada intento.

retryInterval long: Es el tiempo de espera entre las reintentos de comandos.

attempts int: Es la cantidad máxima de intentos que se deben realizar.

command String: El comando del sistema especificado y, de manera opcional, los argumentos para ejecutar

Muestra
CommandResult Un CommandResult que contiene el resultado de la ejecución del comando

runTimedCmdRetryWithOutputMonitor

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

Es un método de ayuda para ejecutar un comando del sistema y abortarlo si tarda más que un tiempo especificado. También supervisa las transmisiones de salida en busca de actividad y se cancela si no se observa actividad de transmisión durante un tiempo determinado. Si inactivoOutputTimeout se establece en cero, no se realizará ninguna supervisión de transmisión.

Parámetros
timeout long: Es el tiempo máximo de espera en ms para cada intento.

idleOutputTimeout long: Es el tiempo máximo en ms que se debe esperar para obtener resultados en los flujos de salida.

retryInterval long: Es el tiempo de espera entre las reintentos de comandos.

attempts int: Es la cantidad máxima de intentos que se deben realizar.

command String: El comando del sistema especificado y, de manera opcional, los argumentos para ejecutar

Muestra
CommandResult Un CommandResult que contiene el resultado de la ejecución del comando

runTimedCmdSilently

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

Es un método auxiliar para ejecutar un comando del sistema y anularlo si tarda más de un tiempo especificado. Similar a runTimedCmd(long, String), pero no registra ningún error en la excepción.

Parámetros
timeout long: Es el tiempo máximo de espera en ms.

command String: El comando del sistema especificado y, de manera opcional, los argumentos para ejecutar

Muestra
CommandResult Un CommandResult que contiene el resultado de la ejecución del comando

runTimedCmdSilentlyRetry

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

Es un método de ayuda para ejecutar un comando del sistema y abortarlo si tarda más que un tiempo especificado. Similar a runTimedCmdRetry(long, long, int, String[]), pero no registra ningún error en la excepción.

Parámetros
timeout long: Tiempo máximo de espera en ms

retryInterval long: Es el tiempo de espera entre las reintentos de comandos.

attempts int: Es la cantidad máxima de intentos que se deben realizar.

command String: El comando del sistema especificado y, de manera opcional, los argumentos para ejecutar

Muestra
CommandResult Un CommandResult que contiene el resultado de la ejecución del comando

runTimedCmdconentrada

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

Es un método auxiliar para ejecutar un comando del sistema, abortarlo si tarda más de un tiempo especificado y redireccionar el resultado a archivos si se especifica.

Parámetros
timeout long: Es el tiempo máximo de espera en ms. 0 significa que no hay tiempo de espera.

input String: Es la entrada de stdin que se pasará para procesar.

stdoutFile File: ERROR(/File) a la que se redireccionará el resultado estándar. Puede ser nulo.

stderrFile File: ERROR(/File), a la que se redireccionará el resultado del error. Puede ser nulo.

command String: El comando del sistema especificado y, de manera opcional, los argumentos para ejecutar

Muestra
CommandResult un CommandResult que contiene el resultado de la ejecución del comando

runTimedCmdWithInput

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

Es un método auxiliar para ejecutar un comando del sistema que requiere una entrada de stdin y abortar si tarda más que un tiempo especificado.

Parámetros
timeout long: Es el tiempo máximo de espera en ms.

input String: Es la entrada de stdin que se pasará para procesar.

command String: El comando del sistema especificado y, de manera opcional, los argumentos para ejecutar

Muestra
CommandResult Un CommandResult que contiene el resultado de la ejecución del comando

runTimedCmdWithInput

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

Es un método auxiliar para ejecutar un comando del sistema que requiere una entrada de stdin y abortar si tarda más que un tiempo especificado.

Parámetros
timeout long: Es el tiempo máximo de espera en ms.

input String: Es la entrada de stdin que se pasará para procesar.

command : Es el ERROR(/List) que contiene el comando del sistema y, opcionalmente, argumentos para ejecutar.

Muestra
CommandResult Un CommandResult que contiene el resultado de la ejecución del comando

runTimedCmdWithInputRedirect

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

Es un método auxiliar para ejecutar un comando del sistema que requiere redireccionar Stdin desde un archivo y abortarlo si tarda más de un tiempo especificado.

Parámetros
timeout long: Es el tiempo máximo de espera en ms.

inputRedirect File: Es el ERROR(/File) que se redireccionará como entrada estándar con ProcessBuilder.redirectInput(). Si es nulo, stdin no se redireccionará.

command String: Es el comando del sistema especificado y, opcionalmente, argumentos para ejecutar.

Muestra
CommandResult Un CommandResult que contiene el resultado de la ejecución del comando

runTimedCmdWithOutputMonitor

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

Es un método auxiliar para ejecutar un comando del sistema, abortarlo si tarda más de un tiempo especificado y redireccionar el resultado a archivos si se especifica. Cuando se proporcionen ERROR(/OutputStream) de esta manera, se dejarán abiertos al final de la función.

Parámetros
timeout long: Es el tiempo máximo de espera en ms. 0 significa que no hay tiempo de espera.

idleOutputTimeout long: Es el tiempo máximo en ms que se debe esperar para obtener resultados en los flujos de salida.

stdout OutputStream: ERROR(/OutputStream) a la que se redireccionará el resultado estándar. Puede ser nulo.

stderr OutputStream: ERROR(/OutputStream) donde se redireccionará el resultado del error. Puede ser nulo.

command String: El comando del sistema especificado y, de manera opcional, los argumentos para ejecutar

Muestra
CommandResult Un CommandResult que contiene el resultado de la ejecución del comando

runTimedCmdWithOutputMonitor

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

Es un método de ayuda para ejecutar un comando del sistema y abortarlo si tarda más que un tiempo especificado. También supervisa las transmisiones de salida en busca de actividad y se cancela si no se observa actividad de transmisión durante un tiempo determinado. Si inactivoOutputTimeout se establece en cero, no se realizará ninguna supervisión de transmisión.

Parámetros
timeout long: Es el tiempo máximo de espera en ms. 0 significa que no hay tiempo de espera.

idleOutputTimeout long: Es el tiempo máximo de espera en ms para obtener un resultado en las transmisiones de salida.

command String: El comando del sistema especificado y, de manera opcional, los argumentos para ejecutar

Muestra
CommandResult Un CommandResult que contiene el resultado de la ejecución del comando

runTimedCmdWithOutputMonitor

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

Método auxiliar para ejecutar un comando del sistema con almacenamiento en caché.

Si se especifica cacheClient, se habilitará el almacenamiento en caché. Si la caché está disponible, se mostrará el resultado almacenado en caché. De lo contrario, se usará runTimedCmdWithOutputMonitor(long, long, OutputStream, OutputStream, String) para ejecutar el comando y el resultado se subirá para almacenar en caché.

Parámetros
timeout long: Es el tiempo máximo de espera en ms. 0 significa que no hay tiempo de espera.

idleOutputTimeout long: Es el tiempo máximo en ms que se debe esperar para obtener resultados en los flujos de salida.

stdout OutputStream: ERROR(/OutputStream) a la que se redireccionará el resultado estándar. Puede ser nulo.

stderr OutputStream: ERROR(/OutputStream), a la que se redireccionará el resultado del error. Puede ser nulo.

cacheClient ICacheClient: Es una instancia de ICacheClient que se usa para controlar el almacenamiento en caché.

command String: El comando del sistema especificado y, de manera opcional, los argumentos para ejecutar.

Muestra
CommandResult Un CommandResult que contiene el resultado de la ejecución del comando

runTimedreintentar

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

Bloquear y ejecutar una operación varias veces hasta que tenga éxito

Parámetros
opTimeout long: Es el tiempo máximo de espera en ms para un intento de operación.

pollInterval long: Es el tiempo de espera entre las reintentos de comandos.

attempts int: Es la cantidad máxima de intentos que se pueden intentar.

runnable IRunUtil.IRunnableResult: Es IRunUtil.IRunnableResult para ejecutar.

Muestra
boolean true si la operación se completó correctamente antes de que se alcanzaran los intentos.

runTimedRetryWithOutputMonitor

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

Bloquea y ejecuta una operación varias veces hasta que se complete correctamente. También supervisa las transmisiones de salida en busca de actividad y se cancela si no se observa actividad de transmisión durante un tiempo especificado. Si inactivoOutputTimeout se establece en cero, no se realizará ninguna supervisión de transmisión.

Parámetros
opTimeout long: Es el tiempo máximo de espera en ms para un intento de operación.

idleOutputTimeout long: Es el tiempo máximo en ms que se debe esperar para obtener resultados en los flujos de salida.

pollInterval long: Es el tiempo de espera entre las reintentos de comandos.

attempts int: Es la cantidad máxima de intentos que se deben realizar.

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult para ejecutar

Muestra
boolean true si la operación se completó correctamente antes de que se alcanzaran los intentos.

runTimedWithOutputMonitor

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

Bloquea y ejecuta una operación, y la aborta si tarda más de un tiempo especificado. También supervisa las transmisiones de salida en busca de actividad y se cancela si no se observa actividad de transmisión durante un tiempo especificado. Si idleOutputTimeout se establece en cero, no se realizará ninguna supervisión de transmisión.

Parámetros
timeout long: Es el tiempo máximo de espera en ms.

idleOutputTimeout long: Es el tiempo máximo en ms que se debe esperar para obtener resultados en los flujos de salida.

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult para ejecutar

logErrors boolean: Registra errores en la excepción o no.

Muestra
CommandStatus el resultado CommandStatus de la operación.

setEnvVariable

public void setEnvVariable (String name, 
                String value)

Establece una variable de entorno para usar cuando se ejecutan comandos del sistema.

Parámetros
name String: Es el nombre de la variable.

value String: El valor de la variable

setEnvVariablePriority

public void setEnvVariablePriority (IRunUtil.EnvPriority priority)

Decide si, cuando creas un proceso, anular la configuración de la variable de entorno tiene una prioridad más alta que configurarla. De forma predeterminada, la anulación de configuración tiene una prioridad más alta, lo que significa que, si se intenta establecer una variable con el mismo nombre, no se hará, ya que la variable no se establecerá. No se puede usar en la instancia predeterminada de IRunUtil.

Parámetros
priority IRunUtil.EnvPriority

setInterruptibleInFuture

public void setInterruptibleInFuture (Thread thread, 
                long timeMs)

Se establece como interrumpible después de un tiempo de espera. ERROR(/CommandScheduler#shutdownHard()) para aplicar la cancelación en algún momento.

Parámetros
thread Thread: Es el subproceso que se volverá interrumpible.

timeMs long: Es el tiempo de espera antes de establecer la interrupción.

setLinuxInterruptProcess

public void setLinuxInterruptProcess (boolean interrupt)

Permite usar la interrupción "kill" de Linux en el proceso que se ejecuta a través de métodos #runTimed cuando se alcanza un tiempo de espera. No se puede usar en la instancia predeterminada de IRunUtil.

Parámetros
interrupt boolean

setRedirectStderrToStdout

public void setRedirectStderrToStdout (boolean redirect)

Establece el flujo de error estándar para que redireccione al flujo de salida estándar cuando se ejecuten comandos del sistema. El valor inicial es falso.

Parámetros
redirect boolean: Es el valor nuevo para redireccionar o no.

setWorkingDir

public void setWorkingDir (File dir)

Establece el directorio de trabajo para los comandos del sistema.

Parámetros
dir File: El directorio de trabajo

sleep

public void sleep (long time)

Es un método auxiliar para suspender la ejecución durante un tiempo determinado, sin tener en cuenta las excepciones.

Parámetros
time long: Es la cantidad de milisegundos que se deben suspender. Se ignorarán los valores inferiores o iguales a 0.

toRelative

public static String toRelative (File start, 
                File target)

Parámetros
start File

target File

Muestra
String

toRelative

public static String toRelative (File start, 
                String target)

Parámetros
start File

target String

Muestra
String

unsetEnvVariable

public void unsetEnvVariable (String key)

Desactiva una variable de entorno, de modo que los comandos del sistema se ejecuten sin ella. Las variables de entorno pueden heredar del proceso superior, por lo que debemos borrar la variable de entorno de ProcessBuilder.environment().

Parámetros
key String: Es el nombre de la variable.

uploadCache

public void uploadCache (ICacheClient cacheClient, 
                ExecutableActionResult actionResult)

Sube el último ExecutableActionResult que se ejecutó con un cacheClient.

Parámetros
cacheClient ICacheClient: Es el ICacheClient que se usa para subir el resultado.

actionResult ExecutableActionResult: Es el ExecutableActionResult que se subirá.