ICommandScheduler

public interface ICommandScheduler

com.android.tradefed.command.ICommandScheduler


Algorytm szeregowania poleceń federacji handlowej.

Podsumowanie

Zagnieżdżone klasy

interface ICommandScheduler.IScheduledInvocationListener

Detektor zdarzeń wywołania po zakończeniu wywołania. 

Metody publiczne

abstract Pair<Boolean, Integer> addCommand(String[] args)

Dodaje polecenie do algorytmu szeregowania.

abstract void addCommandFile(String cmdFile, extraArgs)

Dodaje wszystkie polecenia z danego pliku do algorytmu szeregowania

abstract void await()

Czekam na uruchomienie algorytmu szeregowania, w tym na zakończenie przekazywania ze starego pliku TF w odpowiednich przypadkach.

abstract void displayCommandQueue(PrintWriter printWriter)

Przekazuj szczegółowe dane debugowania dotyczące stanu kolejki wykonywania poleceń.

abstract void displayCommandsInfo(PrintWriter printWriter, String regex)

Na wyjściu generuje listę bieżących poleceń.

abstract void displayInvocationsInfo(PrintWriter printWriter)

Wyświetla listę bieżących wywołań.

abstract void dumpCommandsXml(PrintWriter printWriter, String regex)

Zrzuć rozwinięty plik XML dla polecenia ze wszystkimi Dla wszystkich bieżących poleceń określono wartości Option.

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

Bezpośrednio przydziela urządzenie i wykonuje polecenie bez dodawania go do kolejki poleceń przy użyciu już istniejącego elementu IInvocationContext.

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

Bezpośrednio przydziela urządzenie i wykonuje polecenie bez dodawania go do kolejki poleceń.

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

Wykonaj polecenie bezpośrednio na przydzielonych już urządzeniach.

abstract CommandFileWatcher getCommandFileWatcher()

Pobierz odpowiednie narzędzie CommandFileWatcher dla tego algorytmu szeregowania

abstract int getExecutingCommandCount()

Zwraca liczbę poleceń w stanie wykonania.

abstract String getInvocationInfo(int invocationId)

Zwraca informacje o jednostce organizacyjnej wywołania, która zawiera identyfikator wywołania.

abstract CommandRunner.ExitCode getLastInvocationExitCode()

Zwraca kod błędu ostatniego uruchomionego wywołania.

abstract Throwable getLastInvocationThrowable()

Zwraca Throwable z ostatniego uruchomionego wywołania.

abstract int getReadyCommandCount()

Zwraca liczbę poleceń w stanie gotowości w kolejce.

abstract boolean isDeviceInInvocationThread(ITestDevice device)

Zwraca wartość prawda, jeśli urządzenie jest używane przez aktywny wątek wywołania.

abstract void join()

Czekam na zakończenie działania algorytmu szeregowania.

abstract void join(long millis)

Czekam na zakończenie działania algorytmu szeregowania lub przekroczenie limitu czasu po upływie określonego czasu w milisekundach.

abstract void removeAllCommands()

Usuń wszystkie polecenia z algorytmu szeregowania

abstract void setClearcutClient(ClearcutClient client)

Skonfiguruj klienta do raportowania danych o wykorzystywaniu danych

abstract boolean shouldShutdownOnCmdfileError()

Zwraca wartość true, jeśli w przypadku błędu polecenia trzeba wyłączyć algorytm szeregowania

default void shutdown()

Spróbuj płynnie wyłączyć algorytm szeregowania poleceń.

abstract void shutdown(boolean notifyStop)

Spróbuj płynnie wyłączyć algorytm szeregowania poleceń.

abstract void shutdownHard(boolean killAdb)

Spróbuj wymusić wyłączenie algorytmu szeregowania poleceń.

abstract void shutdownHard()

Spróbuj wymusić wyłączenie algorytmu szeregowania poleceń.

