ICommandScheduler

public interface ICommandScheduler

com.android.tradefed.command.ICommandScheduler


เครื่องจัดตารางเวลาสำหรับการเรียกใช้คำสั่ง TradeFederation

สรุป

ชั้นเรียนที่ซ้อนกัน

interface ICommandScheduler.IScheduledInvocationListener

Listener สำหรับเหตุการณ์การเรียกใช้เมื่อการเรียกใช้เสร็จสมบูรณ์ 

วิธีการสาธารณะ

abstract boolean addCommand(String[] args)

เพิ่มคำสั่งลงในเครื่องจัดตารางเวลา

abstract void addCommandFile(String cmdFile, extraArgs)

เพิ่มคำสั่งทั้งหมดจากไฟล์ที่ระบุลงในเครื่องจัดตารางเวลา

abstract void await()

รอให้เครื่องจัดตารางเวลาเริ่มทำงาน รวมถึงรอการส่งมอบจาก TF เก่าให้เสร็จสมบูรณ์ หากมี

abstract void completeHandover()

แจ้งเครื่องจัดตารางเวลาคำสั่งว่าลำดับการส่งมอบที่เริ่มต้นดำเนินการเสร็จสมบูรณ์แล้ว และ ควรเริ่มต้นเครื่องมือจัดการระยะไกลอีกครั้งบนพอร์ตเริ่มต้น

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

จัดสรรอุปกรณ์และเรียกใช้คำสั่งโดยตรงโดยไม่ต้องเพิ่มลงในคิวคำสั่ง โดยใช้ IInvocationContext ที่มีอยู่แล้ว

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

จัดสรรอุปกรณ์และเรียกใช้คำสั่งโดยตรงโดยไม่ต้องเพิ่มลงในคิวคำสั่ง

abstract void execCommand(ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, 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 void handoverInitiationComplete()

แจ้งเครื่องจัดตารางเวลาคำสั่งว่าส่งการแลกเปลี่ยนอุปกรณ์และคำสั่งที่ใช้งานอยู่ครั้งแรก เสร็จสมบูรณ์ และสามารถเริ่มกำหนดเวลาการดำเนินการ

abstract boolean handoverShutdown(int handoverPort)

เริ่มต้น shutdown() และส่งไปยังกระบวนการอื่นที่มีการแลกเปลี่ยนในโฮสต์เดียวกันนี้

abstract void join()

รอให้เครื่องจัดตารางเวลาดำเนินการเสร็จสมบูรณ์

abstract void join(long millis)

รอให้เครื่องจัดตารางเวลาทำงานเสร็จหรือหมดเวลาหลังจากระยะเวลาที่ระบุไว้ในเป็นมิลลิวินาที

abstract void removeAllCommands()

นำคำสั่งทั้งหมดออกจากเครื่องจัดตารางเวลา

abstract void setClearcutClient(ClearcutClient client)

ตั้งค่าให้ไคลเอ็นต์รายงานข้อมูลการใช้ประโยชน์จาก

abstract boolean shouldShutdownOnCmdfileError()

แสดงค่า "จริง" หากเราต้องปิดเครื่องจัดตารางเวลาเมื่อมีข้อผิดพลาดด้านคำสั่ง

abstract void shutdown()

ลองปิดเครื่องจัดตารางเวลาคำสั่งอย่างระมัดระวัง

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)

หยุดการเรียกใช้ที่ทำงานอยู่

วิธีการสาธารณะ

เพิ่มคำสั่ง

public abstract boolean addCommand (String[] args)

เพิ่มคำสั่งลงในเครื่องจัดตารางเวลา

โดยพื้นฐานแล้ว คำสั่งเป็นอินสแตนซ์ของการกำหนดค่าที่จะเรียกใช้และอาร์กิวเมนต์ที่เกี่ยวข้อง

หาก "--help" มีการระบุข้อความช่วยเหลือสำหรับ การกำหนดค่าจะเอาต์พุตเป็น stdout ไม่เช่นนั้น ระบบจะเพิ่มการกำหนดค่าลงในคิวเพื่อ วิ่งได้

พารามิเตอร์
args String: อาร์กิวเมนต์ config

คิกรีเทิร์น
boolean true หากเพิ่มคำสั่งเรียบร้อยแล้ว

การขว้าง
ConfigurationException หากแยกวิเคราะห์คำสั่งไม่ได้

