ICommandScheduler

public interface ICommandScheduler

com.android.tradefed.command.ICommandScheduler


Планировщик для запуска команд TradeFederation.

Краткое содержание

Вложенные классы

interface ICommandScheduler.IScheduledInvocationListener

Прослушиватель событий вызова после завершения вызова.

Публичные методы

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

Добавляет команду в планировщик.

abstract void addCommandFile (String cmdFile, extraArgs)

Добавляет все команды из указанного файла в планировщик

abstract void await ()

Ожидает начала работы планировщика, включая ожидание завершения передачи управления от старого TF, если это применимо.

abstract void displayCommandQueue (PrintWriter printWriter)

Вывести подробную отладочную информацию о состоянии очереди выполнения команд.

abstract void displayCommandsInfo (PrintWriter printWriter, String regex)

Вывести список текущих команд.

abstract void displayInvocationsInfo (PrintWriter printWriter)

Отображает список текущих вызовов.

abstract void dumpCommandsXml (PrintWriter printWriter, String regex)

Вывести расширенный XML-файл для команды со всеми значениями Option , указанными для всех текущих команд.

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

Непосредственно выделяет устройство и выполняет команду, не добавляя ее в очередь команд, используя уже существующий IInvocationContext .

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

Непосредственно выделяет устройство и выполняет команду, не добавляя ее в очередь команд.

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

Непосредственно выполнить команду на уже выделенном устройстве.

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

Непосредственно выполнить команду на уже выделенных устройствах.

abstract CommandFileWatcher getCommandFileWatcher ()

Получите соответствующий CommandFileWatcher для этого планировщика

abstract int getExecutingCommandCount ()

Возвращает количество команд в состоянии выполнения.

abstract String getInvocationInfo (int invocationId)

Возвращает информацию о вызове, указав идентификатор вызова.

abstract CommandRunner.ExitCode getLastInvocationExitCode ()

Верните код ошибки последнего выполненного вызова.

abstract Throwable getLastInvocationThrowable ()

Верните Throwable из последнего выполненного вызова.

abstract int getReadyCommandCount ()

Возвращает количество команд в состоянии готовности в очереди.

abstract boolean isDeviceInInvocationThread ( ITestDevice device)

Возвращает true, если устройство используется активным потоком вызовов.

abstract void join ()

Ожидает завершения работы планировщика.

abstract void join (long millis)

Ожидает завершения работы планировщика или истечения времени ожидания по истечении указанного в миллисекундах времени.

abstract void removeAllCommands ()

Удалить все команды из планировщика

abstract void setClearcutClient (ClearcutClient client)

Настройте клиента на отправку данных о жгутах проводов

default void setMaxPollTime (long polling)
default void setPrintSchedulingWarning (boolean print)
abstract boolean shouldShutdownOnCmdfileError ()

Возвращаем true, если нам нужно остановить планировщик при возникновении ошибок команды.

default void shutdown ()

Попытайтесь корректно завершить работу планировщика команд.

abstract void shutdown (boolean notifyStop)

Попытайтесь корректно завершить работу планировщика команд.

abstract void shutdownHard (boolean killAdb)

Попытайтесь принудительно завершить работу планировщика команд.

abstract void shutdownHard ()

Попытайтесь принудительно завершить работу планировщика команд.

abstract void shutdownOnEmpty ()

Аналогично shutdown() , но вместо этого ждет выполнения всех команд перед выходом.

abstract void start ()

Запустите ICommandScheduler .

abstract boolean stopInvocation (int invocationId, String cause)

Остановите запущенный вызов, указав его идентификатор.

default boolean stopInvocation (int invocationId)

Остановите запущенный вызов, указав его идентификатор.

abstract boolean stopInvocation ( ITestInvocation invocation)

Остановить текущий вызов.

default void stopScheduling ()

Останавливает планирование и прием новых тестов, но не останавливает Tradefed.

Публичные методы

addCommand

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

Добавляет команду в планировщик.

Команда по сути представляет собой экземпляр конфигурации для запуска и связанных с ней аргументов.

Если указан аргумент "--help", текст справки по конфигурации будет выведен на стандартный вывод. В противном случае конфигурация будет добавлена ​​в очередь на выполнение.

Параметры
args String : аргументы конфигурации.

