Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Programador de comandos

public class CommandScheduler
extends Object implements ICommandScheduler

java.lang.Objeto
com.android.tradefed.command.CommandScheduler


Un programador para ejecutar comandos de TradeFederation en todos los dispositivos disponibles.

Intentará priorizar los comandos para que se ejecuten en función de un recuento total de ejecución de su tiempo de ejecución. por ejemplo, los comandos de ejecución rápida o infrecuentes tendrán prioridad sobre los comandos de ejecución prolongada.

Se ejecuta para siempre en segundo plano hasta que se apaga.

Resumen

Clases anidadas

enum CommandScheduler.HostState

Enumeraciones de diferentes estados de host

Constructores públicos

CommandScheduler ()

Crea un CommandScheduler .

Métodos públicos

boolean addCommand (String[] args)

Agrega un comando al planificador.

void addCommandFile (String cmdFilePath, extraArgs) addCommandFile (String cmdFilePath, extraArgs)

Agrega todos los comandos del archivo dado al programador

void await ()

Espera a que el programador comience a ejecutarse, incluida la espera de que se complete el traspaso del antiguo TF, si corresponde.

static TradefedDelegator checkDelegation (String[] args)

Cree un delegador basado en la línea de comando para ver si necesitamos delegar la ejecución.

void completeHandover ()

Informa al programador de comandos que una secuencia de transferencia iniciada está completamente completa y debe reiniciar su administrador remoto en el puerto predeterminado.

static createReleaseMap (IInvocationContext context, Throwable e)

Cree un mapa del estado de los dispositivos para que puedan liberarse adecuadamente.

ISandbox createSandbox ()

Cree un ISandbox que utilizará la invocación para ejecutarse.

void displayCommandQueue (PrintWriter printWriter)

Muestra información detallada de depuración sobre el estado de la cola de ejecución de comandos.

void displayCommandsInfo (PrintWriter printWriter, String regex)

Muestra una lista de los comandos actuales.

void displayInvocationsInfo (PrintWriter printWriter)

Muestra una lista de invocaciones actuales.

void dumpCommandsXml (PrintWriter printWriter, String regex)

Vuelque el archivo xml expandido para el comando con todos los valores de Option especificados para todos los comandos actuales.

void execCommand ( ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)

Ejecute directamente el comando en el dispositivo ya asignado.

void execCommand (IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)

Asigna directamente un dispositivo y ejecuta un comando sin agregarlo a la cola de comandos mediante un IInvocationContext ya existente.

void execCommand ( ICommandScheduler.IScheduledInvocationListener listener, String[] args)

Asigna directamente un dispositivo y ejecuta un comando sin agregarlo a la cola de comandos.

CommandFileWatcher getCommandFileWatcher ()

Obtenga el CommandFileWatcher apropiado para este programador

int getExecutingCommandCount ()

Devuelve el número de Comandos en estado de ejecución.

CommandScheduler.HostState getHostState ()
String getInvocationInfo (int invocationId)

Devuelve la información sobre un bu de invocación especificando el id de invocación.

CommandRunner.ExitCode getLastInvocationExitCode ()

Devuelve el código de error de la última invocación que se ejecutó.

Throwable getLastInvocationThrowable ()

Devuelve el Throwable de la última invocación que se ejecutó.

int getReadyCommandCount ()

Devuelve el número de Comandos en estado listo en la cola.

long getShutdownTimeout ()
void handoverInitiationComplete ()

Informa al programador de comandos que el intercambio de transferencia inicial de dispositivos y comandos en uso está completo y puede comenzar a programar la operación.

boolean handoverShutdown (int handoverPort)

Inicia un shutdown() y entrega a otro proceso tradefed en este mismo host.

void notifyFileChanged (File cmdFile, extraArgs) notifyFileChanged (File cmdFile, extraArgs)
void removeAllCommands ()

Eliminar todos los comandos del programador

void run ()

El principal bloque de ejecución de este hilo.

void setClearcutClient (ClearcutClient client)

Configurar el cliente para informar datos de arnés

boolean shouldShutdownOnCmdfileError ()

Devuelve verdadero si necesitamos apagar el programador en un error de comando

