IRunUtil

public interface IRunUtil

com.android.tradefed.util.IRunUtil


Interface permettant d'exécuter des opérations programmées et des commandes système.

Résumé

Classes imbriquées

interface IRunUtil.IRunnableResult

Interface permettant d'exécuter de manière asynchrone une opération qui renvoie un état booléen. 

Méthodes publiques

abstract void allowInterrupt(boolean allow)

Active/désactive les interruptions d'exécution sur le thread actuel.

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

Interrompt les opérations d'exécution en cours ou à venir sur le thread donné.

abstract void interrupt(Thread thread, String message)

Interrompt les opérations d'exécution en cours ou à venir sur le thread donné.

abstract boolean isInterruptAllowed()

Indique l'état d'interruption de RunUtil.

abstract Process runCmdInBackground(Redirect redirect, command)

Autre méthode runCmdInBackground(String) qui accepte les arguments de commande au format ERROR(/List).

abstract Process runCmdInBackground( command)

Autre méthode runCmdInBackground(String) qui accepte les arguments de commande au format ERROR(/List).

abstract Process runCmdInBackground( command, OutputStream output)

L'exécution d'une commande avec un ERROR(/OutputStream) consigne la sortie de la commande.

abstract Process runCmdInBackground(String... command)

Méthode d'assistance permettant d'exécuter une commande système de manière asynchrone.

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

Méthode d'assistance permettant d'exécuter une commande système de manière asynchrone.

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

Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse.

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

Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse.

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

Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse.

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

Bloque et exécute une opération, l'interrompant si elle prend plus de temps que la durée spécifiée.

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

Méthode d'assistance permettant d'exécuter une commande système, d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée et de rediriger la sortie vers des fichiers, le cas échéant.

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

Méthode d'assistance permettant d'exécuter une commande système et d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée.

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

Méthode d'assistance permettant d'exécuter une commande système et d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée.

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

Méthode d'assistance permettant d'exécuter une commande système et d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée.

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

Méthode d'assistance permettant d'exécuter une commande système et d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée.

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

Méthode d'assistance permettant d'exécuter une commande système et d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée.

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

Méthode d'assistance permettant d'exécuter une commande système, d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée et de rediriger la sortie vers des fichiers, le cas échéant.

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

Méthode d'assistance permettant d'exécuter une commande système nécessitant une entrée stdin et d'arrêter l'exécution si elle prend plus de temps qu'une durée spécifiée.

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

Méthode d'assistance permettant d'exécuter une commande système nécessitant une entrée stdin et d'arrêter l'exécution si elle prend plus de temps qu'une durée spécifiée.

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

Méthode d'assistance permettant d'exécuter une commande système qui nécessite de rediriger Stdin à partir d'un fichier et d'arrêter l'exécution si elle prend plus de temps que l'heure spécifiée.

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

Méthode d'assistance permettant d'exécuter une commande système, d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée et de rediriger la sortie vers des fichiers, le cas échéant.

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

Méthode d'assistance permettant d'exécuter une commande système et d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée.

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

Méthode d'assistance permettant d'exécuter une commande système avec mise en cache.

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

Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse.

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

Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse.

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

Bloque et exécute une opération, l'interrompant si elle prend plus de temps que la durée spécifiée.

abstract void setEnvVariable(String key, String value)

Définit une variable d'environnement à utiliser lors de l'exécution de commandes système.

abstract void setEnvVariablePriority(IRunUtil.EnvPriority priority)

Déterminez si, lors de la création d'un processus, le fait de ne pas définir une variable d'environnement est prioritaire sur la définition de celle-ci.

abstract void setInterruptibleInFuture(Thread thread, long timeMs)

Définir comme interruptible après un certain temps d'attente.

abstract void setLinuxInterruptProcess(boolean interrupt)

Autorisez l'utilisation de l'interruption "kill" Linux sur le processus exécuté via les méthodes #runTimed lorsqu'il atteint un délai avant expiration.

