ICommandScheduler

public interface ICommandScheduler

com.android.tradefed.command.ICommandScheduler


Un planificateur pour exécuter les commandes TradeFederation.

Résumé

Classes imbriquées

interface ICommandScheduler.IScheduledInvocationListener

Écouteur des événements d’invocation une fois l’invocation terminée.

Méthodes publiques

abstract boolean addCommand (String[] args)

Ajoute une commande au planificateur.

abstract void addCommandFile (String cmdFile, extraArgs) addCommandFile (String cmdFile, extraArgs)

Ajoute toutes les commandes d'un fichier donné au planificateur

abstract void await ()

Attend que le planificateur commence à s'exécuter, y compris la fin du transfert de l'ancien TF, le cas échéant.

abstract void completeHandover ()

Informe le planificateur de commandes qu'une séquence de transfert initiée est entièrement terminée et qu'il doit réinitialiser son gestionnaire distant sur le port par défaut.

abstract void displayCommandQueue (PrintWriter printWriter)

Afficher des informations de débogage détaillées sur l’état de la file d’attente d’exécution des commandes.

abstract void displayCommandsInfo (PrintWriter printWriter, String regex)

Afficher une liste des commandes actuelles.

abstract void displayInvocationsInfo (PrintWriter printWriter)

Affiche une liste des appels en cours.

abstract void dumpCommandsXml (PrintWriter printWriter, String regex)

Videz le fichier XML développé pour la commande avec toutes les valeurs Option spécifiées pour toutes les commandes actuelles.

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

Alloue directement un périphérique et exécute une commande sans l'ajouter à la file d'attente de commandes à l'aide d'un IInvocationContext déjà existant.

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

Alloue directement un périphérique et exécute une commande sans l'ajouter à la file d'attente des commandes.

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

Exécutez directement la commande sur un appareil déjà alloué.

abstract CommandFileWatcher getCommandFileWatcher ()

Obtenez le CommandFileWatcher approprié pour ce planificateur

abstract int getExecutingCommandCount ()

Renvoie le nombre de commandes en état d'exécution.

abstract String getInvocationInfo (int invocationId)

Renvoie les informations sur un bu d'invocation en spécifiant l'identifiant de l'invocation.

abstract CommandRunner.ExitCode getLastInvocationExitCode ()

Renvoie le code d'erreur du dernier appel exécuté.

abstract Throwable getLastInvocationThrowable ()

Renvoie le Throwable de la dernière invocation exécutée.

abstract int getReadyCommandCount ()

Renvoie le nombre de commandes prêtes dans la file d'attente.

abstract void handoverInitiationComplete ()

Informe le planificateur de commandes que l'échange initial de transfert des périphériques et des commandes utilisées est terminé et qu'il peut commencer l'opération de planification.

abstract boolean handoverShutdown (int handoverPort)

Initie un shutdown() et un transfert vers un autre processus tradefed sur ce même hôte.

abstract void join ()

Attend la fin du planificateur.

abstract void join (long millis)

Attend que le planificateur se termine ou expire après la durée spécifiée en millisecondes.

abstract void removeAllCommands ()

Supprimer toutes les commandes du planificateur

abstract void setClearcutClient (ClearcutClient client)

Configurer le client pour qu'il rapporte les données du faisceau

abstract boolean shouldShutdownOnCmdfileError ()

Renvoie true si nous devons arrêter le planificateur en cas d'erreur de commande

abstract void shutdown ()

Essayez d'arrêter correctement le planificateur de commandes.

abstract void shutdownHard (boolean killAdb)

Tentative d'arrêt forcé du planificateur de commandes.

abstract void shutdownHard ()

Tentative d'arrêt forcé du planificateur de commandes.

abstract void shutdownOnEmpty ()

Similaire à shutdown() , mais attendra que toutes les commandes soient exécutées avant de quitter.

abstract void start ()

Démarrez le ICommandScheduler .

abstract boolean stopInvocation (int invocationId, String cause)

Arrêtez une invocation en cours en spécifiant son identifiant.

default boolean stopInvocation (int invocationId)

Arrêtez une invocation en cours en spécifiant son identifiant.

abstract boolean stopInvocation ( ITestInvocation invocation)

Arrêtez une invocation en cours.

Méthodes publiques

ajouterCommand

public abstract boolean addCommand (String[] args)

Ajoute une commande au planificateur.

Une commande est essentiellement une instance d'une configuration à exécuter et ses arguments associés.

