ICommandScheduler
public
interface
ICommandScheduler
| com.android.tradefed.command.ICommandScheduler |
Es un programador para ejecutar comandos de TradeFederation.
Resumen
Clases anidadas | |
|---|---|
interface |
ICommandScheduler.IScheduledInvocationListener
Es un objeto de escucha para los eventos de invocación cuando se completa la invocación. |
Métodos públicos | |
|---|---|
abstract
Pair<Boolean, Integer>
|
addCommand(String[] args)
Agrega un comando al programador. |
abstract
void
|
addCommandFile(String cmdFile,
Agrega todos los comandos del archivo determinado al programador. |
abstract
void
|
await()
Espera a que el programador comience a ejecutarse, lo que incluye esperar a que se complete la transferencia del TF anterior, si corresponde. |
abstract
void
|
displayCommandQueue(PrintWriter printWriter)
Genera información de depuración detallada sobre el estado de la cola de ejecución de comandos. |
abstract
void
|
displayCommandsInfo(PrintWriter printWriter, String regex)
Genera una lista de los comandos actuales. |
abstract
void
|
displayInvocationsInfo(PrintWriter printWriter)
Muestra una lista de las invocaciones actuales. |
abstract
void
|
dumpCommandsXml(PrintWriter printWriter, String regex)
Volca el archivo XML expandido para el comando con todos los valores de |
abstract
long
|
execCommand(IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Asigna directamente un dispositivo y ejecuta un comando sin agregarlo a la cola de comandos con un |
abstract
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Asigna un dispositivo directamente y ejecuta un comando sin agregarlo a la cola de comandos. |
abstract
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)
Ejecuta el comando directamente en el dispositivo ya asignado. |
abstract
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener,
Ejecuta el comando directamente en los dispositivos ya asignados. |
abstract
CommandFileWatcher
|
getCommandFileWatcher()
Obtén el CommandFileWatcher adecuado para este programador |
abstract
int
|
getExecutingCommandCount()
Devuelve la cantidad de comandos en estado de ejecución. |
abstract
String
|
getInvocationInfo(int invocationId)
Devuelve la información sobre una invocación especificando su ID. |
abstract
CommandRunner.ExitCode
|
getLastInvocationExitCode()
Devuelve el código de error de la última invocación que se ejecutó. |
abstract
Throwable
|
getLastInvocationThrowable()
Devuelve el |
abstract
int
|
getReadyCommandCount()
Devuelve la cantidad de comandos en estado listo en la cola. |
abstract
boolean
|
isDeviceInInvocationThread(ITestDevice device)
Devuelve verdadero si el dispositivo se usa en un subproceso de invocación activo. |
abstract
void
|
join()
Espera a que se complete el programador. |
abstract
void
|
join(long millis)
Espera a que el programador se complete o se agote el tiempo de espera después de la duración especificada en milisegundos. |
abstract
void
|
removeAllCommands()
Quita todos los comandos del programador |
abstract
void
|
setClearcutClient(ClearcutClient client)
Configura el cliente para que informe los datos del arnés |
default
void
|
setMaxPollTime(long polling)
|
default
void
|
setPrintSchedulingWarning(boolean print)
|
abstract
boolean
|
shouldShutdownOnCmdfileError()
Devuelve verdadero si necesitamos detener el programador en caso de errores de comando. |
default
void
|
shutdown()
Intenta apagar de forma correcta el programador de comandos. |
abstract
void
|
shutdown(boolean notifyStop)
Intenta apagar de forma correcta el programador de comandos. |
abstract
void
|
shutdownHard(boolean killAdb)
Intenta apagar de forma forzosa el programador de comandos. |
abstract
void
|
shutdownHard()
Intenta apagar de forma forzosa el programador de comandos. |
abstract
void
|
shutdownOnEmpty()
Es similar a |
abstract
void
|
start()
Inicia el |
abstract
boolean
|
stopInvocation(int invocationId, String cause)
Detiene una invocación en ejecución especificando su ID. |
default
boolean
|
stopInvocation(int invocationId)
Detiene una invocación en ejecución especificando su ID. |
abstract
boolean
|
stopInvocation(ITestInvocation invocation)
Detiene una invocación en ejecución. |
default
void
|
stopScheduling()
Detiene la programación y la aceptación de pruebas nuevas, pero no detiene Tradefed. |
Métodos públicos
addCommand
public abstract Pair<Boolean, Integer> addCommand (String[] args)
Agrega un comando al programador.
Un comando es, básicamente, una instancia de una configuración para ejecutar y sus argumentos asociados.
Si se especifica el argumento "--help", el texto de ayuda para la configuración se generará en stdout. De lo contrario, la configuración se agregará a la cola para que se ejecute.
| Parámetros | |
|---|---|
args |
String: Son los argumentos de configuración. |
| Muestra | |
|---|---|
Pair<Boolean, Integer> |
Es un par de valores. El primer valor es un true booleano si el comando se agregó correctamente. El segundo valor es el ID de seguimiento del comando conocido(valor no negativo) si el comando se agregó correctamente. De lo contrario, devuelve 0 cuando el comando se agrega para todos los dispositivos o -1. |
| Arroja | |
|---|---|
ConfigurationException |
Si no se pudo analizar el comando |
addCommandFile
public abstract void addCommandFile (String cmdFile,
extraArgs) Agrega todos los comandos del archivo determinado al programador.
| Parámetros | |
|---|---|
cmdFile |
String: Es la ruta de acceso del sistema de archivos del archivo de comandos. |
extraArgs |
: Es un ERROR(/List) de argumentos String que se anexarán a cada comando analizado desde el archivo. Puede estar vacío, pero no debe ser nulo. |
| Arroja | |
|---|---|
ConfigurationException |
Si no se pudo analizar el archivo de comandos |
También:
await
public abstract void await ()
Espera a que el programador comience a ejecutarse, lo que incluye esperar a que se complete la transferencia del TF anterior, si corresponde.
displayCommandQueue
public abstract void displayCommandQueue (PrintWriter printWriter)
Genera información de depuración detallada sobre el estado de la cola de ejecución de comandos.
displayCommandsInfo
public abstract void displayCommandsInfo (PrintWriter printWriter,
String regex)Genera una lista de los comandos actuales.
| Parámetros | |
|---|---|
printWriter |
PrintWriter: Es el ERROR(/PrintWriter) en el que se generará el resultado. |
regex |
String: Es la expresión regular con la que se deben hacer coincidir los comandos para que se impriman. Si es nulo, se imprimirán todos los comandos. |
displayInvocationsInfo
public abstract void displayInvocationsInfo (PrintWriter printWriter)
Muestra una lista de las invocaciones actuales.
| Parámetros | |
|---|---|
printWriter |
PrintWriter: Es el ERROR(/PrintWriter) en el que se generará el resultado. |
dumpCommandsXml
public abstract void dumpCommandsXml (PrintWriter printWriter,
String regex)Volca el archivo XML expandido para el comando con todos los valores de Option especificados para todos los comandos actuales.
| Parámetros | |
|---|---|
printWriter |
PrintWriter: Es el objeto ERROR(/PrintWriter) en el que se generará el estado. |
regex |
String: Es la expresión regular con la que se deben hacer coincidir los comandos para que se vuelque el archivo XML. Si es nulo, se volcarán todos los comandos. |
execCommand
public abstract long execCommand (IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Asigna directamente un dispositivo y ejecuta un comando sin agregarlo a la cola de comandos con un IInvocationContext ya existente.
| Parámetros | |
|---|---|
context |
IInvocationContext: Es un IInvocationContext existente. |
listener |
ICommandScheduler.IScheduledInvocationListener: Es el ICommandScheduler.IScheduledInvocationListener que se informará. |
args |
String: Los argumentos del comando |
| Muestra | |
|---|---|
long |
|
| Arroja | |
|---|---|
ConfigurationException |
Si el comando no era válido |
NoDeviceException |
Si no hay ningún dispositivo para usar |
execCommand
public abstract long execCommand (ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Asigna un dispositivo directamente y ejecuta un comando sin agregarlo a la cola de comandos.
| Parámetros | |
|---|---|
listener |
ICommandScheduler.IScheduledInvocationListener: Es el ICommandScheduler.IScheduledInvocationListener que se informará. |
args |
String: Los argumentos del comando |
| Muestra | |
|---|---|
long |
Es el ID de invocación del comando programado. |
| Arroja | |
|---|---|
ConfigurationException |
Si el comando no era válido |
NoDeviceException |
Si no hay ningún dispositivo para usar |
execCommand
public abstract long execCommand (ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)
Ejecuta el comando directamente en el dispositivo ya asignado.
| Parámetros | |
|---|---|
listener |
ICommandScheduler.IScheduledInvocationListener: Es el ICommandScheduler.IScheduledInvocationListener que se informará. |
device |
ITestDevice: El ITestDevice que se usará |
args |
String: Los argumentos del comando |
| Muestra | |
|---|---|
long |
Es el ID de invocación del comando programado. |
| Arroja | |
|---|---|
ConfigurationException |
Si el comando no era válido |
execCommand
public abstract long execCommand (ICommandScheduler.IScheduledInvocationListener listener,devices, String[] args)
Ejecuta el comando directamente en los dispositivos ya asignados.
| Parámetros | |
|---|---|
listener |
ICommandScheduler.IScheduledInvocationListener: Es el ICommandScheduler.IScheduledInvocationListener que se informará. |
devices |
: El ERROR(/List que se usará |
args |
String: Los argumentos del comando |
| Muestra | |
|---|---|
long |
Es el ID de invocación del comando programado. |
| Arroja | |
|---|---|
ConfigurationException |
Si el comando no era válido |
getCommandFileWatcher
public abstract CommandFileWatcher getCommandFileWatcher ()
Obtén el CommandFileWatcher adecuado para este programador
| Muestra | |
|---|---|
CommandFileWatcher |
|
getExecutingCommandCount
public abstract int getExecutingCommandCount ()
Devuelve la cantidad de comandos en estado de ejecución.
| Muestra | |
|---|---|
int |
|
getInvocationInfo
public abstract String getInvocationInfo (int invocationId)
Devuelve la información sobre una invocación especificando su ID.
| Parámetros | |
|---|---|
invocationId |
int: Es el ID de seguimiento de la invocación. |
| Muestra | |
|---|---|
String |
Un String que contiene información sobre la invocación. |
getLastInvocationExitCode
public abstract CommandRunner.ExitCode getLastInvocationExitCode ()
Devuelve el código de error de la última invocación que se ejecutó. Devuelve 0 (sin error) si aún no se ejecutó ninguna invocación.
| Muestra | |
|---|---|
CommandRunner.ExitCode |
|
getLastInvocationThrowable
public abstract Throwable getLastInvocationThrowable ()
Devuelve el Throwable de la última invocación que se ejecutó.
Devuelve null si no hay ningún objeto Throwable disponible.
| Muestra | |
|---|---|
Throwable |
|
getReadyCommandCount
public abstract int getReadyCommandCount ()
Devuelve la cantidad de comandos en estado listo en la cola.
| Muestra | |
|---|---|
int |
|
isDeviceInInvocationThread
public abstract boolean isDeviceInInvocationThread (ITestDevice device)
Devuelve verdadero si el dispositivo se usa en un subproceso de invocación activo.
| Parámetros | |
|---|---|
device |
ITestDevice |
| Muestra | |
|---|---|
boolean |
|
join
public abstract void join (long millis)
Espera a que el programador se complete o se agote el tiempo de espera después de la duración especificada en milisegundos.
| Parámetros | |
|---|---|
millis |
long |
También:
removeAllCommands
public abstract void removeAllCommands ()
Quita todos los comandos del programador
setClearcutClient
public abstract void setClearcutClient (ClearcutClient client)
Configura el cliente para que informe los datos del arnés
| Parámetros | |
|---|---|
client |
ClearcutClient |
setMaxPollTime
public void setMaxPollTime (long polling)
| Parámetros | |
|---|---|
polling |
long |
setPrintSchedulingWarning
public void setPrintSchedulingWarning (boolean print)
| Parámetros | |
|---|---|
print |
boolean |
shouldShutdownOnCmdfileError
public abstract boolean shouldShutdownOnCmdfileError ()
Devuelve verdadero si necesitamos detener el programador en caso de errores de comando.
| Muestra | |
|---|---|
boolean |
|
apagado
public void shutdown ()
Intenta apagar de forma correcta el programador de comandos.
Borra los comandos que esperan ser probados y solicita que todas las invocaciones en curso se cierren correctamente.
Después de que se llama a shutdown, el bucle principal del programador esperará a que se completen todas las invocaciones en curso antes de salir por completo.
apagado
public abstract void shutdown (boolean notifyStop)
Intenta apagar de forma correcta el programador de comandos.
| Parámetros | |
|---|---|
notifyStop |
boolean: Si es verdadero, notifica las invocaciones del cierre de TF. |
shutdownHard
public abstract void shutdownHard (boolean killAdb)
Intenta apagar de forma forzosa el programador de comandos.
Es similar a shutdown(), pero también puede cerrar la conexión de adb de forma opcional, en un intento de "inspirar" las invocaciones en curso para que se completen más rápido.
| Parámetros | |
|---|---|
killAdb |
boolean |
shutdownHard
public abstract void shutdownHard ()
Intenta apagar de forma forzosa el programador de comandos. Es igual que shutdownHard(true).
shutdownOnEmpty
public abstract void shutdownOnEmpty ()
Es similar a shutdown(), pero esperará a que se ejecuten todos los comandos antes de salir.
Ten en cuenta que, si algún comando está en modo de bucle, el programador nunca saldrá.
start
public abstract void start ()
Inicia el ICommandScheduler.
Se debe llamar antes de llamar a otros métodos.
Se ejecutará hasta que se llame a shutdown().
Consulta Thread.start().
stopInvocation
public abstract boolean stopInvocation (int invocationId,
String cause)Detiene una invocación en ejecución especificando su ID.
| Parámetros | |
|---|---|
invocationId |
int: Es el ID de seguimiento de la invocación. |
cause |
String: Es la causa por la que se detuvo la invocación. |
| Muestra | |
|---|---|
boolean |
Es verdadero si se detuvo la invocación; de lo contrario, es falso. |
| Arroja | |
|---|---|
UnsupportedOperationException |
si la implementación no admite esta opción |
stopInvocation
public boolean stopInvocation (int invocationId)
Detiene una invocación en ejecución especificando su ID.
| Parámetros | |
|---|---|
invocationId |
int |
| Muestra | |
|---|---|
boolean |
Es verdadero si se detuvo la invocación; de lo contrario, es falso. |
| Arroja | |
|---|---|
UnsupportedOperationException |
si la implementación no admite esta opción |
stopInvocation
public abstract boolean stopInvocation (ITestInvocation invocation)
Detiene una invocación en ejecución.
| Parámetros | |
|---|---|
invocation |
ITestInvocation |
| Muestra | |
|---|---|
boolean |
Es verdadero si se detuvo la invocación; de lo contrario, es falso. |
| Arroja | |
|---|---|
UnsupportedOperationException |
si la implementación no admite esta opción |
stopScheduling
public void stopScheduling ()
Detiene la programación y la aceptación de pruebas nuevas, pero no detiene Tradefed. Esto tiene como objetivo habilitar un cierre de dos pasos en el que primero se agotan todas las pruebas en ejecución y, luego, se finaliza el proceso de Tradefed.