Возврат
Pair <Boolean, Integer> Пара значений. Первое значение — логическое значение true если команда была добавлена ​​успешно. Второе значение — известный идентификатор трекера команд (неотрицательное значение), если команда была добавлена ​​успешно. Возвращает 0, если команда добавлена ​​для всех устройств, в противном случае — -1.

Броски
ConfigurationException если команда не может быть проанализирована

addCommandFile

public abstract void addCommandFile (String cmdFile, 
                 extraArgs)

Добавляет все команды из указанного файла в планировщик

Параметры
cmdFile String : путь к командному файлу в файловой системе

extraArgs : ERROR(/List) String аргументов для добавления к каждой команде, проанализированной из файла. Может быть пустым, но не должен быть равен NULL.

Броски
ConfigurationException если командный файл не может быть проанализирован

Смотрите также:

ждать

public abstract void await ()

Ожидает начала работы планировщика, включая ожидание завершения передачи управления от старого TF, если это применимо.

displayCommandQueue

public abstract void displayCommandQueue (PrintWriter printWriter)

Вывести подробную отладочную информацию о состоянии очереди выполнения команд.

displayCommandsInfo

public abstract void displayCommandsInfo (PrintWriter printWriter, 
                String regex)

Вывести список текущих команд.

Параметры
printWriter PrintWriter : ERROR(/PrintWriter) для вывода.

regex String : регулярное выражение, которому должны соответствовать команды для вывода. Если равно null, будут выводиться все команды.

displayInvocationsInfo

public abstract void displayInvocationsInfo (PrintWriter printWriter)

Отображает список текущих вызовов.

Параметры
printWriter PrintWriter : ERROR(/PrintWriter) для вывода.

dumpCommandsXml

public abstract void dumpCommandsXml (PrintWriter printWriter, 
                String regex)

Вывести расширенный XML-файл для команды со всеми значениями Option , указанными для всех текущих команд.

Параметры
printWriter PrintWriter : ERROR(/PrintWriter) для вывода статуса.

regex String : регулярное выражение, которому должны соответствовать команды для выгрузки XML-файла. Если равно null, будут выгружены все команды.

execCommand

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

Непосредственно выделяет устройство и выполняет команду, не добавляя ее в очередь команд, используя уже существующий IInvocationContext .

Параметры
context IInvocationContext : существующий IInvocationContext .

listener ICommandScheduler.IScheduledInvocationListener : ICommandScheduler.IScheduledInvocationListener , который будет уведомлен

args String : аргументы команды

Возврат
long

Броски
ConfigurationException если команда была недействительной
NoDeviceException если нет устройства для использования

execCommand

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

Непосредственно выделяет устройство и выполняет команду, не добавляя ее в очередь команд.

Параметры
listener ICommandScheduler.IScheduledInvocationListener : ICommandScheduler.IScheduledInvocationListener , который будет уведомлен

args String : аргументы команды

Возврат
long Идентификатор вызова запланированной команды.

Броски
ConfigurationException если команда была недействительной
NoDeviceException если нет устройства для использования

execCommand

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

Непосредственно выполнить команду на уже выделенном устройстве.

Параметры
listener ICommandScheduler.IScheduledInvocationListener : ICommandScheduler.IScheduledInvocationListener , который будет уведомлен

device ITestDevice : используемое ITestDevice

args String : аргументы команды

Возврат
long Идентификатор вызова запланированной команды.

Броски
ConfigurationException если команда была недействительной

execCommand

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

Непосредственно выполнить команду на уже выделенных устройствах.

Параметры
listener ICommandScheduler.IScheduledInvocationListener : ICommandScheduler.IScheduledInvocationListener , который будет уведомлен

devices : ERROR(/List ) использовать

args String : аргументы команды

Возврат
long Идентификатор вызова запланированной команды.

Броски
ConfigurationException если команда была недействительной

getCommandFileWatcher

public abstract CommandFileWatcher getCommandFileWatcher ()

Получите соответствующий CommandFileWatcher для этого планировщика

Возврат
CommandFileWatcher

получитьВыполнениеКомандКаунти

public abstract int getExecutingCommandCount ()

Возвращает количество команд в состоянии выполнения.

Возврат
int

получитьInvocationInfo

public abstract String getInvocationInfo (int invocationId)

Возвращает информацию о вызове, указав идентификатор вызова.

Параметры
invocationId int : идентификатор отслеживания вызова.

Возврат
String String , содержащая информацию о вызове.

получитьLastInvocationExitCode

public abstract CommandRunner.ExitCode getLastInvocationExitCode ()