abstract void setRedirectStderrToStdout(boolean redirect)

Définissez le flux d'erreur standard pour qu'il soit redirigé vers le flux de sortie standard lorsque vous exécutez des commandes système.

abstract void setWorkingDir(File dir)

Définit le répertoire de travail pour les commandes système.

abstract void sleep(long time)

Méthode d'assistance permettant de suspendre l'exécution pendant un temps donné, en ignorant les exceptions.

abstract void unsetEnvVariable(String key)

Désactive une variable d'environnement, de sorte que les commandes système s'exécutent sans cette variable d'environnement.

abstract void uploadCache(ICacheClient cacheClient, ExecutableActionResult actionResult)

Met en ligne la dernière ExecutableActionResult exécutée avec un cacheClient.

Méthodes publiques

allowInterrupt

public abstract void allowInterrupt (boolean allow)

Active/désactive les interruptions d'exécution sur le thread actuel. Si elle est autorisée, les opérations d'exécution du thread actuel peuvent être interrompues par d'autres threads via la méthode interrupt(Thread, String).

Paramètres
allow boolean: indique si les interruptions d'exécution sont autorisées sur le thread actuel.

interruption

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

Interrompt les opérations d'exécution en cours ou à venir sur le thread donné. Les opérations d'exécution sur le thread donné génèrent une exception RunInterruptedException.

Paramètres
message String: message pour RunInterruptedException.

errorId ErrorIdentifier: représente la cause de l'interruption lorsqu'elle est connue.

interruption

public abstract void interrupt (Thread thread, 
                String message)

Interrompt les opérations d'exécution en cours ou à venir sur le thread donné. Les opérations d'exécution sur le thread donné génèrent une exception RunInterruptedException.

Paramètres
message String: message pour RunInterruptedException.

isInterruptAllowed

public abstract boolean isInterruptAllowed ()

Indique l'état d'interruption de RunUtil.

Renvoie
boolean "true" si l'exécution peut être interrompue, ou "false" dans le cas contraire.

runCmdInBackground

public abstract Process runCmdInBackground (Redirect redirect, 
                 command)

Autre méthode runCmdInBackground(String) qui accepte les arguments de commande au format ERROR(/List).

Paramètres
redirect Redirect: ERROR(/Redirect) à appliquer à ProcessBuilder.

command : ERROR(/List) contenant la commande système spécifiée et éventuellement des arguments à exécuter

Renvoie
Process Process de la commande exécutée

Génère
si l'exécution de la commande a échoué

runCmdInBackground

public abstract Process runCmdInBackground ( command)

Autre méthode runCmdInBackground(String) qui accepte les arguments de commande au format ERROR(/List).

Paramètres
command : ERROR(/List) contenant la commande système spécifiée et éventuellement des arguments à exécuter

Renvoie
Process Process de la commande exécutée

Génère
si l'exécution de la commande a échoué

runCmdInBackground

public abstract Process runCmdInBackground ( command, 
                OutputStream output)

L'exécution d'une commande avec un ERROR(/OutputStream) consigne la sortie de la commande. Stdout et stderr sont fusionnés.

Paramètres
command : commande à exécuter

output OutputStream: OutputStream pour enregistrer la sortie

Renvoie
Process Process exécutant la commande

Génère
IOException

runCmdInBackground

public abstract Process runCmdInBackground (String... command)

Méthode d'assistance permettant d'exécuter une commande système de manière asynchrone.

Il renvoie immédiatement la commande de lancement.

Paramètres
command String: commande système spécifiée et éventuellement arguments d'exécution

Renvoie
Process Process de la commande exécutée

Génère
si l'exécution de la commande a échoué

runCmdInBackground

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

Méthode d'assistance permettant d'exécuter une commande système de manière asynchrone.

Il renvoie immédiatement la commande de lancement.

Paramètres
redirect Redirect: ERROR(/Redirect) à appliquer à ProcessBuilder.

command String: commande système spécifiée et éventuellement arguments d'exécution

