ICommandScheduler
public
interface
ICommandScheduler
com.android.tradefed.command.ICommandScheduler |
Ein Planer zum Ausführen von TradeFederation-Befehlen.
Zusammenfassung
Verschachtelte Klassen | |
---|---|
interface |
ICommandScheduler.IScheduledInvocationListener
Listener für Aufrufereignisse, wenn der Aufruf abgeschlossen ist. |
Öffentliche Methoden | |
---|---|
abstract
Pair<Boolean, Integer>
|
addCommand(String[] args)
Fügt dem Scheduler einen Befehl hinzu. |
abstract
void
|
addCommandFile(String cmdFile,
Fügen Sie dem Scheduler alle Befehle aus der angegebenen Datei hinzu. |
abstract
void
|
await()
Wartet auf den Beginn der Ausführung des Planers, einschließlich Warten auf den Abschluss der Übergabe von der alten TF, falls zutreffend. |
abstract
void
|
displayCommandQueue(PrintWriter printWriter)
Detaillierte Informationen zur Fehlerbehebung zum Status der Befehlsausführungswarteschlange ausgeben. |
abstract
void
|
displayCommandsInfo(PrintWriter printWriter, String regex)
Liste der aktuellen Befehle ausgeben |
abstract
void
|
displayInvocationsInfo(PrintWriter printWriter)
Eine Liste der aktuellen Aufrufe. |
abstract
void
|
dumpCommandsXml(PrintWriter printWriter, String regex)
Dumpt die erweiterte XML-Datei für den Befehl mit allen |
abstract
long
|
execCommand(IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Hiermit wird ein Gerät direkt zugewiesen und ein Befehl ausgeführt, ohne ihn der Befehlswarteschlange hinzuzufügen. Dabei wird eine bereits vorhandene |
abstract
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Hiermit wird ein Gerät direkt zugewiesen und ein Befehl ausgeführt, ohne ihn der Befehlswarteschlange hinzuzufügen. |
abstract
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)
Befehl direkt auf einem bereits zugewiesenen Gerät ausführen. |
abstract
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener,
Befehl direkt auf bereits zugewiesenen Geräten ausführen. |
abstract
CommandFileWatcher
|
getCommandFileWatcher()
Entsprechenden CommandFileWatcher für diesen Planer abrufen |
abstract
int
|
getExecutingCommandCount()
Gibt die Anzahl der Befehle im Ausführungsstatus zurück. |
abstract
String
|
getInvocationInfo(int invocationId)
Gib die Informationen zu einem Aufruf zurück, indem du die Aufruf-ID angibst. |
abstract
CommandRunner.ExitCode
|
getLastInvocationExitCode()
Gibt den Fehlercode des letzten ausgeführten Aufrufs zurück. |
abstract
Throwable
|
getLastInvocationThrowable()
Gibt die |
abstract
int
|
getReadyCommandCount()
Gibt die Anzahl der Befehle im Status „Bereit“ in der Warteschlange zurück. |
abstract
boolean
|
isDeviceInInvocationThread(ITestDevice device)
Gibt „true“ zurück, wenn das Gerät von einem aktiven Aufruf-Thread verwendet wird. |
abstract
void
|
join()
Warten, bis der Scheduler abgeschlossen ist. |
abstract
void
|
join(long millis)
Wartet auf den Abschluss des Planers oder auf das Zeitlimit nach dem angegebenen Zeitraum in Millisekunden. |
abstract
void
|
removeAllCommands()
Alle Befehle aus dem Scheduler entfernen |
abstract
void
|
setClearcutClient(ClearcutClient client)
Den Kunden für die Berichterstellung über die Nutzungsdaten einrichten |
abstract
boolean
|
shouldShutdownOnCmdfileError()
Gibt „true“ zurück, wenn der Scheduler bei einem Befehlsfehler heruntergefahren werden muss. |
default
void
|
shutdown()
Versuchen Sie, den Befehlsplaner ordnungsgemäß herunterzufahren. |
abstract
void
|
shutdown(boolean notifyStop)
Versuchen Sie, den Befehlsplaner ordnungsgemäß herunterzufahren. |
abstract
void
|
shutdownHard(boolean killAdb)
Versuchen Sie, den Befehlsplaner zu erzwingen. |
abstract
void
|
shutdownHard()
Versuchen Sie, das Herunterfahren des Befehlsplaners zu erzwingen. |
abstract
void
|
shutdownOnEmpty()
Ähnlich wie |
abstract
void
|
start()
Starten Sie die |
abstract
boolean
|
stopInvocation(int invocationId, String cause)
Beenden Sie einen laufenden Aufruf, indem Sie seine ID angeben. |
default
boolean
|
stopInvocation(int invocationId)
Beenden Sie einen laufenden Aufruf, indem Sie seine ID angeben. |
abstract
boolean
|
stopInvocation(ITestInvocation invocation)
Laufende Aufrufe beenden |
default
void
|
stopScheduling()
Es werden keine neuen Tests mehr geplant und akzeptiert, Tradefed wird aber nicht beendet. |
Öffentliche Methoden
addCommand
public abstract Pair<Boolean, Integer> addCommand (String[] args)
Fügt dem Scheduler einen Befehl hinzu.
Ein Befehl ist im Wesentlichen eine Instanz einer auszuführenden Konfiguration und die zugehörigen Argumente.
Wenn das Argument „--help“ angegeben wird, wird der Hilfetext für die Konfiguration auf stdout ausgegeben. Andernfalls wird die Konfiguration der Warteschlange zum Ausführen hinzugefügt.
Parameter | |
---|---|
args |
String : die Konfigurationsargumente. |
Returns | |
---|---|
Pair<Boolean, Integer> |
Ein Wertepaar. Der erste Wert ist ein boolescher Wert true , wenn der Befehl erfolgreich hinzugefügt wurde. Der zweite Wert ist die bekannte Befehls-Tracker-ID(nicht negativ), wenn der Befehl erfolgreich hinzugefügt wurde. Wenn der Befehl für alle Geräte hinzugefügt wurde, wird „0“ zurückgegeben, andernfalls „-1“. |
Ausgabe | |
---|---|
ConfigurationException |
if command could not be parsed |
Weitere Informationen
addCommandFile
public abstract void addCommandFile (String cmdFile,extraArgs)
Fügen Sie dem Scheduler alle Befehle aus der angegebenen Datei hinzu.
Parameter | |
---|---|
cmdFile |
String : der Dateisystempfad der comand-Datei |
extraArgs |
: Eine ERROR(/List) von String Argumenten, die jedem aus der Datei geparsten Befehl angehängt werden sollen. Kann leer sein, darf aber nicht null sein. |
Ausgabe | |
---|---|
ConfigurationException |
if command file could not be parsed |
Weitere Informationen:
warten
public abstract void await ()
Wartet, bis der Scheduler gestartet wird, einschließlich des Wartens auf die Fertigstellung der Übergabe vom alten TF, falls zutreffend.
displayCommandQueue
public abstract void displayCommandQueue (PrintWriter printWriter)
Detaillierte Informationen zur Fehlerbehebung zum Status der Befehlsausführungswarteschlange ausgeben.
displayCommandsInfo
public abstract void displayCommandsInfo (PrintWriter printWriter, String regex)
Liste der aktuellen Befehle ausgeben
Parameter | |
---|---|
printWriter |
PrintWriter : Der ERROR(/PrintWriter) , in den die Ausgabe erfolgen soll. |
regex |
String : der reguläre Ausdruck, mit dem Befehle abgeglichen werden sollen, damit sie ausgegeben werden. Wenn „null“ angegeben ist, werden alle Befehle ausgegeben. |
displayInvocationsInfo
public abstract void displayInvocationsInfo (PrintWriter printWriter)
Eine Liste der aktuellen Aufrufe.
Parameter | |
---|---|
printWriter |
PrintWriter : ERROR(/PrintWriter) , in den die Ausgabe erfolgen soll. |
dumpCommandsXml
public abstract void dumpCommandsXml (PrintWriter printWriter, String regex)
Dumpt die erweiterte XML-Datei für den Befehl mit allen Option
-Werten, die für alle aktuellen Befehle angegeben sind.
Parameter | |
---|---|
printWriter |
PrintWriter : ERROR(/PrintWriter) , auf das der Status ausgegeben werden soll. |
regex |
String : der reguläre Ausdruck, mit dem Befehle abgeglichen werden müssen, damit die XML-Datei ausgegeben wird. Wenn „null“ festgelegt ist, werden alle Befehle gedumpt. |
execCommand
public abstract long execCommand (IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Ordnet ein Gerät direkt zu und führt einen Befehl aus, ohne es mit einem bereits vorhandenen IInvocationContext
zur Befehlswarteschlange hinzuzufügen.
Parameter | |
---|---|
context |
IInvocationContext : eine vorhandene IInvocationContext . |
listener |
ICommandScheduler.IScheduledInvocationListener : der zu benachrichtigende ICommandScheduler.IScheduledInvocationListener |
args |
String : die Befehlsargumente |
Returns | |
---|---|
long |
Ausgabe | |
---|---|
ConfigurationException |
if command was invalid |
NoDeviceException |
wenn kein Gerät verwendet werden kann |
execCommand
public abstract long execCommand (ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Hiermit wird ein Gerät direkt zugewiesen und ein Befehl ausgeführt, ohne ihn der Befehlswarteschlange hinzuzufügen.
Parameter | |
---|---|
listener |
ICommandScheduler.IScheduledInvocationListener : der zu benachrichtigende ICommandScheduler.IScheduledInvocationListener |
args |
String : die Befehlsargumente |
Returns | |
---|---|
long |
Die Aufruf-ID des geplanten Befehls. |
Ausgabe | |
---|---|
ConfigurationException |
if command was invalid |
NoDeviceException |
wenn kein Gerät verwendet werden kann |
execCommand
public abstract long execCommand (ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)
Befehl direkt auf einem bereits zugewiesenen Gerät ausführen.
Parameter | |
---|---|
listener |
ICommandScheduler.IScheduledInvocationListener : der zu benachrichtigende ICommandScheduler.IScheduledInvocationListener |
device |
ITestDevice : der zu verwendende ITestDevice |
args |
String : die Befehlsargumente |
Returns | |
---|---|
long |
Die Aufruf-ID des geplanten Befehls. |
Ausgabe | |
---|---|
ConfigurationException |
if command was invalid |
execCommand
public abstract long execCommand (ICommandScheduler.IScheduledInvocationListener listener,devices, String[] args)
Befehl direkt auf bereits zugewiesenen Geräten ausführen.
Parameter | |
---|---|
listener |
ICommandScheduler.IScheduledInvocationListener : der zu benachrichtigende ICommandScheduler.IScheduledInvocationListener |
devices |
: die zu verwendende ERROR(/List |
args |
String : die Befehlsargumente |
Returns | |
---|---|
long |
Die Aufruf-ID des geplanten Befehls. |
Ausgabe | |
---|---|
ConfigurationException |
if command was invalid |
getCommandFileWatcher
public abstract CommandFileWatcher getCommandFileWatcher ()
Entsprechenden CommandFileWatcher für diesen Planer abrufen
Returns | |
---|---|
CommandFileWatcher |
getExecutingCommandCount
public abstract int getExecutingCommandCount ()
Gibt die Anzahl der Befehle im Ausführungsstatus zurück.
Returns | |
---|---|
int |
getInvocationInfo
public abstract String getInvocationInfo (int invocationId)
Gibt die Informationen zu einem Aufruf zurück, mit dem die Aufruf-ID angegeben wird.
Parameter | |
---|---|
invocationId |
int : die Tracking-ID des Aufrufs. |
Returns | |
---|---|
String |
Einen String mit Informationen zum Aufruf. |
getLastInvocationExitCode
public abstract CommandRunner.ExitCode getLastInvocationExitCode ()
Gibt den Fehlercode des letzten ausgeführten Aufrufs zurück. Gibt 0 (kein Fehler) zurück, wenn noch keine Aufrufe ausgeführt wurden.
Returns | |
---|---|
CommandRunner.ExitCode |
getLastInvocationThrowable
public abstract Throwable getLastInvocationThrowable ()
Gibt das Throwable
des letzten ausgeführten Aufrufs zurück.
Gibt null zurück, wenn kein throwable verfügbar ist.
Returns | |
---|---|
Throwable |
getReadyCommandCount
public abstract int getReadyCommandCount ()
Gibt die Anzahl der Befehle im Status „Bereit“ in der Warteschlange zurück.
Returns | |
---|---|
int |
isDeviceInInvocationThread
public abstract boolean isDeviceInInvocationThread (ITestDevice device)
Gibt „true“ zurück, wenn das Gerät von einem aktiven Aufruf-Thread verwendet wird.
Parameter | |
---|---|
device |
ITestDevice |
Returns | |
---|---|
boolean |
zu betreten
public abstract void join ()
Warten, bis der Scheduler abgeschlossen ist.
Weitere Informationen
zu betreten
public abstract void join (long millis)
Wartet, bis der Scheduler abgeschlossen ist, oder löst nach der in Millisekunden angegebenen Dauer ein Zeitlimit aus.
Parameter | |
---|---|
millis |
long |
Weitere Informationen:
removeAllCommands
public abstract void removeAllCommands ()
Alle Befehle aus dem Scheduler entfernen
setClearcutClient
public abstract void setClearcutClient (ClearcutClient client)
Client so einstellen, dass Harness-Daten erfasst werden
Parameter | |
---|---|
client |
ClearcutClient |
shouldShutdownOnCmdfileError
public abstract boolean shouldShutdownOnCmdfileError ()
Gibt „true“ zurück, wenn der Scheduler bei einem Befehlsfehler heruntergefahren werden muss.
Returns | |
---|---|
boolean |
Herunterfahren
public void shutdown ()
Versuchen Sie, den Befehlsplaner ordnungsgemäß herunterzufahren.
Löscht Befehle, die noch nicht getestet wurden, und fordert alle laufenden Aufrufe zum ordnungsgemäßen Beenden auf.
Nach dem Herunterfahren wartet die Planer-Hauptschleife, bis alle laufenden Aufrufe abgeschlossen sind, bevor sie vollständig beendet wird.
Herunterfahren
public abstract void shutdown (boolean notifyStop)
Versuchen Sie, den Befehlsplaner ordnungsgemäß herunterzufahren.
Parameter | |
---|---|
notifyStop |
boolean : Wenn „true“, werden Aufrufe des TF-Herunterfahrens benachrichtigt. |
shutdownHard
public abstract void shutdownHard (boolean killAdb)
Versuchen Sie, den Befehlsplaner zu erzwingen.
Ähnlich wie shutdown()
, unterbricht aber auch optional die ADB-Verbindung, um laufende Aufrufe zu „inspirieren“, um den Vorgang schneller abzuschließen.
Parameter | |
---|---|
killAdb |
boolean |
shutdownHard
public abstract void shutdownHard ()
Versuchen Sie, den Befehlsplaner zu erzwingen. Entspricht shutdownHard(true).
shutdownOnEmpty
public abstract void shutdownOnEmpty ()
Ähnlich wie shutdown()
, wird jedoch mit dem Beenden auf die Ausführung aller Befehle gewartet.
Wenn Befehle im Loop-Modus sind, wird der Scheduler nie beendet.
start
public abstract void start ()
Starten Sie die ICommandScheduler
.
Muss vor dem Aufruf anderer Methoden aufgerufen werden.
Wird ausgeführt, bis shutdown()
aufgerufen wird.
siehe Thread.start()
.
stopInvocation
public abstract boolean stopInvocation (int invocationId, String cause)
Sie können eine laufende Aufrufung beenden, indem Sie die ID angeben.
Parameter | |
---|---|
invocationId |
int : die Tracking-ID des Aufrufs. |
cause |
String : Der Grund für das Beenden der Aufrufs. |
Returns | |
---|---|
boolean |
„true“, wenn die Aufrufe beendet wurden, andernfalls „false“ |
Ausgabe | |
---|---|
UnsupportedOperationException |
wenn die Implementierung dies nicht unterstützt |
stopInvocation
public boolean stopInvocation (int invocationId)
Sie können eine laufende Aufrufung beenden, indem Sie die ID angeben.
Parameter | |
---|---|
invocationId |
int |
Returns | |
---|---|
boolean |
„true“, wenn die Aufrufe beendet wurden, andernfalls „false“ |
Ausgabe | |
---|---|
UnsupportedOperationException |
wenn die Implementierung dies nicht unterstützt |
stopInvocation
public abstract boolean stopInvocation (ITestInvocation invocation)
Laufende Aufrufe beenden
Parameter | |
---|---|
invocation |
ITestInvocation |
Returns | |
---|---|
boolean |
„true“, wenn die Aufrufe beendet wurden, andernfalls „false“ |
Ausgabe | |
---|---|
UnsupportedOperationException |
wenn die Implementierung dies nicht unterstützt |
stopScheduling
public void stopScheduling ()
Es werden keine neuen Tests mehr geplant und akzeptiert, Tradefed wird aber nicht beendet. So soll ein zweistufiger Herunterfahrvorgang ermöglicht werden, bei dem zuerst alle laufenden Tests beendet und dann der Tradefed-Prozess beendet wird.