void shutdown ()

Intente cerrar correctamente el programador de comandos.

void shutdownHard (boolean killAdb)

Intente apagar a la fuerza el programador de comandos.

void shutdownHard ()

Intente apagar a la fuerza el programador de comandos.

void shutdownOnEmpty ()

Similar a shutdown() , pero esperará a que se ejecuten todos los comandos antes de salir.

void start ()

Inicia el programador, incluida la configuración del registro, el inicio de DeviceManager , etc.

boolean stopInvocation ( ITestInvocation invocation)

Detener una invocación en ejecución.

boolean stopInvocation (int invocationId, String cause)

Detenga una invocación en ejecución especificando su id.

Métodos protegidos

void cleanUp ()

Cierra los registros y realiza cualquier otra limpieza necesaria antes de salir.

IConfiguration createConfiguration (String[] args)
IInvocationContext createInvocationContext ()
IConfigurationFactory getConfigFactory ()

Método de fábrica para obtener una referencia a IConfigurationFactory

IDeviceManager getDeviceManager ()

Método de fábrica para obtener una referencia a IDeviceManager

TradefedFeatureServer getFeatureServer ()
IHostOptions getHostOptions ()
IKeyStoreClient getKeyStoreClient ()

Obtiene un IKeyStoreClient usando IKeyStoreFactory declarado en IGlobalConfiguration o nulo si no se define ninguno.

void initLogging ()

Inicializa el registro de ddmlib.

boolean isShutdown ()
boolean isShuttingDown ()
void processReadyCommands ( IDeviceManager manager)
void waitForAllInvocationThreads ()

Espere hasta que se completen todos los subprocesos de invocación.

Constructores públicos

Programador de comandos

public CommandScheduler ()

Crea un CommandScheduler .

Nota: el inicio debe llamarse antes de su uso.

Métodos públicos

añadirComando

public boolean addCommand (String[] args)

Agrega un comando al planificador.

Un comando es esencialmente 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 enviará a la salida estándar. De lo contrario, la configuración se agregará a la cola para ejecutarse.

Parámetros
args String : los argumentos de configuración.

Devoluciones
boolean true si el comando se agregó con éxito

Lanza
ConfigurationException

añadirCommandFile

public void addCommandFile (String cmdFilePath, 
                 extraArgs)

Agrega todos los comandos del archivo dado al programador

Parámetros
cmdFilePath String : la ruta del sistema de archivos del archivo de comando

extraArgs : un ERROR(/List) de argumentos de String para agregar a cada comando analizado desde el archivo. Puede estar vacío pero no debe ser nulo.

Lanza
ConfigurationException

esperar

public void await ()

Espera a que el programador comience a ejecutarse, incluida la espera de que se complete el traspaso del antiguo TF, si corresponde.

comprobar Delegación

public static TradefedDelegator checkDelegation (String[] args)

Cree un delegador basado en la línea de comando para ver si necesitamos delegar la ejecución.

Parámetros
args String

Devoluciones
TradefedDelegator

Lanza
ConfigurationException

entrega completa

public void completeHandover ()

Informa al programador de comandos que una secuencia de transferencia iniciada está completamente completa y debe reiniciar su administrador remoto en el puerto predeterminado.

crearReleaseMap

public static  createReleaseMap (IInvocationContext context, 
                Throwable e)

Cree un mapa del estado de los dispositivos para que puedan liberarse adecuadamente.

Parámetros
context IInvocationContext

e Throwable

Devoluciones

crearSandbox

public ISandbox createSandbox ()

Cree un ISandbox que utilizará la invocación para ejecutarse.

Devoluciones
ISandbox

mostrarCommandQueue

public void displayCommandQueue (PrintWriter printWriter)

Muestra información detallada de depuración sobre el estado de la cola de ejecución de comandos.

mostrarCommandsInfo

public void displayCommandsInfo (PrintWriter printWriter, 
                String regex)

Muestra una lista de los comandos actuales.

Parámetros
printWriter PrintWriter : el ERROR(/PrintWriter) a la salida.

regex String : la expresión regular con la que deben coincidir los comandos para que se impriman. Si es nulo, se imprimirán todos los comandos.

