ICommandScheduler
public interface ICommandScheduler
com.android.tradefed.command.ICommandScheduler |
Uno scheduler per l'esecuzione dei comandi TradeFederation.
Riepilogo
Classi nidificate | |
---|---|
interface | ICommandScheduler.IScheduledInvocationListener Listener per gli eventi di invocazione al completamento dell'invocazione. |
Metodi pubblici | |
---|---|
abstract Pair <Boolean, Integer> | addCommand (String[] args) Aggiunge un comando allo scheduler. |
abstract void | addCommandFile (String cmdFile, extraArgs) addCommandFile (String cmdFile, extraArgs) Aggiunge tutti i comandi dal file specificato allo scheduler |
abstract void | await () Attende l'avvio dell'esecuzione dello scheduler, inclusa l'attesa del completamento del trasferimento dalla vecchia TF, se applicabile. |
abstract void | displayCommandQueue (PrintWriter printWriter) Emette informazioni di debug dettagliate sullo stato della coda di esecuzione dei comandi. |
abstract void | displayCommandsInfo (PrintWriter printWriter, String regex) Genera un elenco dei comandi correnti. |
abstract void | displayInvocationsInfo (PrintWriter printWriter) Visualizza un elenco delle invocazioni correnti. |
abstract void | dumpCommandsXml (PrintWriter printWriter, String regex) Scarica il file xml espanso per il comando con tutti i valori |
abstract long | execCommand ( IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args) Assegna direttamente un dispositivo ed esegue un comando senza aggiungerlo alla coda dei comandi utilizzando un |
abstract long | execCommand ( ICommandScheduler.IScheduledInvocationListener listener, String[] args) Assegna direttamente un dispositivo ed esegue un comando senza aggiungerlo alla coda dei comandi. |
abstract long | execCommand ( ICommandScheduler.IScheduledInvocationListener listener, devices, String[] args) execCommand ( ICommandScheduler.IScheduledInvocationListener listener, devices, String[] args) Esegue direttamente il comando sui dispositivi già assegnati. |
abstract CommandFileWatcher | getCommandFileWatcher () Ottieni il CommandFileWatcher appropriato per questo scheduler |
abstract int | getExecutingCommandCount () Restituisce il numero di comandi in stato di esecuzione. |
abstract String | getInvocationInfo (int invocationId) Restituisce le informazioni su un bu di invocazione specificando l'id di invocazione. |
abstract CommandRunner.ExitCode | getLastInvocationExitCode () Restituisce il codice di errore dell'ultima invocazione eseguita. |
abstract Throwable | getLastInvocationThrowable () Restituisce il |
abstract int | getReadyCommandCount () Restituisce il numero di comandi in stato pronto nella coda. |
abstract boolean | isDeviceInInvocationThread ( ITestDevice device) Restituisce vero se il dispositivo viene utilizzato da un thread di chiamata attivo. |
abstract void | join () Attende il completamento della pianificazione. |
abstract void | join (long millis) Attende il completamento dello scheduler o il timeout dopo la durata specificata in millisecondi. |
abstract void | removeAllCommands () Rimuovi tutti i comandi dallo scheduler |
abstract void | setClearcutClient (ClearcutClient client) Imposta il client per segnalare i dati di cablaggio |
abstract boolean | shouldShutdownOnCmdfileError () Restituisce vero se è necessario arrestare lo scheduler in caso di errori di comando |
default void | shutdown () Tentare di arrestare normalmente il pianificatore dei comandi. |
abstract void | shutdown (boolean notifyStop) Tentare di arrestare normalmente il pianificatore dei comandi. |
abstract void | shutdownHard (boolean killAdb) Tentare di arrestare forzatamente il pianificatore dei comandi. |
abstract void | shutdownHard () Tentare di arrestare forzatamente il pianificatore dei comandi. |
abstract void | shutdownOnEmpty () Simile a |
abstract void | start () Avviare |
abstract boolean | stopInvocation (int invocationId, String cause) Arresta un'invocazione in esecuzione specificandone l'id. |
default boolean | stopInvocation (int invocationId) Arresta un'invocazione in esecuzione specificandone l'id. |
abstract boolean | stopInvocation ( ITestInvocation invocation) Arresta un'invocazione in esecuzione. |
default void | stopScheduling () Interrompe la pianificazione e l'accettazione di nuovi test ma non interrompe Tradefed. |
Metodi pubblici
addCommand
public abstract Pair<Boolean, Integer> addCommand (String[] args)
Aggiunge un comando allo scheduler.
Un comando è essenzialmente un'istanza di una configurazione da eseguire e i suoi argomenti associati.
Se viene specificato l'argomento "--help", il testo della guida per la configurazione verrà inviato allo stdout. Altrimenti, la configurazione verrà aggiunta alla coda per l'esecuzione.
Parametri | |
---|---|
args | String : gli argomenti di configurazione. |
ritorna | |
---|---|
Pair <Boolean, Integer> | Una coppia di valori, il primo valore è un valore booleano true se il comando è stato aggiunto correttamente. Il secondo valore è l'ID noto del tracker del comando (valore non negativo) se il comando è stato aggiunto correttamente, restituisce 0 quando il comando viene aggiunto per tutti i dispositivi, altrimenti -1. |
Lancia | |
---|---|
ConfigurationException | se il comando non può essere analizzato |
addCommandFile
public abstract void addCommandFile (String cmdFile,extraArgs)
Aggiunge tutti i comandi dal file specificato allo scheduler
Parametri | |
---|---|
cmdFile | String : il percorso del filesystem del file di comando |
extraArgs | ERROR(/List) di argomenti String da aggiungere a ciascun comando analizzato dal file. Può essere vuoto ma non deve essere nullo. |
Lancia | |
---|---|
ConfigurationException | se il file di comando non può essere analizzato |
Guarda anche:
attendere
public abstract void await ()
Attende l'avvio dell'esecuzione dello scheduler, inclusa l'attesa del completamento del trasferimento dalla vecchia TF, se applicabile.
displayCommandQueue
public abstract void displayCommandQueue (PrintWriter printWriter)
Emette informazioni di debug dettagliate sullo stato della coda di esecuzione dei comandi.
displayCommandsInfo
public abstract void displayCommandsInfo (PrintWriter printWriter, String regex)
Genera un elenco dei comandi correnti.
Parametri | |
---|---|
printWriter | PrintWriter : l' ERROR(/PrintWriter) su cui eseguire l'output. |
regex | String : l'espressione regolare a cui devono essere abbinati i comandi per poter 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 : l' ERROR(/PrintWriter) su cui eseguire l'output. |
dumpCommandsXml
public abstract void dumpCommandsXml (PrintWriter printWriter, String regex)
Scarica il file xml espanso per il comando con tutti i valori Option
specificati per tutti i comandi correnti.
Parametri | |
---|---|
printWriter | PrintWriter : l' ERROR(/PrintWriter) a cui inviare lo stato. |
regex | String : l'espressione regolare a cui devono essere abbinati i comandi affinché il file xml venga scaricato. Se null, tutti i comandi verranno scaricati. |
execCommand
public abstract long execCommand (IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Assegna direttamente un dispositivo ed esegue un comando senza aggiungerlo alla coda dei comandi utilizzando un IInvocationContext
già esistente.
Parametri | |
---|---|
context | IInvocationContext : un IInvocationContext esistente. |
listener | ICommandScheduler.IScheduledInvocationListener : l' ICommandScheduler.IScheduledInvocationListener da informare |
args | String : gli argomenti del comando |
ritorna | |
---|---|
long |
Lancia | |
---|---|
ConfigurationException | se il comando non era valido |
NoDeviceException | se non c'è nessun dispositivo da utilizzare |
execCommand
public abstract long execCommand (ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Assegna direttamente un dispositivo ed esegue un comando senza aggiungerlo alla coda dei comandi.
Parametri | |
---|---|
listener | ICommandScheduler.IScheduledInvocationListener : l' ICommandScheduler.IScheduledInvocationListener da informare |
args | String : gli argomenti del comando |
ritorna | |
---|---|
long | L'ID di invocazione del comando pianificato. |
Lancia | |
---|---|
ConfigurationException | se il comando non era valido |
NoDeviceException | se non c'è nessun dispositivo da utilizzare |
execCommand
public abstract long execCommand (ICommandScheduler.IScheduledInvocationListener listener,devices, String[] args)
Esegue direttamente il comando sui dispositivi già assegnati.
Parametri | |
---|---|
listener | ICommandScheduler.IScheduledInvocationListener : l' ICommandScheduler.IScheduledInvocationListener da informare |
devices | ERROR(/List ) ERROR(/List ) usare |
args | String : gli argomenti del comando |
ritorna | |
---|---|
long | L'ID di invocazione del comando pianificato. |
Lancia | |
---|---|
ConfigurationException | se il comando non era valido |
getCommandFileWatcher
public abstract CommandFileWatcher getCommandFileWatcher ()
Ottieni il CommandFileWatcher appropriato per questo scheduler
ritorna | |
---|---|
CommandFileWatcher |
getExecutingCommandCount
public abstract int getExecutingCommandCount ()
Restituisce il numero di comandi in stato di esecuzione.
ritorna | |
---|---|
int |
getInvocationInfo
public abstract String getInvocationInfo (int invocationId)
Restituisce le informazioni su un bu di invocazione specificando l'id di invocazione.
Parametri | |
---|---|
invocationId | int : l'ID di tracciamento dell'invocazione. |
ritorna | |
---|---|
String | Una String contenente informazioni sull'invocazione. |
getLastInvocationExitCode
public abstract CommandRunner.ExitCode getLastInvocationExitCode ()
Restituisce il codice di errore dell'ultima invocazione eseguita. Restituisce 0 (nessun errore), se non è stata ancora eseguita alcuna invocazione.
ritorna | |
---|---|
CommandRunner.ExitCode |
getLastInvocationThrowable
public abstract Throwable getLastInvocationThrowable ()
Restituisce il Throwable
dall'ultima invocazione eseguita. Restituisce null, se non è disponibile alcun oggetto lanciabile.
ritorna | |
---|---|
Throwable |
getReadyCommandCount
public abstract int getReadyCommandCount ()
Restituisce il numero di comandi in stato pronto nella coda.
ritorna | |
---|---|
int |
isDeviceInInvocationThread
public abstract boolean isDeviceInInvocationThread (ITestDevice device)
Restituisce vero se il dispositivo viene utilizzato da un thread di chiamata attivo.
Parametri | |
---|---|
device | ITestDevice |
ritorna | |
---|---|
boolean |
giuntura
public abstract void join ()
Attende il completamento della pianificazione.
Guarda anche:
giuntura
public abstract void join (long millis)
Attende il completamento dello scheduler o il timeout dopo la durata specificata in millisecondi.
Parametri | |
---|---|
millis | long |
Guarda anche:
rimuovi tutti i comandi
public abstract void removeAllCommands ()
Rimuovi tutti i comandi dallo scheduler
setClearcutClient
public abstract void setClearcutClient (ClearcutClient client)
Imposta il client per segnalare i dati di cablaggio
Parametri | |
---|---|
client | ClearcutClient |
dovrebbeShutdownOnCmdfileError
public abstract boolean shouldShutdownOnCmdfileError ()
Restituisce vero se è necessario arrestare lo scheduler in caso di errori di comando
ritorna | |
---|---|
boolean |
fermare
public void shutdown ()
Tentare di arrestare normalmente il pianificatore dei comandi.
Cancella i comandi in attesa di essere testati e richiede che tutte le invocazioni in corso vengano chiuse correttamente.
Dopo la chiamata allo shutdown, il ciclo principale dello scheduler attenderà il completamento di tutte le invocazioni in corso prima di uscire completamente.
fermare
public abstract void shutdown (boolean notifyStop)
Tentare di arrestare normalmente il pianificatore dei comandi.
Parametri | |
---|---|
notifyStop | boolean : se vero, notifica le invocazioni dell'arresto di TF. |
shutdownDifficile
public abstract void shutdownHard (boolean killAdb)
Tentare di arrestare forzatamente il pianificatore dei comandi.
Simile a shutdown()
, ma facoltativamente ucciderà anche la connessione adb, nel tentativo di "ispirare" le invocazioni in corso per completarle più rapidamente.
Parametri | |
---|---|
killAdb | boolean |
shutdownDifficile
public abstract void shutdownHard ()
Tentare di arrestare forzatamente il pianificatore dei comandi. Uguale a shutdownHard(true).
shutdownOnEmpty
public abstract void shutdownOnEmpty ()
Simile a shutdown()
, ma attenderà invece che tutti i comandi vengano eseguiti prima di uscire.
inizio
public abstract void start ()
Avviare ICommandScheduler
.
shutdown()
. vedere Thread.start()
. stopInvocation
public abstract boolean stopInvocation (int invocationId, String cause)
Arresta un'invocazione in esecuzione specificandone l'id.
Parametri | |
---|---|
invocationId | int : l'ID di tracciamento dell'invocazione. |
cause | String : la causa dell'interruzione dell'invocazione. |
ritorna | |
---|---|
boolean | true se l'invocazione è stata interrotta, false altrimenti |
Lancia | |
---|---|
UnsupportedOperationException | se l'implementazione non lo supporta |
stopInvocation
public boolean stopInvocation (int invocationId)
Arresta un'invocazione in esecuzione specificandone l'id.
Parametri | |
---|---|
invocationId | int |
ritorna | |
---|---|
boolean | true se l'invocazione è stata interrotta, false altrimenti |
Lancia | |
---|---|
UnsupportedOperationException | se l'implementazione non lo supporta |
stopInvocation
public abstract boolean stopInvocation (ITestInvocation invocation)
Arresta un'invocazione in esecuzione.
Parametri | |
---|---|
invocation | ITestInvocation |
ritorna | |
---|---|
boolean | true se l'invocazione è stata interrotta, false altrimenti |
Lancia | |
---|---|
UnsupportedOperationException | se l'implementazione non lo supporta |
stopScheduling
public void stopScheduling ()
Interrompe la pianificazione e l'accettazione di nuovi test ma non interrompe Tradefed. Questo ha lo scopo di consentire un arresto in due passaggi in cui prima eliminiamo tutti i test in esecuzione, quindi terminiamo il processo Tradefed.
I campioni di contenuti e codice in questa pagina sono soggetti alle licenze descritte nella Licenza per i contenuti. Java e OpenJDK sono marchi o marchi registrati di Oracle e/o delle sue società consociate.
Ultimo aggiornamento 2023-12-01 UTC.