Renvoie
Process Process de la commande exécutée

Génère
si l'exécution de la commande a échoué

runEscalatingTimedRetry

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

Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse.

Augmentez de manière exponentielle le délai d'attente entre les tentatives d'opération. Il est destiné à être utilisé lors de l'exécution d'une opération telle que l'interrogation d'un serveur, pour lui laisser le temps de se rétablir en cas de panne temporaire.

Paramètres
opTimeout long: durée maximale d'attente (en ms) pour une tentative d'opération unique

initialPollInterval long: délai d'attente initial entre les tentatives d'opération

maxPollInterval long: durée maximale d'attente entre les tentatives d'opération

maxTime long: durée maximale approximative totale à laquelle l'opération doit être réessayée

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult à exécuter

Renvoie
boolean true si l'opération s'est terminée avec succès avant l'expiration de maxTime

runFixedTimedRetry

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

Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse.

Paramètres
opTimeout long: durée maximale d'attente (en ms) pour une tentative d'opération unique

pollInterval long: délai d'attente initial entre les tentatives d'opération

maxTime long: durée maximale approximative totale à laquelle l'opération doit être réessayée

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult à exécuter

Renvoie
boolean true si l'opération s'est terminée avec succès avant l'expiration de maxTime

runFixedTimedRetryWithOutputMonitor

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

Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse. Surveille également l'activité des flux de sortie et interrompt le processus si aucune activité de flux n'est observée pendant une durée spécifiée. Si idleOutputTimeout est défini sur zéro, aucune surveillance du flux ne sera effectuée.

Paramètres
opTimeout long: durée maximale d'attente (en ms) pour une tentative d'opération unique

idleOutputTimeout long: durée maximale d'attente (en millisecondes) pour la sortie sur les flux de sortie

pollInterval long: délai d'attente initial entre les tentatives d'opération

maxTime long: durée maximale approximative totale à laquelle l'opération doit être réessayée

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult à exécuter

Renvoie
boolean true si l'opération s'est terminée avec succès avant l'expiration de maxTime

runTimed

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

Bloque et exécute une opération, l'interrompant si elle prend plus de temps que la durée spécifiée.

Paramètres
timeout long: temps d'attente maximal en ms

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult à exécuter

logErrors boolean: journalise les erreurs en cas d'exception ou non.

Renvoie
CommandStatus le résultat CommandStatus de l'opération.

runTimedCmd

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

Méthode d'assistance permettant d'exécuter une commande système, d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée et de rediriger la sortie vers des fichiers, le cas échéant. Lorsque des ERROR(/OutputStream) sont fournis de cette manière, ils restent ouverts à la fin de la fonction.

Paramètres
timeout long: délai d'inactivité maximal en ms. La valeur 0 indique qu'aucun délai d'inactivité n'est défini.

stdout OutputStream: ERROR(/OutputStream) où la sortie standard sera redirigée. Peut être null.

stderr OutputStream: ERROR(/OutputStream) vers lequel la sortie d'erreur sera redirigée. Peut être null.

command String: commande système spécifiée et éventuellement arguments d'exécution

Renvoie
CommandResult un CommandResult contenant le résultat de l'exécution de la commande

runTimedCmd

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

Méthode d'assistance permettant d'exécuter une commande système et d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée.

Paramètres
timeout long: durée d'attente maximale en ms. La valeur 0 indique qu'aucun délai avant expiration n'est défini.

command String: commande système spécifiée et éventuellement arguments d'exécution

Renvoie
CommandResult un CommandResult contenant le résultat de l'exécution de la commande

runTimedCmdRetry

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

Méthode d'assistance permettant d'exécuter une commande système et d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée.

Paramètres
timeout long: durée maximale d'attente en ms pour chaque tentative

retryInterval long: temps d'attente entre les nouvelles tentatives de commande

attempts int: nombre maximal d'essais à effectuer

command String: commande système spécifiée et éventuellement arguments d'exécution