mostrarInvocacionesInfo

public void displayInvocationsInfo (PrintWriter printWriter)

Muestra una lista de invocaciones actuales.

Parámetros
printWriter PrintWriter : el ERROR(/PrintWriter) a la salida.

dumpCommandsXml

public void dumpCommandsXml (PrintWriter printWriter, 
                String regex)

Vuelque el archivo xml expandido para el comando con todos los valores de Option especificados para todos los comandos actuales.

Parámetros
printWriter PrintWriter : el ERROR(/PrintWriter) para enviar el estado.

regex String : la expresión regular con la que se deben hacer coincidir los comandos para que se descargue el archivo xml. Si es nulo, se volcarán todos los comandos.

comandoejecutivo

public void execCommand (ICommandScheduler.IScheduledInvocationListener listener, 
                ITestDevice device, 
                String[] args)

Ejecute directamente el comando en el dispositivo ya asignado.

Parámetros
listener ICommandScheduler.IScheduledInvocationListener : el ICommandScheduler.IScheduledInvocationListener para ser informado

device ITestDevice : el ITestDevice a utilizar

args String : los argumentos del comando

Lanza
ConfigurationException

comandoejecutivo

public void execCommand (IInvocationContext context, 
                ICommandScheduler.IScheduledInvocationListener listener, 
                String[] args)

Asigna directamente un dispositivo y ejecuta un comando sin agregarlo a la cola de comandos mediante un IInvocationContext ya existente.

Parámetros
context IInvocationContext : un IInvocationContext existente.

listener ICommandScheduler.IScheduledInvocationListener : el ICommandScheduler.IScheduledInvocationListener para ser informado

args String : los argumentos del comando

Lanza
ConfigurationException
NoDeviceException

comandoejecutivo

public void execCommand (ICommandScheduler.IScheduledInvocationListener listener, 
                String[] args)

Asigna directamente un dispositivo y ejecuta un comando sin agregarlo a la cola de comandos.

Parámetros
listener ICommandScheduler.IScheduledInvocationListener : el ICommandScheduler.IScheduledInvocationListener para ser informado

args String : los argumentos del comando

Lanza
ConfigurationException
NoDeviceException

getCommandFileWatcher

public CommandFileWatcher getCommandFileWatcher ()

Obtenga el CommandFileWatcher apropiado para este programador

Devoluciones
CommandFileWatcher

getExecutingCommandCount

public int getExecutingCommandCount ()

Devuelve el número de Comandos en estado de ejecución.

Devoluciones
int

getHostState

public CommandScheduler.HostState getHostState ()

Devoluciones
CommandScheduler.HostState

obtenerInvocaciónInformación

public String getInvocationInfo (int invocationId)

Devuelve la información sobre un bu de invocación especificando el id de invocación.

Parámetros
invocationId int : el id de seguimiento de la invocación.

Devoluciones
String Una String que contiene información sobre la invocación.

getLastInvocationExitCode

public 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 ha ejecutado ninguna invocación.

Devoluciones
CommandRunner.ExitCode

getLastInvocationThrowable

public Throwable getLastInvocationThrowable ()

Devuelve el Throwable de la última invocación que se ejecutó. Retorna nulo, si no hay disponible un arrojable.

Devoluciones
Throwable

getReadyCommandCount

public int getReadyCommandCount ()

Devuelve el número de Comandos en estado listo en la cola.

Devoluciones
int

getShutdownTimeout

public long getShutdownTimeout ()

Devoluciones
long

handoverInitiationComplete

public void handoverInitiationComplete ()

Informa al programador de comandos que el intercambio de transferencia inicial de dispositivos y comandos en uso está completo y puede comenzar a programar la operación.

traspasoCerrar

public boolean handoverShutdown (int handoverPort)

Inicia un shutdown() y entrega a otro proceso tradefed en este mismo host.

El planificador informará al proceso de tradefed remoto que escucha en ese puerto de los dispositivos liberados a medida que estén disponibles.

Parámetros
handoverPort int

Devoluciones
boolean true si el inicio del traspaso fue exitoso, false de lo contrario

notificarArchivoCambiado

