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

ממתינים שהמתזמן יתחיל לפעול, כולל המתנה להשלמת ההעברה מ-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)

יצירת גרסת dump של קובץ ה-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()

אחזור של ה-CommandFileWatcher המתאים לתזמון הזה

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 אם לא ניתן לנתח את הפקודה

addCommandFile

public abstract void addCommandFile (String cmdFile, 
                 extraArgs)

הוספת כל הפקודות מהקובץ הנתון לתזמון

פרמטרים
cmdFile String: הנתיב של קובץ הפקודה במערכת הקבצים

extraArgs : ERROR(/List) של ארגומנטים מסוג String שצריך לצרף לכל פקודה שמנותחת מהקובץ. השדה יכול להיות ריק, אבל לא יכול להיות null.

זריקות
ConfigurationException אם לא ניתן לנתח את קובץ הפקודות

מידע נוסף:

await

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)

יצירת גרסת dump של קובץ ה-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

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

ניסיון להשבית את מתזמן הפקודות בצורה תקינה.

הפקודה מנקה את הפקודות שממתינות לבדיקה ומבקשת שכל ההפעלות בתהליך ייסגרו בצורה תקינה.

אחרי הקריאה ל-shutdown, הלולאה הראשית של מתזמן האירועים תמתין עד להשלמת כל ההפעלות שנמצאות בתהליך, לפני שהיא תצא לגמרי.

כיבוי

public abstract void shutdown (boolean notifyStop)

ניסיון להשבית את מתזמן הפקודות בצורה תקינה.

פרמטרים
notifyStop boolean: אם הערך הוא true, מתקבלת התראה על הפעלות של כיבוי 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 true אם הקריאה הופסקה, false אחרת

זריקות
UnsupportedOperationException אם ההטמעה לא תומכת בכך

stopInvocation

public boolean stopInvocation (int invocationId)

כדי להפסיק קריאה שפועלת, מציינים את המזהה שלה.

פרמטרים
invocationId int

החזרות
boolean true אם הקריאה הופסקה, false אחרת

זריקות
UnsupportedOperationException אם ההטמעה לא תומכת בכך

stopInvocation

public abstract boolean stopInvocation (ITestInvocation invocation)

איך מפסיקים קריאה שפועלת.

פרמטרים
invocation ITestInvocation

החזרות
boolean true אם הקריאה הופסקה, false אחרת

זריקות
UnsupportedOperationException אם ההטמעה לא תומכת בכך

stopScheduling

public void stopScheduling ()

המערכת מפסיקה לתזמן ולקבל בדיקות חדשות, אבל Tradefed לא מופסק. המטרה היא לאפשר השבתה בשני שלבים, שבהם קודם מבטלים את כל הבדיקות שפועלות ואז מבטלים את תהליך Tradefed.