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()

ينتظر بدء تشغيل المخطِّط، بما في ذلك انتظار اكتمال عملية التسليم من عملية التحويل الناجحة القديمة إذا كان ذلك منطبقًا.

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()

الحصول على مراقب ملفات الأوامر المناسب لجدول التشغيل هذا

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)

ضبط العميل لإعداد تقارير عن بيانات الحِزم

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 if command could not be parsed

addCommandFile

public abstract void addCommandFile (String cmdFile, 
                 extraArgs)

تُضيف جميع الأوامر من ملف معيّن إلى المخطِّط

المعلمات
cmdFile String: مسار نظام الملفات لملف الأوامر

extraArgs : ERROR(/List) من وسيطات String لإضافتها إلى كل أمر تم تحليله من الملف يمكن أن تكون فارغة ولكن يجب ألا تكون فارغة.

عمليات الرمي
ConfigurationException إذا تعذّر تحليل ملف الأوامر

راجِع أيضًا:

في انتظار

public abstract void await ()

ينتظر بدء تشغيل المخطِّط، بما في ذلك انتظار اكتمال عملية التسليم من عملية التحويل الناجحة القديمة إذا كان ذلك منطبقًا.

displayCommandQueue

public abstract void displayCommandQueue (PrintWriter printWriter)

عرض معلومات مفصّلة عن تصحيح الأخطاء في حالة قائمة انتظار تنفيذ الأوامر

displayCommandsInfo

public abstract void displayCommandsInfo (PrintWriter printWriter, 
                String regex)

عرض قائمة بالطلبات الحالية

المعلمات
printWriter PrintWriter: ERROR(/PrintWriter) لإخراج البيانات إليه

regex String: التعبير العادي الذي يجب مطابقة الأوامر معه لكي تتم طباعتها إذا كان العنصر فارغًا، سيتم طباعة جميع الأوامر.

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 إذا كان القيمة فارغة، سيتم تفريغ جميع الأوامر.

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

getExecutingCommandCount

public abstract int getExecutingCommandCount ()

تعرِض هذه الدالة عدد الأوامر في حالة التنفيذ.

المرتجعات
int

getInvocationInfo

public abstract String getInvocationInfo (int invocationId)

عرض معلومات عن طلب من خلال تحديد معرّف الطلب

المعلمات
invocationId int: رقم تعريف التتبّع لطلب التنفيذ

المرتجعات
String String يحتوي على معلومات عن الطلب

getLastInvocationExitCode

public abstract CommandRunner.ExitCode getLastInvocationExitCode ()

عرض رمز الخطأ لآخر عملية استدعاء تم تنفيذها عرض القيمة 0 (بدون خطأ) إذا لم يتم تنفيذ أيّ طلب حتى الآن

المرتجعات
CommandRunner.ExitCode

getLastInvocationThrowable

public abstract Throwable getLastInvocationThrowable ()

عرض الرمز Throwable من آخر عملية استدعاء تم تنفيذها عرض قيمة فارغة إذا لم يكن هناك عنصر 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

راجِع أيضًا:

removeAllCommands

public abstract void removeAllCommands ()

إزالة جميع الأوامر من المخطِّط

setClearcutClient

public abstract void setClearcutClient (ClearcutClient client)

ضبط العميل لإعداد تقارير عن بيانات الحِزم

المعلمات
client ClearcutClient

shouldShutdownOnCmdfileError

public abstract boolean shouldShutdownOnCmdfileError ()

عرض True إذا احتجنا إلى إيقاف المخطِّط عند حدوث أخطاء في الأوامر

المرتجعات
boolean

إيقاف

public void 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(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 صحيح إذا تم إيقاف الاستدعاء، وخطأ في الحالات الأخرى

عمليات الرمي
UnsupportedOperationException إذا لم يكن التنفيذ يتيح ذلك

stopInvocation

public boolean stopInvocation (int invocationId)

يمكنك إيقاف طلب قيد التنفيذ من خلال تحديد رقم تعريفه.

المعلمات
invocationId int

المرتجعات
boolean صحيح إذا تم إيقاف الاستدعاء، وخطأ في الحالات الأخرى

عمليات الرمي
UnsupportedOperationException إذا لم يكن التنفيذ يتيح ذلك

stopInvocation

public abstract boolean stopInvocation (ITestInvocation invocation)

إيقاف طلب قيد التنفيذ

المعلمات
invocation ITestInvocation

المرتجعات
boolean صحيح إذا تم إيقاف الاستدعاء، وخطأ في الحالات الأخرى

عمليات الرمي
UnsupportedOperationException إذا لم يكن التنفيذ يتيح ذلك

stopScheduling

public void stopScheduling ()

يوقف هذا الخيار جدولة الاختبارات الجديدة وقبولها، ولكنّه لا يوقف Tradefed. يهدف ذلك إلى تفعيل عملية إيقاف على خطوتَين، حيث نوقف أولاً جميع الاختبارات الجارية، ثم ننهي عملية Tradefed.