public void notifyFileChanged (File cmdFile, 
                 extraArgs)

Parámetros
cmdFile File

extraArgs

removeAllCommands

public void removeAllCommands ()

Eliminar todos los comandos del programador

correr

public void run ()

El principal bloque de ejecución de este hilo.

establecerClearcutClient

public void setClearcutClient (ClearcutClient client)

Configurar el cliente para informar datos de arnés

Parámetros
client ClearcutClient

deberíaShutdownOnCmdfileError

public boolean shouldShutdownOnCmdfileError ()

Devuelve verdadero si necesitamos apagar el programador en un error de comando

Devoluciones
boolean

cerrar

public void shutdown ()

Intente cerrar correctamente 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 llamar al apagado, el bucle principal del programador esperará a que se completen todas las invocaciones en curso antes de salir por completo.

apagar duro

public void shutdownHard (boolean killAdb)

Intente apagar a la fuerza el programador de comandos.

Similar a shutdown() , pero opcionalmente también eliminará la conexión adb, en un intento de 'inspirar' las invocaciones en curso para que se completen más rápido.

Parámetros
killAdb boolean

apagar duro

public void shutdownHard ()

Intente apagar a la fuerza el programador de comandos. Igual que shutdownHard (verdadero).

apagado en vacío

public void shutdownOnEmpty ()

Similar a shutdown() , pero esperará a que se ejecuten todos los comandos antes de salir.

Tenga en cuenta que si algún comando está en modo de bucle, el planificador nunca se cerrará.

comienzo

public void start ()

Inicia el programador, incluida la configuración del registro, el inicio de DeviceManager , etc.

detenerInvocación

public boolean stopInvocation (ITestInvocation invocation)

Detener una invocación en ejecución.

Parámetros
invocation ITestInvocation

Devoluciones
boolean verdadero si se detuvo la invocación, falso de lo contrario

detenerInvocación

public boolean stopInvocation (int invocationId, 
                String cause)

Detenga una invocación en ejecución especificando su id.

Parámetros
invocationId int : el id de seguimiento de la invocación.

cause String : la causa para detener la invocación.

Devoluciones
boolean verdadero si se detuvo la invocación, falso de lo contrario

Métodos protegidos

limpiar

protected void cleanUp ()

Cierra los registros y realiza cualquier otra limpieza necesaria antes de salir.

Expuesto para que las pruebas unitarias puedan simular.

crearConfiguración

protected IConfiguration createConfiguration (String[] args)

Parámetros
args String

Devoluciones
IConfiguration

Lanza
ConfigurationException

crear contexto de invocación

protected IInvocationContext createInvocationContext ()

Devoluciones
IInvocationContext

getConfigFactory

protected IConfigurationFactory getConfigFactory ()

Método de fábrica para obtener una referencia a IConfigurationFactory

Devoluciones
IConfigurationFactory IConfigurationFactory para usar

getDeviceManager

protected IDeviceManager getDeviceManager ()

Método de fábrica para obtener una referencia a IDeviceManager

Devoluciones
IDeviceManager el IDeviceManager para usar

getFeatureServer

protected TradefedFeatureServer getFeatureServer ()

Devoluciones
TradefedFeatureServer

getHostOptions

protected IHostOptions getHostOptions ()

Devoluciones
IHostOptions

getKeyStoreClient

protected IKeyStoreClient getKeyStoreClient ()

Obtiene un IKeyStoreClient usando IKeyStoreFactory declarado en IGlobalConfiguration o nulo si no se define ninguno.

Devoluciones
IKeyStoreClient IKeyStoreClient

inicio de sesión

protected void initLogging ()

Inicializa el registro de ddmlib.

Expuesto para que las pruebas unitarias puedan simular.

esApagado

protected boolean isShutdown ()

Devoluciones
boolean

se está cerrando

protected boolean isShuttingDown ()

Devoluciones
boolean

procesarReadyCommands

protected void processReadyCommands (IDeviceManager manager)

Parámetros
manager IDeviceManager

esperar para todos los subprocesos de invocación

protected void waitForAllInvocationThreads ()

Espere hasta que se completen todos los subprocesos de invocación.