เพิ่มคำสั่งไฟล์

public abstract void addCommandFile (String cmdFile, 
                 extraArgs)

เพิ่มคำสั่งทั้งหมดจากไฟล์ที่ระบุลงในเครื่องจัดตารางเวลา

พารามิเตอร์
cmdFile String: เส้นทางระบบไฟล์ของไฟล์คำสั่ง

extraArgs : ERROR(/List) จาก String อาร์กิวเมนต์ที่จะต่อท้ายแต่ละคำสั่งที่แยกวิเคราะห์แล้ว จากไฟล์ เว้นว่างได้แต่ไม่ควรเป็นค่าว่าง

การขว้าง
ConfigurationException หากแยกวิเคราะห์ไฟล์คำสั่งไม่ได้

ดูเพิ่มเติม

รอ

public abstract void await ()

รอให้เครื่องจัดตารางเวลาเริ่มทำงาน รวมถึงรอการส่งมอบจาก TF เก่าให้เสร็จสมบูรณ์ หากมี

แฮนด์โอเวอร์ที่สมบูรณ์

public abstract void completeHandover ()

แจ้งเครื่องจัดตารางเวลาคำสั่งว่าลำดับการส่งมอบที่เริ่มต้นดำเนินการเสร็จสมบูรณ์แล้ว และ ควรเริ่มต้นเครื่องมือจัดการระยะไกลอีกครั้งบนพอร์ตเริ่มต้น

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 ที่จะถ่ายโอน หากเป็นค่าว่าง ระบบจะส่งออกคำสั่งทั้งหมด

คำสั่ง

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

จัดสรรอุปกรณ์และเรียกใช้คำสั่งโดยตรงโดยไม่ต้องเพิ่มลงในคิวคำสั่ง โดยใช้ IInvocationContext ที่มีอยู่แล้ว

พารามิเตอร์
context IInvocationContext: IInvocationContext ที่มีอยู่แล้ว

listener ICommandScheduler.IScheduledInvocationListener: ICommandScheduler.IScheduledInvocationListener ที่จะได้รับข้อมูล

args String: อาร์กิวเมนต์คำสั่ง

การขว้าง
ConfigurationException หากคำสั่งไม่ถูกต้อง
NoDeviceException หากไม่มีอุปกรณ์ที่จะใช้

คำสั่ง

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

จัดสรรอุปกรณ์และเรียกใช้คำสั่งโดยตรงโดยไม่ต้องเพิ่มลงในคิวคำสั่ง

พารามิเตอร์
listener ICommandScheduler.IScheduledInvocationListener: ICommandScheduler.IScheduledInvocationListener ที่จะได้รับข้อมูล

args String: อาร์กิวเมนต์คำสั่ง

การขว้าง
ConfigurationException หากคำสั่งไม่ถูกต้อง
NoDeviceException หากไม่มีอุปกรณ์ที่จะใช้

คำสั่ง

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

เรียกใช้คำสั่งโดยตรงในอุปกรณ์ที่จัดสรรแล้ว

พารามิเตอร์
listener ICommandScheduler.IScheduledInvocationListener: ICommandScheduler.IScheduledInvocationListener ที่จะได้รับข้อมูล

device ITestDevice: ITestDevice ที่จะใช้

args String: อาร์กิวเมนต์คำสั่ง

การขว้าง
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

จำนวนคำสั่ง get Ready

public abstract int getReadyCommandCount ()

แสดงผลจำนวนคำสั่งในสถานะพร้อมในคิว

คิกรีเทิร์น
int

การเริ่มต้นการส่งมอบเสร็จสมบูรณ์

public abstract void handoverInitiationComplete ()

แจ้งเครื่องจัดตารางเวลาคำสั่งว่าส่งการแลกเปลี่ยนอุปกรณ์และคำสั่งที่ใช้งานอยู่ครั้งแรก เสร็จสมบูรณ์ และสามารถเริ่มกำหนดเวลาการดำเนินการ

การปิดการส่งมอบ

public abstract boolean handoverShutdown (int handoverPort)

เริ่มต้น shutdown() และส่งไปยังกระบวนการอื่นที่มีการแลกเปลี่ยนในโฮสต์เดียวกันนี้