Renvoie
CommandResult un CommandResult contenant le résultat de l'exécution de la commande

runTimedCmdRetryWithOutputMonitor

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

Méthode d'assistance permettant d'exécuter une commande système et d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée. Surveille également l'activité des flux de sortie et interrompt le processus si aucune activité de flux n'est observée pendant une durée spécifiée. Si idleOutputTimeout est défini sur zéro, aucune surveillance du flux ne sera effectuée.

Paramètres
timeout long: durée maximale d'attente en ms pour chaque tentative

idleOutputTimeout long: durée maximale d'attente (en millisecondes) pour la sortie sur les flux de sortie

retryInterval long: temps d'attente entre les nouvelles tentatives de commande

attempts int: nombre maximal d'essais à effectuer

command String: commande système spécifiée et éventuellement arguments d'exécution

Renvoie
CommandResult un CommandResult contenant le résultat de l'exécution de la commande

runTimedCmdSilently

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

Méthode d'assistance permettant d'exécuter une commande système et d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée. Semblable à runTimedCmd(long, String), mais ne consigne aucune erreur en cas d'exception.

Paramètres
timeout long: temps d'attente maximal en ms

command String: commande système spécifiée et éventuellement arguments d'exécution

Renvoie
CommandResult un CommandResult contenant le résultat de l'exécution de la commande

runTimedCmdSilentlyRetry

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

Méthode d'assistance permettant d'exécuter une commande système et d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée. Semblable à runTimedCmdRetry(long, long, int, String[]), mais ne consigne aucune erreur en cas d'exception.

Paramètres
timeout long: temps d'attente maximal en ms

retryInterval long: temps d'attente entre les nouvelles tentatives de commande

attempts int: nombre maximal d'essais à effectuer

command String: commande système spécifiée et éventuellement arguments d'exécution

Renvoie
CommandResult un CommandResult contenant le résultat de l'exécution de la commande

runTimedCmdWithInput

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

Méthode d'assistance permettant d'exécuter une commande système, d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée et de rediriger la sortie vers des fichiers, le cas échéant.

Paramètres
timeout long: délai d'inactivité maximal en ms. La valeur 0 indique qu'aucun délai d'inactivité n'est défini.

input String: entrée stdin à transmettre au processus

stdoutFile File: ERROR(/File) où la sortie standard sera redirigée. Peut être null.

stderrFile File: ERROR(/File) vers lequel la sortie d'erreur sera redirigée. Peut être null.

command String: commande système spécifiée et éventuellement arguments d'exécution

Renvoie
CommandResult un CommandResult contenant le résultat de l'exécution de la commande

runTimedCmdWithInput

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

Méthode d'assistance permettant d'exécuter une commande système nécessitant une entrée stdin et d'arrêter l'exécution si elle prend plus de temps qu'une durée spécifiée.

Paramètres
timeout long: temps d'attente maximal en ms

input String: entrée stdin à transmettre au processus

command String: commande système spécifiée et éventuellement arguments d'exécution

Renvoie
CommandResult un CommandResult contenant le résultat de l'exécution de la commande

runTimedCmdWithInput

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

Méthode d'assistance permettant d'exécuter une commande système nécessitant une entrée stdin et d'arrêter l'exécution si elle prend plus de temps qu'une durée spécifiée.

Paramètres
timeout long: temps d'attente maximal en ms

input String: entrée stdin à transmettre au processus

command : ERROR(/List) contenant la commande système et éventuellement des arguments d'exécution

Renvoie
CommandResult un CommandResult contenant le résultat de l'exécution de la commande

runTimedCmdWithInputRedirect

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

Méthode d'assistance permettant d'exécuter une commande système qui nécessite de rediriger Stdin à partir d'un fichier et d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée.

Paramètres
timeout long: temps d'attente maximal en ms

inputRedirect File: ERROR(/File) à rediriger en tant qu'entrée standard à l'aide de ProcessBuilder.redirectInput(). Si la valeur est nulle, stdin n'est pas redirigé.