Si l'argument "--help" est spécifié, le texte d'aide pour la configuration sera affiché sur la sortie standard. Sinon, la configuration sera ajoutée à la file d'attente à exécuter.

Paramètres
args String : les arguments de configuration.

Retour
boolean true si la commande a été ajoutée avec succès

Jetés
ConfigurationException si la commande n'a pas pu être analysée

addCommandFile

public abstract void addCommandFile (String cmdFile, 
                 extraArgs)

Ajoute toutes les commandes d'un fichier donné au planificateur

Paramètres
cmdFile String : le chemin du système de fichiers du fichier de commande

extraArgs : une ERROR(/List) d'arguments String à ajouter à chaque commande analysée à partir du fichier. Peut être vide mais ne doit pas être nul.

Jetés
ConfigurationException si le fichier de commande n'a pas pu être analysé

Voir également:

attendre

public abstract void await ()

Attend que le planificateur commence à s'exécuter, y compris la fin du transfert de l'ancien TF, le cas échéant.

remise complète

public abstract void completeHandover ()

Informe le planificateur de commandes qu'une séquence de transfert initiée est entièrement terminée et qu'il doit réinitialiser son gestionnaire distant sur le port par défaut.

displayCommandQueue

public abstract void displayCommandQueue (PrintWriter printWriter)

Afficher des informations de débogage détaillées sur l’état de la file d’attente d’exécution des commandes.

displayCommandsInfo

public abstract void displayCommandsInfo (PrintWriter printWriter, 
                String regex)

Afficher une liste des commandes actuelles.

Paramètres
printWriter PrintWriter : l' ERROR(/PrintWriter) vers laquelle sortir.

regex String : l'expression régulière à laquelle les commandes doivent correspondre pour être imprimées. Si nul, alors toutes les commandes seront imprimées.

displayInvocationsInfo

public abstract void displayInvocationsInfo (PrintWriter printWriter)

Affiche une liste des appels en cours.

Paramètres
printWriter PrintWriter : l' ERROR(/PrintWriter) vers laquelle sortir.

dumpCommandsXml

public abstract void dumpCommandsXml (PrintWriter printWriter, 
                String regex)

Videz le fichier XML développé pour la commande avec toutes les valeurs Option spécifiées pour toutes les commandes actuelles.

Paramètres
printWriter PrintWriter : l' ERROR(/PrintWriter) vers laquelle afficher l'état.

regex String : l'expression régulière à laquelle les commandes doivent correspondre pour que le fichier XML soit vidé. Si nul, alors toutes les commandes seront vidées.

CommandeExec

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

Alloue directement un périphérique et exécute une commande sans l'ajouter à la file d'attente de commandes à l'aide d'un IInvocationContext déjà existant.

Paramètres
context IInvocationContext : un IInvocationContext existant.

listener ICommandScheduler.IScheduledInvocationListener : le ICommandScheduler.IScheduledInvocationListener à renseigner

args String : les arguments de la commande

Jetés
ConfigurationException si la commande n'était pas valide
NoDeviceException s'il n'y a pas d'appareil à utiliser

CommandeExec

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

Alloue directement un périphérique et exécute une commande sans l'ajouter à la file d'attente des commandes.

Paramètres
listener ICommandScheduler.IScheduledInvocationListener : le ICommandScheduler.IScheduledInvocationListener à renseigner

args String : les arguments de la commande

Jetés
ConfigurationException si la commande n'était pas valide
NoDeviceException s'il n'y a pas d'appareil à utiliser

CommandeExec

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

Exécutez directement la commande sur un appareil déjà alloué.

Paramètres
listener ICommandScheduler.IScheduledInvocationListener : le ICommandScheduler.IScheduledInvocationListener à renseigner

device ITestDevice : le ITestDevice à utiliser

args String : les arguments de la commande

Jetés
ConfigurationException si la commande n'était pas valide

getCommandFileWatcher

public abstract CommandFileWatcher getCommandFileWatcher ()

Obtenez le CommandFileWatcher approprié pour ce planificateur

Retour
CommandFileWatcher

getExecutingCommandCount

public abstract int getExecutingCommandCount ()

Renvoie le nombre de commandes en état d'exécution.

Retour
int

getInvocationInfo

public abstract String getInvocationInfo (int invocationId)

Renvoie les informations sur un bu d'invocation en spécifiant l'identifiant de l'invocation.

Paramètres
invocationId int : l'identifiant de suivi de l'invocation.