abstract void shutdownOnEmpty()

Podobnie jak shutdown(), ale będzie czekać na wykonanie wszystkich poleceń przed wyjściem.

abstract void start()

Rozpocznij ICommandScheduler.

abstract boolean stopInvocation(int invocationId, String cause)

Zatrzymaj uruchomione wywołanie, podając jego identyfikator.

default boolean stopInvocation(int invocationId)

Zatrzymaj uruchomione wywołanie, podając jego identyfikator.

abstract boolean stopInvocation(ITestInvocation invocation)

Zatrzymaj uruchomione wywołanie.

default void stopScheduling()

Zatrzymuje planowanie i akceptowanie nowych testów, ale nie zatrzymuje Tradefed.

Metody publiczne

addCommand

public abstract Pair<Boolean, Integer> addCommand (String[] args)

Dodaje polecenie do algorytmu szeregowania.

Polecenie to zasadniczo instancja do uruchomienia konfiguracji i powiązane z nią .

Jeśli „--help” jest określony, tekst pomocy do konfiguracji będzie zwracany do stdout. W przeciwnym razie konfiguracja zostanie dodana do kolejki do uruchomienia.

Parametry
args String: argumenty konfiguracji.

Zwroty
Pair<Boolean, Integer> Para wartości. Pierwsza wartość jest wartością logiczną true, jeśli dodano polecenie. . Druga wartość to znany identyfikator narzędzia do śledzenia poleceń(wartość nieujemna), jeśli polecenie zostało dodane. W przeciwnym razie zwróć 0 po dodaniu polecenia dla wszystkich urządzeń. -1.

Rzuty
ConfigurationException jeśli nie udało się przeanalizować polecenia

addCommandFile

public abstract void addCommandFile (String cmdFile, 
                 extraArgs)

Dodaje wszystkie polecenia z danego pliku do algorytmu szeregowania

Parametry
cmdFile String: ścieżka systemu plików pliku polecenia

extraArgs : ERROR(/List) z String argumentów do dołączenia do każdego przeanalizowanego polecenia z pliku. Pole może być puste, ale nie powinno być puste.

Rzuty
ConfigurationException jeśli nie można przeanalizować pliku polecenia

Zobacz też:

poczekaj

public abstract void await ()

Czekam na uruchomienie algorytmu szeregowania, w tym na zakończenie przekazywania ze starego pliku TF w odpowiednich przypadkach.

displayCommandQueue

public abstract void displayCommandQueue (PrintWriter printWriter)

Przekazuj szczegółowe dane debugowania dotyczące stanu kolejki wykonywania poleceń.

displayCommandsInfo

public abstract void displayCommandsInfo (PrintWriter printWriter, 
                String regex)

Na wyjściu generuje listę bieżących poleceń.

Parametry
printWriter PrintWriter: ERROR(/PrintWriter), do którego mają trafiać dane wyjściowe.

regex String: wyrażenie regularne, do którego należy dopasowywać polecenia, aby zostały wydrukowane. Jeśli ma wartość null, wszystkie polecenia są drukowane.

displayInvocationsInfo

public abstract void displayInvocationsInfo (PrintWriter printWriter)

Wyświetla listę bieżących wywołań.

Parametry
printWriter PrintWriter: ERROR(/PrintWriter), do którego mają trafiać dane wyjściowe.

dumpCommandsXml

public abstract void dumpCommandsXml (PrintWriter printWriter, 
                String regex)

Zrzuć rozwinięty plik XML dla polecenia ze wszystkimi Dla wszystkich bieżących poleceń określono wartości Option.

Parametry
printWriter PrintWriter: element ERROR(/PrintWriter), na który ma trafiać stan.

regex String: wyrażenie regularne, do którego należy dopasowywać polecenia w kolejności dla argumentu xml do skopiowania. Jeśli ma wartość null, wszystkie polecenia są kopiowane.

execCommand

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