command String: commande système spécifiée et éventuellement arguments d'exécution

Renvoie
CommandResult un CommandResult contenant le résultat de l'exécution de la commande

runTimedCmdWithOutputMonitor

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

Méthode d'assistance permettant d'exécuter une commande système, d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée et de rediriger la sortie vers des fichiers, le cas échéant. Lorsque des ERROR(/OutputStream) sont fournis de cette manière, ils restent ouverts à la fin de la fonction.

Paramètres
timeout long: délai d'inactivité maximal en ms. La valeur 0 indique qu'aucun délai d'inactivité n'est défini.

idleOutputTimeout long: durée maximale d'attente (en millisecondes) pour la sortie sur les flux de sortie

stdout OutputStream: ERROR(/OutputStream) où la sortie standard sera redirigée. Peut être null.

stderr OutputStream: ERROR(/OutputStream) vers lequel la sortie d'erreur sera redirigée. Peut être null.

command String: commande système spécifiée et éventuellement arguments d'exécution

Renvoie
CommandResult un CommandResult contenant le résultat de l'exécution de la commande

runTimedCmdWithOutputMonitor

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

Méthode d'assistance permettant d'exécuter une commande système et d'arrêter l'exécution si elle prend plus de temps que la durée spécifiée. Surveille également l'activité des flux de sortie et interrompt le processus si aucune activité de flux n'est observée pendant une durée spécifiée. Si idleOutputTimeout est défini sur zéro, aucune surveillance du flux ne sera effectuée.

Paramètres
timeout long: durée d'attente maximale en ms. La valeur 0 indique qu'aucun délai avant expiration n'est défini.

idleOutputTimeout long: durée maximale d'attente (en millisecondes) pour la sortie sur les flux de sortie

command String: commande système spécifiée et éventuellement arguments d'exécution

Renvoie
CommandResult un CommandResult contenant le résultat de l'exécution de la commande

runTimedCmdWithOutputMonitor

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

Méthode d'assistance permettant d'exécuter une commande système avec mise en cache.

Si cacheClient est spécifié, la mise en cache est activée. Si le cache est disponible, le résultat mis en cache est renvoyé. Sinon, runTimedCmdWithOutputMonitor(long, long, OutputStream, OutputStream, String) est utilisé pour exécuter la commande et le résultat est mis en cache.

Paramètres
timeout long: délai d'inactivité maximal en ms. La valeur 0 indique qu'aucun délai d'inactivité n'est défini.

idleOutputTimeout long: durée maximale d'attente (en millisecondes) pour la sortie sur les flux de sortie.

stdout OutputStream: ERROR(/OutputStream) où la sortie standard sera redirigée. Peut être null.

stderr OutputStream: ERROR(/OutputStream) vers lequel la sortie d'erreur sera redirigée. Peut être null.

cacheClient ICacheClient: instance de ICacheClient utilisée pour gérer la mise en cache.

command String: commande système spécifiée et éventuellement arguments d'exécution.

Renvoie
CommandResult un CommandResult contenant le résultat de l'exécution de la commande.

runTimedRetry

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

Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse.

Paramètres
opTimeout long: durée maximale d'attente en millisecondes pour une tentative d'opération

pollInterval long: temps d'attente entre les nouvelles tentatives de commande

attempts int: nombre maximal d'essais à effectuer

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult à exécuter

Renvoie
boolean true si l'opération a abouti avant que le nombre d'essais ne soit atteint.

runTimedRetryWithOutputMonitor

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

Bloque et exécute une opération plusieurs fois jusqu'à ce qu'elle aboutisse. Surveille également l'activité des flux de sortie et interrompt le processus si aucune activité de flux n'est observée pendant une durée spécifiée. Si idleOutputTimeout est défini sur zéro, aucune surveillance du flux ne sera effectuée.

Paramètres
opTimeout long: durée maximale d'attente en millisecondes pour une tentative d'opération

