ICommandScheduler
public
interface
ICommandScheduler
| com.android.tradefed.command.ICommandScheduler |
Uno strumento di pianificazione per l'esecuzione dei comandi TradeFederation.
Riepilogo
Classi nidificate | |
|---|---|
interface |
ICommandScheduler.IScheduledInvocationListener
Listener per gli eventi di chiamata al termine della chiamata. |
Metodi pubblici | |
|---|---|
abstract
Pair<Boolean, Integer>
|
addCommand(String[] args)
Aggiunge un comando al programma di pianificazione. |
abstract
void
|
addCommandFile(String cmdFile,
Aggiunge tutti i comandi del file specificato allo scheduler |
abstract
void
|
await()
Attende l'avvio dello scheduler, inclusa l'attesa del completamento del trasferimento dal vecchio TF se applicabile. |
abstract
void
|
displayCommandQueue(PrintWriter printWriter)
Output di informazioni di debug dettagliate sullo stato della coda di esecuzione dei comandi. |
abstract
void
|
displayCommandsInfo(PrintWriter printWriter, String regex)
Restituisce un elenco dei comandi attuali. |
abstract
void
|
displayInvocationsInfo(PrintWriter printWriter)
Visualizza un elenco delle invocazioni correnti. |
abstract
void
|
dumpCommandsXml(PrintWriter printWriter, String regex)
Esegui il dump del file XML espanso per il comando con tutti i valori di |
abstract
long
|
execCommand(IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Alloca direttamente un dispositivo ed esegue un comando senza aggiungerlo alla coda di comandi
utilizzando un |
abstract
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Alloca direttamente un dispositivo ed esegue un comando senza aggiungerlo alla coda dei comandi. |
abstract
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)
Esegui direttamente il comando sul dispositivo già allocato. |
abstract
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener,
Esegui direttamente il comando sui dispositivi già assegnati. |
abstract
CommandFileWatcher
|
getCommandFileWatcher()
Ottieni CommandFileWatcher appropriato per questo scheduler |
abstract
int
|
getExecutingCommandCount()
Restituisce il numero di comandi nello stato di esecuzione. |
abstract
String
|
getInvocationInfo(int invocationId)
Restituisce le informazioni su una chiamata specificando l'ID chiamata. |
abstract
CommandRunner.ExitCode
|
getLastInvocationExitCode()
Restituisce il codice di errore dell'ultima chiamata eseguita. |
abstract
Throwable
|
getLastInvocationThrowable()
Restituisce |
abstract
int
|
getReadyCommandCount()
Restituisce il numero di comandi in stato pronto nella coda. |
abstract
boolean
|
isDeviceInInvocationThread(ITestDevice device)
Restituisce il valore True se il dispositivo viene utilizzato da un thread di chiamata attivo. |
abstract
void
|
join()
Attende il completamento dello scheduler. |
abstract
void
|
join(long millis)
Attende il completamento dello scheduler o il timeout dopo la durata specificata in millisecondi. |
abstract
void
|
removeAllCommands()
Rimuovere tutti i comandi dal pianificatore |
abstract
void
|
setClearcutClient(ClearcutClient client)
Imposta il client per generare report sui dati di Harness |
default
void
|
setMaxPollTime(long polling)
|
default
void
|
setPrintSchedulingWarning(boolean print)
|
abstract
boolean
|
shouldShutdownOnCmdfileError()
Restituisce true se è necessario arrestare lo scheduler in caso di errori di comando |
default
void
|
shutdown()
Tenta di arrestare normalmente lo scheduler dei comandi. |
abstract
void
|
shutdown(boolean notifyStop)
Tenta di arrestare normalmente lo scheduler dei comandi. |
abstract
void
|
shutdownHard(boolean killAdb)
Tentativo di arresto forzato dello scheduler dei comandi. |
abstract
void
|
shutdownHard()
Tentativo di arresto forzato dello scheduler dei comandi. |
abstract
void
|
shutdownOnEmpty()
Simile a |
abstract
void
|
start()
Inizia il |
abstract
boolean
|
stopInvocation(int invocationId, String cause)
Arresta una chiamata in esecuzione specificandone l'ID. |
default
boolean
|
stopInvocation(int invocationId)
Arresta una chiamata in esecuzione specificandone l'ID. |
abstract
boolean
|
stopInvocation(ITestInvocation invocation)
Interrompi una chiamata in esecuzione. |
default
void
|
stopScheduling()
Interrompe la pianificazione e l'accettazione di nuovi test, ma non Tradefed. |
Metodi pubblici
addCommand
public abstract Pair<Boolean, Integer> addCommand (String[] args)
Aggiunge un comando al programma di pianificazione.
Un comando è essenzialmente un'istanza di una configurazione da eseguire e i relativi argomenti.
Se viene specificato l'argomento "--help", il testo della guida per la configurazione verrà inviato a stdout. In caso contrario, la configurazione verrà aggiunta alla coda di esecuzione.
| Parametri | |
|---|---|
args |
String: gli argomenti di configurazione. |
| Ritorni | |
|---|---|
Pair<Boolean, Integer> |
Una coppia di valori, il primo è un valore booleano true se il comando è stato aggiunto correttamente. Il secondo valore è l'ID tracker del comando noto(valore non negativo) se il
comando è stato aggiunto correttamente, restituisce 0 quando il comando viene aggiunto per tutti i dispositivi, altrimenti
-1. |
| Lanci | |
|---|---|
ConfigurationException |
se il comando non può essere analizzato |
addCommandFile
public abstract void addCommandFile (String cmdFile,
extraArgs) Aggiunge tutti i comandi del file specificato allo scheduler
| Parametri | |
|---|---|
cmdFile |
String: il percorso del file system del file di comando |
extraArgs |
: un ERROR(/List) di String argomenti da aggiungere a ogni comando analizzato dal file. Può essere vuoto, ma non deve essere nullo. |
| Lanci | |
|---|---|
ConfigurationException |
se non è stato possibile analizzare il file di comando |
Vedi anche:
attesa
public abstract void await ()
Attende l'avvio dello scheduler, inclusa l'attesa del completamento del trasferimento dal vecchio TF se applicabile.
displayCommandQueue
public abstract void displayCommandQueue (PrintWriter printWriter)
Output di informazioni di debug dettagliate sullo stato della coda di esecuzione dei comandi.
displayCommandsInfo
public abstract void displayCommandsInfo (PrintWriter printWriter,
String regex)Restituisce un elenco dei comandi attuali.
| Parametri | |
|---|---|
printWriter |
PrintWriter: il ERROR(/PrintWriter) in cui eseguire l'output. |
regex |
String: l'espressione regolare a cui devono corrispondere i comandi per essere
stampati. Se è null, verranno stampati tutti i comandi. |
displayInvocationsInfo
public abstract void displayInvocationsInfo (PrintWriter printWriter)
Visualizza un elenco delle invocazioni correnti.
| Parametri | |
|---|---|
printWriter |
PrintWriter: il ERROR(/PrintWriter) in cui eseguire l'output. |
dumpCommandsXml
public abstract void dumpCommandsXml (PrintWriter printWriter,
String regex)Esegui il dump del file XML espanso per il comando con tutti i valori di Option specificati per tutti i comandi attuali.
| Parametri | |
|---|---|
printWriter |
PrintWriter: il ERROR(/PrintWriter) in cui restituire lo stato. |
regex |
String: l'espressione regolare a cui devono corrispondere i comandi affinché venga eseguito il dump del file XML. Se è null, verranno scaricati tutti i comandi. |
execCommand
public abstract long execCommand (IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Alloca direttamente un dispositivo ed esegue un comando senza aggiungerlo alla coda di comandi
utilizzando un IInvocationContext già esistente.
| Parametri | |
|---|---|
context |
IInvocationContext: un IInvocationContext esistente. |
listener |
ICommandScheduler.IScheduledInvocationListener: il ICommandScheduler.IScheduledInvocationListener da informare |
args |
String: gli argomenti del comando |
| Ritorni | |
|---|---|
long |
|
| Lanci | |
|---|---|
ConfigurationException |
se il comando non era valido |
NoDeviceException |
se non è disponibile alcun dispositivo da utilizzare |
execCommand
public abstract long execCommand (ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Alloca direttamente un dispositivo ed esegue un comando senza aggiungerlo alla coda dei comandi.
| Parametri | |
|---|---|
listener |
ICommandScheduler.IScheduledInvocationListener: il ICommandScheduler.IScheduledInvocationListener da informare |
args |
String: gli argomenti del comando |
| Ritorni | |
|---|---|
long |
L'ID invocazione del comando pianificato. |
| Lanci | |
|---|---|
ConfigurationException |
se il comando non era valido |
NoDeviceException |
se non è disponibile alcun dispositivo da utilizzare |
execCommand
public abstract long execCommand (ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)
Esegui direttamente il comando sul dispositivo già allocato.
| Parametri | |
|---|---|
listener |
ICommandScheduler.IScheduledInvocationListener: il ICommandScheduler.IScheduledInvocationListener da informare |
device |
ITestDevice: il ITestDevice da utilizzare |
args |
String: gli argomenti del comando |
| Ritorni | |
|---|---|
long |
L'ID invocazione del comando pianificato. |
| Lanci | |
|---|---|
ConfigurationException |
se il comando non era valido |
execCommand
public abstract long execCommand (ICommandScheduler.IScheduledInvocationListener listener,devices, String[] args)
Esegui direttamente il comando sui dispositivi già assegnati.
| Parametri | |
|---|---|
listener |
ICommandScheduler.IScheduledInvocationListener: il ICommandScheduler.IScheduledInvocationListener da informare |
devices |
: il ERROR(/List da utilizzare |
args |
String: gli argomenti del comando |
| Ritorni | |
|---|---|
long |
L'ID invocazione del comando pianificato. |
| Lanci | |
|---|---|
ConfigurationException |
se il comando non era valido |
getCommandFileWatcher
public abstract CommandFileWatcher getCommandFileWatcher ()
Ottieni CommandFileWatcher appropriato per questo scheduler
| Ritorni | |
|---|---|
CommandFileWatcher |
|
getExecutingCommandCount
public abstract int getExecutingCommandCount ()
Restituisce il numero di comandi nello stato di esecuzione.
| Ritorni | |
|---|---|
int |
|
getInvocationInfo
public abstract String getInvocationInfo (int invocationId)
Restituisce le informazioni su una chiamata specificando l'ID chiamata.
| Parametri | |
|---|---|
invocationId |
int: l'ID monitoraggio dell'invocazione. |
| Ritorni | |
|---|---|
String |
Un String contenente informazioni sull'invocazione. |
getLastInvocationExitCode
public abstract CommandRunner.ExitCode getLastInvocationExitCode ()
Restituisce il codice di errore dell'ultima chiamata eseguita. Restituisce 0 (nessun errore) se non è ancora stata eseguita alcuna chiamata.
| Ritorni | |
|---|---|
CommandRunner.ExitCode |
|
getLastInvocationThrowable
public abstract Throwable getLastInvocationThrowable ()
Restituisce Throwable dall'ultima chiamata eseguita.
Restituisce null se non è disponibile alcun throwable.
| Ritorni | |
|---|---|
Throwable |
|
getReadyCommandCount
public abstract int getReadyCommandCount ()
Restituisce il numero di comandi in stato pronto nella coda.
| Ritorni | |
|---|---|
int |
|
isDeviceInInvocationThread
public abstract boolean isDeviceInInvocationThread (ITestDevice device)
Restituisce il valore True se il dispositivo viene utilizzato da un thread di chiamata attivo.
| Parametri | |
|---|---|
device |
ITestDevice |
| Ritorni | |
|---|---|
boolean |
|
partecipa
public abstract void join ()
Attende il completamento dello scheduler.
Vedi anche:
partecipa
public abstract void join (long millis)
Attende il completamento dello scheduler o il timeout dopo la durata specificata in millisecondi.
| Parametri | |
|---|---|
millis |
long |
Vedi anche:
removeAllCommands
public abstract void removeAllCommands ()
Rimuovere tutti i comandi dal pianificatore
setClearcutClient
public abstract void setClearcutClient (ClearcutClient client)
Imposta il client per generare report sui dati di Harness
| Parametri | |
|---|---|
client |
ClearcutClient |
setMaxPollTime
public void setMaxPollTime (long polling)
| Parametri | |
|---|---|
polling |
long |
setPrintSchedulingWarning
public void setPrintSchedulingWarning (boolean print)
| Parametri | |
|---|---|
print |
boolean |
shouldShutdownOnCmdfileError
public abstract boolean shouldShutdownOnCmdfileError ()
Restituisce true se è necessario arrestare lo scheduler in caso di errori di comando
| Ritorni | |
|---|---|
boolean |
|
shutdown
public void shutdown ()
Tenta di arrestare normalmente lo scheduler dei comandi.
Cancella i comandi in attesa di essere testati e richiede l'arresto controllato di tutte le invocazioni in corso.
Dopo la chiamata di arresto, il ciclo principale dello scheduler attenderà il completamento di tutte le chiamate in corso prima di uscire completamente.
shutdown
public abstract void shutdown (boolean notifyStop)
Tenta di arrestare normalmente lo scheduler dei comandi.
| Parametri | |
|---|---|
notifyStop |
boolean: se true, invia una notifica alle invocazioni dell'arresto di TF. |
shutdownHard
public abstract void shutdownHard (boolean killAdb)
Tentativo di arresto forzato dello scheduler dei comandi.
Simile a shutdown(), ma interrompe anche facoltativamente la connessione adb, nel tentativo di "ispirare" le invocazioni in corso a completarsi più rapidamente.
| Parametri | |
|---|---|
killAdb |
boolean |
shutdownHard
public abstract void shutdownHard ()
Tentativo di arresto forzato dello scheduler dei comandi. Uguale a shutdownHard(true).
shutdownOnEmpty
public abstract void shutdownOnEmpty ()
Simile a shutdown(), ma attende l'esecuzione di tutti i comandi
prima di uscire.
Tieni presente che se alcuni comandi sono in modalità loop, lo scheduler non uscirà mai.
partenza
public abstract void start ()
Inizia il ICommandScheduler.
Deve essere chiamato prima di chiamare altri metodi.
Verrà eseguito fino a quando non viene chiamato shutdown().
vedi Thread.start().
stopInvocation
public abstract boolean stopInvocation (int invocationId,
String cause)Arresta una chiamata in esecuzione specificandone l'ID.
| Parametri | |
|---|---|
invocationId |
int: l'ID monitoraggio dell'invocazione. |
cause |
String: il motivo dell'interruzione della chiamata. |
| Ritorni | |
|---|---|
boolean |
true se l'invocazione è stata interrotta, false in caso contrario |
| Lanci | |
|---|---|
UnsupportedOperationException |
se l'implementazione non lo supporta |
stopInvocation
public boolean stopInvocation (int invocationId)
Arresta una chiamata in esecuzione specificandone l'ID.
| Parametri | |
|---|---|
invocationId |
int |
| Ritorni | |
|---|---|
boolean |
true se l'invocazione è stata interrotta, false in caso contrario |
| Lanci | |
|---|---|
UnsupportedOperationException |
se l'implementazione non lo supporta |
stopInvocation
public abstract boolean stopInvocation (ITestInvocation invocation)
Interrompi una chiamata in esecuzione.
| Parametri | |
|---|---|
invocation |
ITestInvocation |
| Ritorni | |
|---|---|
boolean |
true se l'invocazione è stata interrotta, false in caso contrario |
| Lanci | |
|---|---|
UnsupportedOperationException |
se l'implementazione non lo supporta |
stopScheduling
public void stopScheduling ()
Interrompe la pianificazione e l'accettazione di nuovi test, ma non Tradefed. Lo scopo è quello di consentire un arresto in due fasi in cui prima vengono svuotati tutti i test in esecuzione, quindi viene terminato il processo Tradefed.