Bezpośrednio przydziela urządzenie i wykonuje polecenie bez dodawania go do kolejki poleceń przy użyciu już istniejącego elementu IInvocationContext.

Parametry
context IInvocationContext: istniejący IInvocationContext.

listener ICommandScheduler.IScheduledInvocationListener: ICommandScheduler.IScheduledInvocationListener, gdzie będą dostępne informacje

args String: argumenty polecenia.

Zwroty
long

Rzuty
ConfigurationException jeśli polecenie jest nieprawidłowe
NoDeviceException gdy nie ma urządzenia, którego można użyć

execCommand

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

Bezpośrednio przydziela urządzenie i wykonuje polecenie bez dodawania go do kolejki poleceń.

Parametry
listener ICommandScheduler.IScheduledInvocationListener: ICommandScheduler.IScheduledInvocationListener, gdzie będą dostępne informacje

args String: argumenty polecenia.

Zwroty
long Identyfikator wywołania zaplanowanego polecenia.

Rzuty
ConfigurationException jeśli polecenie jest nieprawidłowe
NoDeviceException gdy nie ma urządzenia, którego można użyć

execCommand

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

Wykonaj polecenie bezpośrednio na przydzielonych już urządzeniach.

Parametry
listener ICommandScheduler.IScheduledInvocationListener: ICommandScheduler.IScheduledInvocationListener, gdzie będą dostępne informacje

devices : element ERROR(/List), którego należy użyć

args String: argumenty polecenia.

Zwroty
long Identyfikator wywołania zaplanowanego polecenia.

Rzuty
ConfigurationException jeśli polecenie jest nieprawidłowe

getCommandFileWatcher

public abstract CommandFileWatcher getCommandFileWatcher ()

Pobierz odpowiednie narzędzie CommandFileWatcher dla tego algorytmu szeregowania

Zwroty
CommandFileWatcher

getExecutingCommandCount;

public abstract int getExecutingCommandCount ()

Zwraca liczbę poleceń w stanie wykonania.

Zwroty
int

getInvocationInfo

public abstract String getInvocationInfo (int invocationId)

Zwraca informacje o jednostce organizacyjnej wywołania, która zawiera identyfikator wywołania.

Parametry
invocationId int: identyfikator śledzenia wywołania.

Zwroty
String Pole String zawierające informacje o wywołaniu.

getLastInvocationExitCode

public abstract CommandRunner.ExitCode getLastInvocationExitCode ()

Zwraca kod błędu ostatniego uruchomionego wywołania. Jeśli żadne wywołanie nie zostało jeszcze uruchomione, zwróć 0 (brak błędu).

Zwroty
CommandRunner.ExitCode

getLastInvocationThrowable,

public abstract Throwable getLastInvocationThrowable ()

Zwraca Throwable z ostatniego uruchomionego wywołania. Jeśli nie ma dostępnej możliwości zgłoszenia, zwraca wartość null.

Zwroty
Throwable

getReadyCommandCount;

public abstract int getReadyCommandCount ()

Zwraca liczbę poleceń w stanie gotowości w kolejce.

Zwroty
int

isDeviceInvocationThread

public abstract boolean isDeviceInInvocationThread (ITestDevice device)

Zwraca wartość prawda, jeśli urządzenie jest używane przez aktywny wątek wywołania.

Parametry
device ITestDevice

Zwroty
boolean

dołącz

public abstract void join ()

Czekam na zakończenie działania algorytmu szeregowania.

Zobacz też:

dołącz

public abstract void join (long millis)

Czekam na zakończenie działania algorytmu szeregowania lub przekroczenie limitu czasu po upływie określonego czasu w milisekundach.

Parametry
millis long

Zobacz też:

deleteAllCommands

public abstract void removeAllCommands ()

Usuń wszystkie polecenia z algorytmu szeregowania

setClearcutClient

public abstract void setClearcutClient (ClearcutClient client)