idleOutputTimeout long: durée maximale d'attente (en millisecondes) pour la sortie sur les flux de sortie

pollInterval long: temps d'attente entre les nouvelles tentatives de commande

attempts int: nombre maximal d'essais à effectuer

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult à exécuter

Renvoie
boolean true si l'opération a abouti avant que le nombre d'essais ne soit atteint.

runTimedWithOutputMonitor

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

Bloque et exécute une opération, l'interrompant si elle prend plus de temps que la durée spécifiée. Surveille également l'activité des flux de sortie, et interrompt le processus si aucune activité de flux n'est observée pendant une durée spécifiée. Si idleOutputTimeout est défini sur zéro, aucune surveillance du flux ne sera effectuée.

Paramètres
timeout long: temps d'attente maximal en ms

idleOutputTimeout long: durée maximale d'attente (en millisecondes) pour la sortie sur les flux de sortie

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult à exécuter

logErrors boolean: journalise les erreurs en cas d'exception ou non.

Renvoie
CommandStatus le résultat CommandStatus de l'opération.

setEnvVariable

public abstract void setEnvVariable (String key, 
                String value)

Définit une variable d'environnement à utiliser lors de l'exécution de commandes système.

Paramètres
key String: nom de la variable

value String: valeur de la variable

setEnvVariablePriority

public abstract void setEnvVariablePriority (IRunUtil.EnvPriority priority)

Déterminez si, lors de la création d'un processus, le fait de ne pas définir une variable d'environnement est prioritaire sur la définition de celle-ci. Par défaut, la suppression de la valeur est prioritaire. Autrement dit, si une tentative de définition d'une variable portant le même nom est effectuée, elle ne sera pas effectuée, car la variable sera supprimée. Ne peut pas être utilisé sur l'instance IRunUtil par défaut.

Paramètres
priority IRunUtil.EnvPriority

setInterruptibleInFuture

public abstract void setInterruptibleInFuture (Thread thread, 
                long timeMs)

Définir comme interruptible après un certain temps d'attente. ERROR(/CommandScheduler#shutdownHard()) pour appliquer l'arrêt à terme.

Paramètres
thread Thread: thread qui deviendra interruptible.

timeMs long: temps d'attente avant de définir l'interruption.

setLinuxInterruptProcess

public abstract void setLinuxInterruptProcess (boolean interrupt)

Autorisez l'utilisation de l'interruption "kill" Linux sur le processus exécuté via les méthodes #runTimed lorsqu'il atteint un délai avant expiration. Ne peut pas être utilisé sur l'instance IRunUtil par défaut.

Paramètres
interrupt boolean

setRedirectStderrToStdout

public abstract void setRedirectStderrToStdout (boolean redirect)

Définissez le flux d'erreur standard pour qu'il soit redirigé vers le flux de sortie standard lorsque vous exécutez des commandes système. La valeur initiale est "false".

Paramètres
redirect boolean: nouvelle valeur indiquant si la redirection doit être effectuée ou non

setWorkingDir

public abstract void setWorkingDir (File dir)

Définit le répertoire de travail pour les commandes système.

Paramètres
dir File: répertoire de travail

sommeil

public abstract void sleep (long time)

Méthode d'assistance permettant de suspendre l'exécution pendant un temps donné, en ignorant les exceptions.

Paramètres
time long: temps d'inactivité en millisecondes. Les valeurs inférieures ou égales à 0 sont ignorées.

unsetEnvVariable

public abstract void unsetEnvVariable (String key)

Désactive une variable d'environnement, de sorte que les commandes système s'exécutent sans cette variable d'environnement.

Paramètres
key String: nom de la variable

uploadCache

public abstract void uploadCache (ICacheClient cacheClient, 
                ExecutableActionResult actionResult)

Met en ligne la dernière ExecutableActionResult exécutée avec un cacheClient.

Paramètres
cacheClient ICacheClient: ICacheClient utilisé pour importer le résultat.

actionResult ExecutableActionResult: ExecutableActionResult à importer.