เครื่องจัดตารางเวลาจะแจ้งกระบวนการที่แลกเปลี่ยนจากระยะไกลให้ฟังในพอร์ตของอุปกรณ์ที่ว่างอยู่ เมื่อพร้อมให้บริการ

พารามิเตอร์
handoverPort int

คิกรีเทิร์น
boolean true หากการเริ่มต้นส่งมอบสำเร็จ false หรือไม่เช่นนั้น

เข้าร่วม

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

ifShutdownOnCmdfileError

public abstract boolean shouldShutdownOnCmdfileError ()

แสดงค่า "จริง" หากเราต้องปิดเครื่องจัดตารางเวลาเมื่อมีข้อผิดพลาดด้านคำสั่ง

คิกรีเทิร์น
boolean

ปิดเครื่อง

public abstract void shutdown ()

ลองปิดเครื่องจัดตารางเวลาคำสั่งอย่างระมัดระวัง

ล้างคำสั่งที่รอทดสอบอยู่ และคำขอที่คำขอทั้งหมดกำลังดำเนินการอยู่ ปิดลงอย่างสง่างาม

หลังจากเรียกใช้การปิดระบบ ลูปหลักของเครื่องจัดตารางเวลาจะรอการเรียกใช้ทั้งหมดที่อยู่ระหว่างดำเนินการ ที่จะทำให้เสร็จก่อนที่จะออก โดยสมบูรณ์

ปิดฮาร์ดแวร์

public abstract void shutdownHard (boolean killAdb)

พยายามบังคับให้เครื่องจัดตารางเวลาคำสั่งปิดระบบอย่างแรง

คล้ายกับ shutdown() แต่เลือกที่จะหยุดการเชื่อมต่อ adb ด้วย พยายามที่จะ "สร้างแรงบันดาลใจ" คำขอที่อยู่ระหว่างดำเนินการเพื่อให้ดำเนินการเสร็จสมบูรณ์ได้เร็วขึ้น

พารามิเตอร์
killAdb boolean

ปิดฮาร์ดแวร์

public abstract void shutdownHard ()

พยายามบังคับให้เครื่องจัดตารางเวลาคำสั่งปิดระบบอย่างแรง เหมือนกับ DisableHard(true)

ปิดการทำงานเมื่อว่างเปล่า

public abstract void shutdownOnEmpty ()

คล้ายกับ shutdown() แต่จะรอให้มีการเรียกใช้คำสั่งทั้งหมดแทน ก่อนที่จะออก

โปรดทราบว่าหากมีคำสั่งใดๆ อยู่ในโหมดวนซ้ำ เครื่องจัดตารางเวลาจะไม่ออกโดยเด็ดขาด

เริ่มต้น

public abstract void start ()

เริ่มใช้งาน ICommandScheduler

ต้องเรียกใช้ก่อนเรียกใช้วิธีการอื่นๆ

จะทำงานจนกว่าจะมีการเรียกใช้ shutdown() ดูThread.start()

การเรียกใช้การหยุด

public abstract boolean stopInvocation (int invocationId, 
                String cause)

หยุดการเรียกใช้ที่ทำงานอยู่โดยการระบุรหัส

พารามิเตอร์
invocationId int: รหัสติดตามของการเรียกใช้

cause String: สาเหตุของการหยุดการเรียกใช้

คิกรีเทิร์น
boolean true หากการเรียกใช้หยุดลง เป็น false หากไม่เป็นเช่นนั้น

การขว้าง
UnsupportedOperationException หากการใช้งานไม่รองรับ

การเรียกใช้การหยุด

public boolean stopInvocation (int invocationId)

หยุดการเรียกใช้ที่ทำงานอยู่โดยการระบุรหัส

พารามิเตอร์
invocationId int

คิกรีเทิร์น
boolean true หากการเรียกใช้หยุดลง เป็น false หากไม่เป็นเช่นนั้น

การขว้าง
UnsupportedOperationException หากการใช้งานไม่รองรับ

การเรียกใช้การหยุด

public abstract boolean stopInvocation (ITestInvocation invocation)

หยุดการเรียกใช้ที่ทำงานอยู่

พารามิเตอร์
invocation ITestInvocation

คิกรีเทิร์น
boolean true หากการเรียกใช้หยุดลง เป็น false หากไม่เป็นเช่นนั้น

การขว้าง
UnsupportedOperationException หากการใช้งานไม่รองรับ