ICCommandScheduler

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) 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, devices, String[] args) execCommand ( ICommandScheduler.IScheduledInvocationListener listener, devices, String[] args)

به طور مستقیم دستور را در دستگاه های از قبل تخصیص داده شده اجرا کنید.

abstract CommandFileWatcher getCommandFileWatcher ()

CommandFileWatcher مناسب را برای این زمانبندی دریافت کنید

abstract int getExecutingCommandCount ()

تعداد دستورات را در حالت اجرا برمی‌گرداند.

abstract String getInvocationInfo (int invocationId)

اطلاعات یک invocation bu را که شناسه فراخوانی را مشخص می کند، برگردانید.

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)

سرویس گیرنده را تنظیم کنید تا داده های مهار را گزارش کند

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" مشخص شده باشد، متن راهنما برای پیکربندی برای stdout خروجی خواهد شد. در غیر این صورت پیکربندی برای اجرا به صف اضافه می شود.

پارامترها
args String : آرگومان های پیکربندی.

برمی گرداند
Pair <Boolean, Integer> یک جفت مقدار، اگر دستور با موفقیت اضافه شود، مقدار اول یک true بولی است. مقدار دوم، شناسه ردیاب فرمان شناخته شده (مقدار غیر منفی) است، اگر دستور با موفقیت اضافه شد، وقتی دستور برای همه دستگاه‌ها اضافه شد، 0 را برگردانید، در غیر این صورت -1.

پرتاب می کند
ConfigurationException اگر فرمان قابل تجزیه نیست

افزودن CommandFile

public abstract void addCommandFile (String cmdFile, 
                 extraArgs)

تمام دستورات فایل داده شده را به زمانبندی اضافه می کند

پارامترها
cmdFile String : مسیر فایل سیستم فایل فرمان

extraArgs : یک ERROR(/List) از آرگومان های String که به هر دستور تجزیه شده از فایل اضافه می شود. می تواند خالی باشد اما نباید پوچ باشد.

پرتاب می کند
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, 
                 devices, 
                String[] args)

به طور مستقیم دستور را در دستگاه های از قبل تخصیص داده شده اجرا کنید.

پارامترها
listener ICommandScheduler.IScheduledInvocationListener : ICommandScheduler.IScheduledInvocationListener باید مطلع شود

devices : ERROR(/List ) ERROR(/List ) برای استفاده

args String : آرگومان های فرمان

برمی گرداند
long شناسه فراخوانی دستور زمانبندی شده.

پرتاب می کند
ConfigurationException اگر دستور نامعتبر بود

getCommandFileWatcher

public abstract CommandFileWatcher getCommandFileWatcher ()

CommandFileWatcher مناسب را برای این زمانبندی دریافت کنید

برمی گرداند
CommandFileWatcher

getExecutingCommandCount

public abstract int getExecutingCommandCount ()

تعداد دستورات را در حالت اجرا برمی‌گرداند.

برمی گرداند
int

getInvocationInfo

public abstract String getInvocationInfo (int invocationId)

اطلاعات یک invocation bu را که شناسه فراخوانی را مشخص می کند، برگردانید.

پارامترها
invocationId int : شناسه ردیابی فراخوانی.

برمی گرداند
String یک String حاوی اطلاعات مربوط به فراخوانی.

getLastInvocationExitCode

public abstract CommandRunner.ExitCode getLastInvocationExitCode ()

کد خطای آخرین فراخوانی که اجرا شد را برگردانید. اگر هنوز فراخوانی اجرا نشده است، 0 را برگردانید (بدون خطایی).

برمی گرداند
CommandRunner.ExitCode

getLastInvocationThrowable

public abstract Throwable getLastInvocationThrowable ()

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

بایدShutdownOnCmdfileError

public abstract boolean shouldShutdownOnCmdfileError ()

اگر نیاز به خاموش کردن زمان‌بند در خطاهای یک فرمان داریم، مقدار true را برگردانید

برمی گرداند
boolean

خاموش شدن

public void shutdown ()

سعی کنید برنامه زمانبندی فرمان را با ظرافت خاموش کنید.

دستورات در انتظار آزمایش را پاک می‌کند و درخواست می‌کند که همه فراخوان‌های در حال انجام به‌خوبی خاموش شوند.

پس از فراخوانی shutdown، حلقه اصلی زمان‌بند منتظر می‌ماند تا تمام فراخوان‌های در حال انجام قبل از خروج کامل کامل شوند.

خاموش شدن

public abstract void shutdown (boolean notifyStop)

سعی کنید برنامه زمانبندی فرمان را با ظرافت خاموش کنید.

پارامترها
notifyStop boolean : اگر درست باشد، فراخوانی خاموش شدن TF را مطلع می کند.

shutdownHard

public abstract void shutdownHard (boolean killAdb)

سعی کنید به اجبار زمانبندی فرمان را خاموش کنید.

مشابه shutdown() است، اما به صورت اختیاری اتصال adb را نیز از بین می برد، در تلاشی برای "الهام بخشیدن" فراخوانی های در حال انجام برای تکمیل سریعتر.

پارامترها
killAdb boolean

shutdownHard

public abstract void shutdownHard ()

سعی کنید به اجبار زمانبندی فرمان را خاموش کنید. مانند shutdownHard (درست است).

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 درست است اگر فراخوان متوقف شد، در غیر این صورت نادرست است

پرتاب می کند
UnsupportedOperationException اگر پیاده سازی از این پشتیبانی نمی کند

stopInvocation

public boolean stopInvocation (int invocationId)

یک فراخوان در حال اجرا را با مشخص کردن شناسه آن متوقف کنید.

پارامترها
invocationId int

برمی گرداند
boolean درست است اگر فراخوان متوقف شد، در غیر این صورت نادرست است

پرتاب می کند
UnsupportedOperationException اگر پیاده سازی از این پشتیبانی نمی کند

stopInvocation

public abstract boolean stopInvocation (ITestInvocation invocation)

یک فراخوان در حال اجرا را متوقف کنید.

پارامترها
invocation ITestInvocation

برمی گرداند
boolean درست است اگر فراخوان متوقف شد، در غیر این صورت نادرست است

پرتاب می کند
UnsupportedOperationException اگر پیاده سازی از این پشتیبانی نمی کند

توقف برنامه ریزی

public void stopScheduling ()

برنامه ریزی و پذیرش تست های جدید را متوقف می کند اما Tradefed را متوقف نمی کند. این به معنای فعال کردن یک خاموشی دو مرحله ای است که در آن ابتدا تمام تست های در حال اجرا را تخلیه می کنیم، سپس فرآیند Tradefed را خاتمه می دهیم.