Верните код ошибки последнего выполненного вызова. Возвращайте 0 (нет ошибки), если вызов ещё не выполнялся.

Возврат
CommandRunner.ExitCode

getLastInvocationThrowable

public abstract Throwable getLastInvocationThrowable ()

Возвращает Throwable из последнего выполненного вызова. Возвращает null, если нет доступного Throwable.

Возврат
Throwable

getReadyCommandCount

public abstract int getReadyCommandCount ()

Возвращает количество команд в состоянии готовности в очереди.

Возврат
int

isDeviceInInvocationThread

public abstract boolean isDeviceInInvocationThread (ITestDevice device)

Возвращает true, если устройство используется активным потоком вызовов.

Параметры
device ITestDevice

Возврат
boolean

присоединиться

public abstract void join ()

Ожидает завершения работы планировщика.

Смотрите также:

присоединиться

public abstract void join (long millis)

Ожидает завершения работы планировщика или истечения времени ожидания по истечении указанного в миллисекундах времени.

Параметры
millis long

Смотрите также:

удалитьВсеКоманды

public abstract void removeAllCommands ()

Удалить все команды из планировщика

setClearcutClient

public abstract void setClearcutClient (ClearcutClient client)

Настройте клиента на отправку данных о жгутах проводов

Параметры
client ClearcutClient

setMaxPollTime

public void setMaxPollTime (long polling)

Параметры
polling long

setPrintSchedulingWarning

public void setPrintSchedulingWarning (boolean print)

Параметры
print boolean

shouldShutdownOnCmdfileError

public abstract boolean shouldShutdownOnCmdfileError ()

Возвращаем true, если нам нужно остановить планировщик при возникновении ошибок команды.

Возврат
boolean

неисправность

public void shutdown ()

Попытайтесь корректно завершить работу планировщика команд.

Очищает команды, ожидающие проверки, и запрашивает корректное завершение всех выполняемых вызовов.

После вызова завершения работы основной цикл планировщика будет ожидать завершения всех текущих вызовов, прежде чем полностью завершить работу.

неисправность

public abstract void shutdown (boolean notifyStop)

Попытайтесь корректно завершить работу планировщика команд.

Параметры
notifyStop boolean : если true, уведомляет о вызовах отключения TF.

shutdownHard

public abstract void shutdownHard (boolean killAdb)

Попытайтесь принудительно завершить работу планировщика команд.

Аналогично shutdown() , но также опционально завершает соединение adb, пытаясь «вдохновить» текущие вызовы на более быстрое завершение.

Параметры
killAdb boolean

shutdownHard

public abstract void shutdownHard ()

Попытка принудительно завершить работу планировщика команд. То же, что и shutdownHard(true).

shutdownOnEmpty

public abstract void shutdownOnEmpty ()

Аналогично shutdown() , но вместо этого ждет выполнения всех команд перед выходом.

Обратите внимание, что если какие-либо команды находятся в циклическом режиме, планировщик никогда не завершит работу.

начинать

public abstract void start ()

Запустите ICommandScheduler .

Должен быть вызван перед вызовом других методов.

Будет работать до тех пор, пока не будет вызван shutdown() . см. Thread.start() .

stopInvocation

public abstract boolean stopInvocation (int invocationId, 
                String cause)

Остановите запущенный вызов, указав его идентификатор.

Параметры
invocationId int : идентификатор отслеживания вызова.

cause String : причина остановки вызова.

Возврат
boolean true, если вызов был остановлен, false в противном случае

Броски
UnsupportedOperationException если реализация этого не поддерживает

stopInvocation

public boolean stopInvocation (int invocationId)

Остановите запущенный вызов, указав его идентификатор.

Параметры
invocationId int

Возврат
boolean true, если вызов был остановлен, false в противном случае

Броски
UnsupportedOperationException если реализация этого не поддерживает

stopInvocation

public abstract boolean stopInvocation (ITestInvocation invocation)

Остановить текущий вызов.

Параметры
invocation ITestInvocation

Возврат
boolean true, если вызов был остановлен, false в противном случае

Броски
UnsupportedOperationException если реализация этого не поддерживает

stopScheduling

public void stopScheduling ()

Останавливает планирование и приём новых тестов, но не останавливает Tradefed. Это сделано для обеспечения двухэтапного завершения работы: сначала мы завершаем все запущенные тесты, а затем завершаем процесс Tradefed.