Skonfiguruj klienta do raportowania danych o wykorzystywaniu danych

Parametry
client ClearcutClient

Należy wyłączyć_przy plikuCmdfile

public abstract boolean shouldShutdownOnCmdfileError ()

Zwraca wartość true, jeśli w przypadku błędu polecenia trzeba wyłączyć algorytm szeregowania

Zwroty
boolean

Wyłącz

public void shutdown ()

Spróbuj płynnie wyłączyć algorytm szeregowania poleceń.

Usuwa polecenia oczekujące na przetestowanie i żąda zamknięcia wszystkich uruchomionych wywołań z gracją w dół.

Po wywołaniu wyłączenia główna pętla algorytmu szeregowania będzie czekać na wszystkie wywołania w przed jego całkowitym zamknięciem.

Wyłącz

public abstract void shutdown (boolean notifyStop)

Spróbuj płynnie wyłączyć algorytm szeregowania poleceń.

Parametry
notifyStop boolean: jeśli ma wartość prawda, powiadamia o wywołaniach wyłączenia plików TF.

WyłączenieHard

public abstract void shutdownHard (boolean killAdb)

Spróbuj wymusić wyłączenie algorytmu szeregowania poleceń.

Podobnie jak shutdown(), ale opcjonalnie spowoduje też zakończenie połączenia adb w próba „inspirowania” trwalsze wywołania.

Parametry
killAdb boolean

WyłączenieHard

public abstract void shutdownHard ()

Spróbuj wymusić wyłączenie algorytmu szeregowania poleceń. Taka sama jak w przypadku wyłączaniaHard(prawda).

zamknięcieOnPuste

public abstract void shutdownOnEmpty ()

Podobnie jak shutdown(), ale będzie czekać na wykonanie wszystkich poleceń przed wyjściem.

Pamiętaj, że jeśli jakiekolwiek polecenia są w trybie pętli, algorytm szeregowania nigdy nie zostanie zamknięty.

rozpocznij

public abstract void start ()

Rozpocznij ICommandScheduler.

Ta metoda musi zostać wywołana przed wywołaniem innych metod.

Będzie działać do momentu wywołania funkcji shutdown(). zobacz Thread.start().

stopInvocation

public abstract boolean stopInvocation (int invocationId, 
                String cause)

Zatrzymaj uruchomione wywołanie, podając jego identyfikator.

Parametry
invocationId int: identyfikator śledzenia wywołania.

cause String: przyczyna zatrzymania wywołania.

Zwroty
boolean „true”, jeśli wywoływanie zostało zatrzymane. W przeciwnym razie ma wartość „false” (fałsz).

Rzuty
UnsupportedOperationException jeśli implementacja nie obsługuje tej funkcji

stopInvocation

public boolean stopInvocation (int invocationId)

Zatrzymaj uruchomione wywołanie, podając jego identyfikator.

Parametry
invocationId int

Zwroty
boolean „true”, jeśli wywoływanie zostało zatrzymane. W przeciwnym razie ma wartość „false” (fałsz).

Rzuty
UnsupportedOperationException jeśli implementacja nie obsługuje tej funkcji

stopInvocation

public abstract boolean stopInvocation (ITestInvocation invocation)

Zatrzymaj uruchomione wywołanie.

Parametry
invocation ITestInvocation

Zwroty
boolean „true”, jeśli wywoływanie zostało zatrzymane. W przeciwnym razie ma wartość „false” (fałsz).

Rzuty
UnsupportedOperationException jeśli implementacja nie obsługuje tej funkcji

zatrzymaj planowanie

public void stopScheduling ()

Zatrzymuje planowanie i akceptowanie nowych testów, ale nie zatrzymuje Tradefed. Ma to na celu umożliwienie dwuetapowe wyłączenie: najpierw opróżniamy wszystkie uruchomione testy, a potem zamykamy Tradefed proces tworzenia konta.