ICommandScheduler
public
interface
ICommandScheduler
| com.android.tradefed.command.ICommandScheduler |
ตัวกำหนดเวลาสำหรับการเรียกใช้คำสั่ง TradeFederation
สรุป
คลาสเรียนที่ซ้อนกัน | |
|---|---|
interface |
ICommandScheduler.IScheduledInvocationListener
Listener สำหรับเหตุการณ์การเรียกใช้เมื่อการเรียกใช้เสร็จสมบูรณ์ |
เมธอดสาธารณะ | |
|---|---|
abstract
Pair<Boolean, Integer>
|
addCommand(String[] args)
เพิ่มคำสั่งลงในตัวจัดกำหนดการ |
abstract
void
|
addCommandFile(String cmdFile,
เพิ่มคำสั่งทั้งหมดจากไฟล์ที่ระบุไปยังตัวกำหนดเวลา |
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 ที่ขยายแล้วสำหรับคำสั่งที่มีค่า |
abstract
long
|
execCommand(IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
จัดสรรอุปกรณ์โดยตรงและเรียกใช้คำสั่งโดยไม่ต้องเพิ่มลงในคิวคำสั่ง
โดยใช้ |
abstract
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener, String[] args)
จัดสรรอุปกรณ์โดยตรงและเรียกใช้คำสั่งโดยไม่ต้องเพิ่มลงในคิวคำสั่ง |
abstract
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)
เรียกใช้คำสั่งโดยตรงในอุปกรณ์ที่จัดสรรแล้ว |
abstract
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener,
เรียกใช้คำสั่งโดยตรงในอุปกรณ์ที่จัดสรรแล้ว |
abstract
CommandFileWatcher
|
getCommandFileWatcher()
รับ CommandFileWatcher ที่เหมาะสมสำหรับตัวกำหนดเวลานี้ |
abstract
int
|
getExecutingCommandCount()
แสดงผลจำนวนคำสั่งในสถานะกำลังดำเนินการ |
abstract
String
|
getInvocationInfo(int invocationId)
แสดงข้อมูลเกี่ยวกับการเรียกใช้โดยระบุรหัสการเรียกใช้ |
abstract
CommandRunner.ExitCode
|
getLastInvocationExitCode()
แสดงรหัสข้อผิดพลาดของการเรียกใช้ครั้งล่าสุดที่ทำงาน |
abstract
Throwable
|
getLastInvocationThrowable()
ส่งคืน |
abstract
int
|
getReadyCommandCount()
แสดงผลจำนวนคำสั่งที่มีสถานะพร้อมในคิว |
abstract
boolean
|
isDeviceInInvocationThread(ITestDevice device)
แสดงค่าเป็นจริงหากอุปกรณ์ใช้โดยเธรดการเรียกใช้ที่ใช้งานอยู่ |
abstract
void
|
join()
รอให้ตัวกำหนดเวลาเสร็จสมบูรณ์ |
abstract
void
|
join(long millis)
รอให้ตัวกำหนดเวลางานเสร็จสมบูรณ์หรือหมดเวลาหลังจากระยะเวลาที่ระบุเป็นมิลลิวินาที |
abstract
void
|
removeAllCommands()
นำคำสั่งทั้งหมดออกจากตัวกำหนดเวลา |
abstract
void
|
setClearcutClient(ClearcutClient client)
ตั้งค่าไคลเอ็นต์ให้รายงานข้อมูล Harness |
default
void
|
setMaxPollTime(long polling)
|
default
void
|
setPrintSchedulingWarning(boolean print)
|
abstract
boolean
|
shouldShutdownOnCmdfileError()
แสดงค่าเป็นจริงหากเราต้องปิดตัวกำหนดตารางเวลาเมื่อเกิดข้อผิดพลาดในคำสั่ง |
default
void
|
shutdown()
พยายามปิดตัวกำหนดเวลางานอย่างราบรื่น |
abstract
void
|
shutdown(boolean notifyStop)
พยายามปิดตัวกำหนดเวลางานอย่างราบรื่น |
abstract
void
|
shutdownHard(boolean killAdb)
พยายามปิดตัวกำหนดเวลางานโดยไม่คำนึงถึงผลกระทบ |
abstract
void
|
shutdownHard()
พยายามปิดตัวกำหนดเวลางานโดยไม่คำนึงถึงผลกระทบ |
abstract
void
|
shutdownOnEmpty()
คล้ายกับ |
abstract
void
|
start()
เริ่ม |
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 if command was added
successfully. ค่าที่ 2 คือรหัสเครื่องมือติดตามคำสั่งที่ทราบ(ค่าที่ไม่เป็นลบ) หากเพิ่มคำสั่งสำเร็จ ให้แสดงผล 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 |
|
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 จากการเรียกใช้ครั้งล่าสุดที่ทำงานอยู่
แสดงผล Null หากไม่มี Throwable
| คิกรีเทิร์น | |
|---|---|
Throwable |
|
getReadyCommandCount
public abstract int getReadyCommandCount ()
แสดงผลจำนวนคำสั่งที่มีสถานะพร้อมในคิว
| คิกรีเทิร์น | |
|---|---|
int |
|
isDeviceInInvocationThread
public abstract boolean isDeviceInInvocationThread (ITestDevice device)
แสดงค่าเป็นจริงหากอุปกรณ์ใช้โดยเธรดการเรียกใช้ที่ใช้งานอยู่
| พารามิเตอร์ | |
|---|---|
device |
ITestDevice |
| คิกรีเทิร์น | |
|---|---|
boolean |
|
เข้าร่วม
public abstract void join (long millis)
รอให้ตัวกำหนดเวลางานเสร็จสมบูรณ์หรือหมดเวลาหลังจากระยะเวลาที่ระบุเป็นมิลลิวินาที
| พารามิเตอร์ | |
|---|---|
millis |
long |
ดูเพิ่มเติม:
removeAllCommands
public abstract void removeAllCommands ()
นำคำสั่งทั้งหมดออกจากตัวกำหนดเวลา
setClearcutClient
public abstract void setClearcutClient (ClearcutClient client)
ตั้งค่าไคลเอ็นต์ให้รายงานข้อมูล Harness
| พารามิเตอร์ | |
|---|---|
client |
ClearcutClient |
setMaxPollTime
public void setMaxPollTime (long polling)
| พารามิเตอร์ | |
|---|---|
polling |
long |
setPrintSchedulingWarning
public void setPrintSchedulingWarning (boolean print)
| พารามิเตอร์ | |
|---|---|
print |
boolean |
shouldShutdownOnCmdfileError
public abstract boolean shouldShutdownOnCmdfileError ()
แสดงค่าเป็นจริงหากเราต้องปิดตัวกำหนดตารางเวลาเมื่อเกิดข้อผิดพลาดในคำสั่ง
| คิกรีเทิร์น | |
|---|---|
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 ซึ่งมีไว้เพื่อเปิดใช้ การปิดระบบ 2 ขั้นตอน โดยขั้นแรกเราจะระบายการทดสอบที่กำลังทำงานทั้งหมด แล้วจึงสิ้นสุดกระบวนการ Tradefed