Retour
String Une String contenant des informations sur l'appel.

getLastInvocationExitCode

public abstract CommandRunner.ExitCode getLastInvocationExitCode ()

Renvoie le code d'erreur du dernier appel exécuté. Renvoie 0 (pas d'erreur), si aucun appel n'a encore été exécuté.

Retour
CommandRunner.ExitCode

getLastInvocationThrowable

public abstract Throwable getLastInvocationThrowable ()

Renvoie le Throwable de la dernière invocation exécutée. Renvoie null, si aucun objet jetable n'est disponible.

Retour
Throwable

getReadyCommandCount

public abstract int getReadyCommandCount ()

Renvoie le nombre de commandes prêtes dans la file d'attente.

Retour
int

handoverInitiationComplete

public abstract void handoverInitiationComplete ()

Informe le planificateur de commandes que l'échange initial de transfert des périphériques et des commandes utilisées est terminé et qu'il peut commencer l'opération de planification.

transfertArrêt

public abstract boolean handoverShutdown (int handoverPort)

Initie un shutdown() et un transfert vers un autre processus tradefed sur ce même hôte.

Le planificateur informera le processus échangé à distance écoutant sur ce port les appareils libérés dès qu'ils seront disponibles.

Paramètres
handoverPort int

Retour
boolean true si l'initiation du transfert a réussi, false sinon

rejoindre

public abstract void join ()

Attend la fin du planificateur.

Voir également:

rejoindre

public abstract void join (long millis)

Attend que le planificateur se termine ou expire après la durée spécifiée en millisecondes.

Paramètres
millis long

Voir également:

supprimerTouteslesCommandes

public abstract void removeAllCommands ()

Supprimer toutes les commandes du planificateur

setClearcutClient

public abstract void setClearcutClient (ClearcutClient client)

Configurer le client pour qu'il rapporte les données du faisceau

Paramètres
client ClearcutClient

devraitShutdownOnCmdfileError

public abstract boolean shouldShutdownOnCmdfileError ()

Renvoie true si nous devons arrêter le planificateur en cas d'erreur de commande

Retour
boolean

fermer

public abstract void shutdown ()

Essayez d'arrêter correctement le planificateur de commandes.

Efface les commandes en attente d'être testées et demande que tous les appels en cours s'arrêtent correctement.

Une fois l'arrêt appelé, la boucle principale du planificateur attendra la fin de tous les appels en cours avant de se terminer complètement.

arrêtDur

public abstract void shutdownHard (boolean killAdb)

Tentative d'arrêt forcé du planificateur de commandes.

Semblable à shutdown() , mais tuera également éventuellement la connexion adb, dans le but « d'inspirer » les invocations en cours pour qu'elles se terminent plus rapidement.

Paramètres
killAdb boolean

arrêtDur

public abstract void shutdownHard ()

Tentative d'arrêt forcé du planificateur de commandes. Identique à shutdownHard (true).

arrêt sur vide

public abstract void shutdownOnEmpty ()

Similaire à shutdown() , mais attendra que toutes les commandes soient exécutées avant de quitter.

Notez que si des commandes sont en mode boucle, le planificateur ne se terminera jamais.

commencer

public abstract void start ()

Démarrez le ICommandScheduler .

Doit être appelé avant d’appeler d’autres méthodes.

S'exécutera jusqu'à ce que shutdown() soit appelé. voir Thread.start() .

stopInvocation

public abstract boolean stopInvocation (int invocationId, 
                String cause)

Arrêtez une invocation en cours en spécifiant son identifiant.

Paramètres
invocationId int : l'identifiant de suivi de l'invocation.

cause String : la cause de l'arrêt de l'invocation.

Retour
boolean vrai si l'invocation a été arrêtée, faux sinon

Jetés
UnsupportedOperationException si l'implémentation ne prend pas en charge cela

stopInvocation

public boolean stopInvocation (int invocationId)

Arrêtez une invocation en cours en spécifiant son identifiant.

Paramètres
invocationId int

Retour
boolean vrai si l'invocation a été arrêtée, faux sinon

Jetés
UnsupportedOperationException si l'implémentation ne prend pas en charge cela

stopInvocation

public abstract boolean stopInvocation (ITestInvocation invocation)

Arrêtez une invocation en cours.

Paramètres
invocation ITestInvocation

Retour
boolean vrai si l'invocation a été arrêtée, faux sinon

Jetés
UnsupportedOperationException si l'implémentation ne prend pas en charge cela