CommandScheduler
public
class
CommandScheduler
extends Object
implements
ICommandScheduler
java.lang.Object | |
↳ | com.android.tradefed.command.Commandscheduler |
أداة جدولة لتشغيل أوامر TradeFederation على جميع الأجهزة المتاحة
سنحاول منح الأولوية للأوامر التي يتم تشغيلها استنادًا إلى إجمالي عدد عمليات التنفيذ. الوقت. مثلاً: سيتم إعطاء الأولوية للأوامر غير المتكررة أو السريعة التشغيل على الأوامر طويلة المدى.
يمكن تشغيله في الخلفية إلى أن يتم إيقافه.
ملخّص
الصفوف المتداخلة | |
---|---|
enum |
CommandScheduler.HostState
تعدادات الحالات المختلفة للمضيف |
شركة إنشاءات عامة | |
---|---|
CommandScheduler()
ينشئ |
الطرق العامة | |
---|---|
boolean
|
addCommand(String[] args)
إضافة أمر إلى أداة الجدولة. |
void
|
addCommandFile(String cmdFilePath,
إضافة جميع الأوامر من ملف معين إلى أداة الجدولة |
void
|
await()
الانتظار حتى بدء تشغيل أداة الجدولة، بما في ذلك انتظار التسليم من فريق العمل القديم لإكمال إن أمكن. |
static
TradefedDelegator
|
checkDelegation(String[] args)
يمكنك إنشاء مفوِّض استنادًا إلى سطر الأوامر لمعرفة ما إذا كنا بحاجة إلى تفويض عملية التشغيل أم لا. |
void
|
completeHandover()
تخبر أداة جدولة الأوامر أن تسلسل التسليم الذي تم بدؤه مكتمل بالكامل، إعادة تهيئة مديره البعيد على المنفذ الافتراضي. |
static
|
createReleaseMap(IInvocationContext context, Throwable e)
إنشاء خريطة لحالة الأجهزة حتى يمكن إصدارها بشكل مناسب |
ISandbox
|
createSandbox()
أنشئ |
void
|
displayCommandQueue(PrintWriter printWriter)
الحصول على معلومات تصحيح الأخطاء التفصيلية حول حالة قائمة انتظار تنفيذ الأمر |
void
|
displayCommandsInfo(PrintWriter printWriter, String regex)
إخراج قائمة بالأوامر الحالية |
void
|
displayInvocationsInfo(PrintWriter printWriter)
لعرض قائمة بالاستدعاءات الحالية. |
void
|
dumpCommandsXml(PrintWriter printWriter, String regex)
عليك تفريغ ملف xml الموسَّع للأمر مع تضمين جميع
تم تحديد قيم |
void
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)
تنفيذ الأمر مباشرةً على الجهاز الذي سبق تخصيصه |
void
|
execCommand(IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
يؤدي هذا الخيار إلى تخصيص جهاز وتنفيذ الأمر بشكل مباشر بدون إضافته إلى قائمة انتظار الأوامر
باستخدام |
void
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener, String[] args)
يؤدي هذا الإعداد إلى تخصيص جهاز وتنفيذ الأمر بشكل مباشر بدون إضافته إلى قائمة انتظار الأوامر. |
CommandFileWatcher
|
getCommandFileWatcher()
الحصول على |
int
|
getExecutingCommandCount()
تعرض عدد الأوامر في حالة التنفيذ. |
CommandScheduler.HostState
|
getHostState()
|
String
|
getInvocationInfo(int invocationId)
عرض المعلومات على رمز bu للاستدعاء مع تحديد معرّف الاستدعاء |
CommandRunner.ExitCode
|
getLastInvocationExitCode()
يعرض رمز الخطأ لآخر استدعاء تم تشغيله. |
Throwable
|
getLastInvocationThrowable()
يمكنك عرض |
int
|
getReadyCommandCount()
تعرض عدد الأوامر في حالة جاهزة في قائمة الانتظار. |
long
|
getShutdownTimeout()
|
void
|
handoverInitiationComplete()
تُعلم أداة جدولة الأوامر بأن التبادل الأولي للأجهزة والأوامر المستخدمة مكتملة، ويمكنه بدء عملية الجدولة. |
boolean
|
handoverShutdown(int handoverPort)
لبدء عملية |
void
|
notifyFileChanged(File cmdFile,
|
void
|
removeAllCommands()
إزالة جميع الأوامر من أداة الجدولة |
void
|
run()
تمثّل هذه السمة كتلة التنفيذ الأساسية لسلسلة المحادثات هذه. |
void
|
setClearcutClient(ClearcutClient client)
ضبط العميل للإبلاغ عن بيانات مجموعة أدوات السلامة |
boolean
|
shouldShutdownOnCmdfileError()
إرجاع true إذا احتجنا إلى إيقاف تشغيل أداة الجدولة في أخطاء الأوامر |
void
|
shutdown()
حاول إيقاف تشغيل أداة جدولة الأوامر بسلاسة. |
void
|
shutdownHard(boolean killAdb)
حاول فرض إيقاف تشغيل أداة جدولة الأوامر. |
void
|
shutdownHard()
حاول فرض إيقاف تشغيل أداة جدولة الأوامر. |
void
|
shutdownOnEmpty()
يشبه الأمر |
void
|
start()
لبدء أداة الجدولة بما في ذلك إعداد التسجيل وعملية إعداد |
boolean
|
stopInvocation(ITestInvocation invocation)
إيقاف استدعاء قيد التشغيل. |
boolean
|
stopInvocation(int invocationId, String cause)
يمكنك إيقاف استدعاء حالي من خلال تحديد معرّفه. |
الطرق المحمية | |
---|---|
void
|
cleanUp()
يتم إغلاق السجلّات وإجراء أي عمليات تنظيف أخرى ضرورية قبل الإنهاء. |
IConfiguration
|
createConfiguration(String[] args)
|
IInvocationContext
|
createInvocationContext()
|
IConfigurationFactory
|
getConfigFactory()
طريقة المصنع للحصول على إشارة إلى |
IDeviceManager
|
getDeviceManager()
طريقة المصنع للحصول على إشارة إلى |
TradefedFeatureServer
|
getFeatureServer()
|
IHostOptions
|
getHostOptions()
|
IKeyStoreClient
|
getKeyStoreClient()
لجلب |
void
|
initLogging()
يقوم بتهيئة سجل ddmlib. |
boolean
|
isShutdown()
|
boolean
|
isShuttingDown()
|
void
|
processReadyCommands(IDeviceManager manager)
|
void
|
waitForAllInvocationThreads()
انتظِر حتى تكتمل جميع سلاسل محادثات الاستدعاء. |
شركة إنشاءات عامة
CommandScheduler
public CommandScheduler ()
ينشئ CommandScheduler
.
ملاحظة: يجب طلب البدء قبل الاستخدام.
الطرق العامة
إضافة Command
public boolean addCommand (String[] args)
إضافة أمر إلى أداة الجدولة.
الأمر في الأساس هو مثيل لعملية التهيئة التي سيتم تشغيلها والوسيطات المرتبطة بها.
إذا كانت الإجابة "--help" تم تحديد الوسيطة في نص المساعدة سيتم إخراج التهيئة إلى stdout. وبخلاف ذلك، ستتم إضافة الإعدادات إلى قائمة الانتظار إلى الجري.
المعلمات | |
---|---|
args |
String : وسيطات الإعداد |
المرتجعات | |
---|---|
boolean |
true في حال إضافة الأمر بنجاح |
الرميات | |
---|---|
ConfigurationException |
إضافة ملف الأوامر
public void addCommandFile (String cmdFilePath,extraArgs)
إضافة جميع الأوامر من ملف معين إلى أداة الجدولة
المعلمات | |
---|---|
cmdFilePath |
String : مسار نظام الملفات الخاص بملف comand |
extraArgs |
: ERROR(/List) من String وسيطة لإلحاقها بكل أمر تم تحليله
من ملف. يمكن أن تكون فارغة ولكن يجب ألا تكون فارغة. |
الرميات | |
---|---|
ConfigurationException |
بانتظارك
public void await ()
الانتظار حتى بدء تشغيل أداة الجدولة، بما في ذلك انتظار التسليم من فريق العمل القديم لإكمال إن أمكن.
التحقق من التفويض
public static TradefedDelegator checkDelegation (String[] args)
يمكنك إنشاء مفوِّض استنادًا إلى سطر الأوامر لمعرفة ما إذا كنا بحاجة إلى تفويض عملية التشغيل أم لا.
المعلمات | |
---|---|
args |
String |
المرتجعات | |
---|---|
TradefedDelegator |
الرميات | |
---|---|
ConfigurationException |
إكمال عملية تمرير
public void completeHandover ()
تخبر أداة جدولة الأوامر أن تسلسل التسليم الذي تم بدؤه مكتمل بالكامل، إعادة تهيئة مديره البعيد على المنفذ الافتراضي.
createReleaseMap
public staticcreateReleaseMap (IInvocationContext context, Throwable e)
إنشاء خريطة لحالة الأجهزة حتى يمكن إصدارها بشكل مناسب
المعلمات | |
---|---|
context |
IInvocationContext |
e |
Throwable |
المرتجعات | |
---|---|
|
createSandbox
public ISandbox createSandbox ()
أنشئ ISandbox
الذي سيستخدمه الاستدعاء لتشغيله.
المرتجعات | |
---|---|
ISandbox |
displayCommandقائمة الانتظار
public void displayCommandQueue (PrintWriter printWriter)
الحصول على معلومات تصحيح الأخطاء التفصيلية حول حالة قائمة انتظار تنفيذ الأمر
displayCommandsInfo
public void displayCommandsInfo (PrintWriter printWriter, String regex)
إخراج قائمة بالأوامر الحالية
المعلمات | |
---|---|
printWriter |
PrintWriter : السمة ERROR(/PrintWriter) المطلوب إخراجها إليها |
regex |
String : التعبير العادي الذي يجب مطابقة الأوامر معه لكي تتم مطابقته
طبعًا. إذا كانت القيمة فارغة، فستتم طباعة جميع الأوامر.
|
معلومات DisplayInvocationsInfo
public void displayInvocationsInfo (PrintWriter printWriter)
لعرض قائمة بالاستدعاءات الحالية.
المعلمات | |
---|---|
printWriter |
PrintWriter : السمة ERROR(/PrintWriter) المطلوب إخراجها إليها
|
dumpCommandsXml
public void dumpCommandsXml (PrintWriter printWriter, String regex)
عليك تفريغ ملف xml الموسَّع للأمر مع تضمين جميع
تم تحديد قيم Option
لكل الأوامر الحالية.
المعلمات | |
---|---|
printWriter |
PrintWriter : ERROR(/PrintWriter) المطلوب إخراج الحالة إليه. |
regex |
String : التعبير العادي الذي يجب مطابقته مع الأوامر من أجل
ملف xml. إذا كانت القيمة خالية، سيتم تنفيذ كل الأوامر.
|
أمر execCommand
public void execCommand (ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)
تنفيذ الأمر مباشرةً على الجهاز الذي سبق تخصيصه
المعلمات | |
---|---|
listener |
ICommandScheduler.IScheduledInvocationListener : ICommandScheduler.IScheduledInvocationListener التي سيتم إعلامك بها |
device |
ITestDevice : السمة ITestDevice المطلوب استخدامها |
args |
String : وسيطات الأوامر |
الرميات | |
---|---|
ConfigurationException |
أمر execCommand
public void execCommand (IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
يؤدي هذا الخيار إلى تخصيص جهاز وتنفيذ الأمر بشكل مباشر بدون إضافته إلى قائمة انتظار الأوامر
باستخدام IInvocationContext
حالية.
المعلمات | |
---|---|
context |
IInvocationContext : عنصر IInvocationContext حالي |
listener |
ICommandScheduler.IScheduledInvocationListener : ICommandScheduler.IScheduledInvocationListener التي سيتم إعلامك بها |
args |
String : وسيطات الأوامر |
الرميات | |
---|---|
ConfigurationException |
|
NoDeviceException |
أمر execCommand
public void execCommand (ICommandScheduler.IScheduledInvocationListener listener, String[] args)
يؤدي هذا الإعداد إلى تخصيص جهاز وتنفيذ الأمر بشكل مباشر بدون إضافته إلى قائمة انتظار الأوامر.
المعلمات | |
---|---|
listener |
ICommandScheduler.IScheduledInvocationListener : ICommandScheduler.IScheduledInvocationListener التي سيتم إعلامك بها |
args |
String : وسيطات الأوامر |
الرميات | |
---|---|
ConfigurationException |
|
NoDeviceException |
الحصول على CommandFileWatcher
public CommandFileWatcher getCommandFileWatcher ()
الحصول على CommandFileWatcher
المناسب لأداة الجدولة هذه
المرتجعات | |
---|---|
CommandFileWatcher |
getExecutingCommandCount
public int getExecutingCommandCount ()
تعرض عدد الأوامر في حالة التنفيذ.
المرتجعات | |
---|---|
int |
الحصول على معلومات الاستدعاء
public String getInvocationInfo (int invocationId)
عرض المعلومات على رمز bu للاستدعاء مع تحديد معرّف الاستدعاء
المعلمات | |
---|---|
invocationId |
int : رقم تعريف تتبّع الاستدعاء |
المرتجعات | |
---|---|
String |
تمثّل هذه السمة String تحتوي على معلومات عن الاستدعاء.
|
getLastInvocationExitCode
public CommandRunner.ExitCode getLastInvocationExitCode ()
يعرض رمز الخطأ لآخر استدعاء تم تشغيله. يعرض 0 (بدون خطأ)، إذا لم يتم استدعاء بعد.
المرتجعات | |
---|---|
CommandRunner.ExitCode |
getLastInvocationThrowable
public Throwable getLastInvocationThrowable ()
يمكنك عرض Throwable
من آخر استدعاء تم تشغيله.
إرجاع "فارغ" (فارغ)، في حال عدم توفر أي قابل للرمي.
المرتجعات | |
---|---|
Throwable |
getREADCommandCount
public int getReadyCommandCount ()
تعرض عدد الأوامر في حالة جاهزة في قائمة الانتظار.
المرتجعات | |
---|---|
int |
مهلة الحصول على إيقاف التشغيل
public long getShutdownTimeout ()
المرتجعات | |
---|---|
long |
إكمال عملية تسليم
public void handoverInitiationComplete ()
تُعلم أداة جدولة الأوامر بأن التبادل الأولي للأجهزة والأوامر المستخدمة مكتملة، ويمكنه بدء عملية الجدولة.
إيقاف التشغيل باليد
public boolean handoverShutdown (int handoverPort)
لبدء عملية shutdown()
وتسليمها إلى عملية تبادلية أخرى على هذا المضيف نفسه.
ستُعلِم أداة الجدولة العملية التي يتم تبادلها بالعمل عن بُعد والاستماع على هذا المنفذ من الأجهزة الخالية. عند توفرها.
المعلمات | |
---|---|
handoverPort |
int |
المرتجعات | |
---|---|
boolean |
true إذا تم بدء التسليم بنجاح، false
أو
|
تغيير ملف الإخطار
public void notifyFileChanged (File cmdFile,extraArgs)
المعلمات | |
---|---|
cmdFile |
File |
extraArgs |
|
أوامر إزالة كل الأوامر
public void removeAllCommands ()
إزالة جميع الأوامر من أداة الجدولة
ضربة طويلة
public void run ()
تمثّل هذه السمة كتلة التنفيذ الأساسية لسلسلة المحادثات هذه.
setClearcutClient
public void setClearcutClient (ClearcutClient client)
ضبط العميل للإبلاغ عن بيانات مجموعة أدوات السلامة
المعلمات | |
---|---|
client |
ClearcutClient |
يجب إيقاف تشغيلCmdfileError
public boolean shouldShutdownOnCmdfileError ()
إرجاع true إذا احتجنا إلى إيقاف تشغيل أداة الجدولة في أخطاء الأوامر
المرتجعات | |
---|---|
boolean |
إيقاف التشغيل
public void shutdown ()
حاول إيقاف تشغيل أداة جدولة الأوامر بسلاسة.
يمحو الأوامر التي تنتظر اختبارها ويطلب أن تكون جميع الاستدعاءات قيد التقدم ويغلقه بشكل رشيق.
بعد استدعاء إيقاف التشغيل، ستنتظر الحلقة الرئيسية لأداة الجدولة (جدولة) جميع الاستدعاءات التي تكون قيد التقدم. إتمامها قبل الخروج تمامًا.
إيقاف صعب
public void shutdownHard (boolean killAdb)
حاول فرض إيقاف تشغيل أداة جدولة الأوامر.
على غرار shutdown()
، ولكنها أيضًا سوف تؤدي اختياريًا إلى إنهاء اتصال adb، في
محاولة "إلهام" الاستدعاءات قيد التقدم حتى تكتمل بشكل أسرع.
المعلمات | |
---|---|
killAdb |
boolean |
إيقاف صعب
public void shutdownHard ()
حاول فرض إيقاف تشغيل أداة جدولة الأوامر. مثل offHard(true).
إيقاف التشغيل على الجهاز الفارغة
public void shutdownOnEmpty ()
يشبه الأمر shutdown()
، ولكن بدلاً من ذلك سينتظر تنفيذ جميع الأوامر
قبل الخروج.
لاحظ أنه إذا كانت أي أوامر في وضع التكرار، فلن يتم إنهاء أداة الجدولة أبدًا.
بدء
public void start ()
لبدء أداة الجدولة بما في ذلك إعداد التسجيل وعملية إعداد DeviceManager
وما إلى ذلك
إيقاف الاستدعاء
public boolean stopInvocation (ITestInvocation invocation)
إيقاف استدعاء قيد التشغيل.
المعلمات | |
---|---|
invocation |
ITestInvocation |
المرتجعات | |
---|---|
boolean |
true إذا تم إيقاف الاستدعاء، وخطأ في الحالات الأخرى |
إيقاف الاستدعاء
public boolean stopInvocation (int invocationId, String cause)
يمكنك إيقاف استدعاء حالي من خلال تحديد معرّفه.
المعلمات | |
---|---|
invocationId |
int : رقم تعريف تتبّع الاستدعاء |
cause |
String : سبب إيقاف الاستدعاء |
المرتجعات | |
---|---|
boolean |
true إذا تم إيقاف الاستدعاء، وخطأ في الحالات الأخرى |
الطرق المحمية
تنظيف
protected void cleanUp ()
يتم إغلاق السجلّات وإجراء أي عمليات تنظيف أخرى ضرورية قبل الإنهاء.
معرّضة للكهرباء كي تتمكّن من محاكاة اختبارات الوحدة.
إنشاء تهيئة
protected IConfiguration createConfiguration (String[] args)
المعلمات | |
---|---|
args |
String |
المرتجعات | |
---|---|
IConfiguration |
الرميات | |
---|---|
ConfigurationException |
createInvocationContext
protected IInvocationContext createInvocationContext ()
المرتجعات | |
---|---|
IInvocationContext |
الحصول على إعدادات المصنع
protected IConfigurationFactory getConfigFactory ()
طريقة المصنع للحصول على إشارة إلى IConfigurationFactory
المرتجعات | |
---|---|
IConfigurationFactory |
IConfigurationFactory لاستخدام
|
الحصول على مدير الجهاز
protected IDeviceManager getDeviceManager ()
طريقة المصنع للحصول على إشارة إلى IDeviceManager
المرتجعات | |
---|---|
IDeviceManager |
IDeviceManager لاستخدام
|
الحصول علىخادم الميزات
protected TradefedFeatureServer getFeatureServer ()
المرتجعات | |
---|---|
TradefedFeatureServer |
getHostOptions
protected IHostOptions getHostOptions ()
المرتجعات | |
---|---|
IHostOptions |
عميل getKeyStoreClient
protected IKeyStoreClient getKeyStoreClient ()
لجلب IKeyStoreClient
باستخدام IKeyStoreFactory
تعريفه في IGlobalConfiguration
أو "خالٍ" إذا لم يتم تحديد أي شيء.
المرتجعات | |
---|---|
IKeyStoreClient |
عميل IKeyStoreClient |
بدء التسجيل
protected void initLogging ()
يقوم بتهيئة سجل ddmlib.
معرّضة للكهرباء كي تتمكّن من محاكاة اختبارات الوحدة.
إيقاف التشغيل
protected boolean isShutdown ()
المرتجعات | |
---|---|
boolean |
إيقاف التشغيل
protected boolean isShuttingDown ()
المرتجعات | |
---|---|
boolean |
عمليات جاهزة للعمل
protected void processReadyCommands (IDeviceManager manager)
المعلمات | |
---|---|
manager |
IDeviceManager |
انتظار لجميع الاستدعاءات
protected void waitForAllInvocationThreads ()
انتظِر حتى تكتمل جميع سلاسل محادثات الاستدعاء.