RunUtil

public class RunUtil
extends Object implements IRunUtil

java.lang.Object
com.android.tradefed.util.RunUtil


אוסף שיטות עוזר לביצוע פעולות.

סיכום

שדות

public static final String INHERITIO_PREFIX

public static final String RUNNABLE_NOTIFIER_NAME

בנאים ציבוריים

RunUtil ()

צור אובייקט RunUtil חדש לשימוש.

שיטות ציבוריות

void allowInterrupt (boolean allow)

מאפשר/לא מאפשר פסיקות ריצה בשרשור הנוכחי.

static IRunUtil getDefault ()

קבל הפניה לאובייקט RunUtil ברירת המחדל.

void interrupt (Thread thread, String message, ErrorIdentifier errorId)

קוטע את פעולות הריצה המתמשכות/בקרובות בשרשור הנתון.

void interrupt (Thread thread, String message)

קוטע את פעולות הריצה המתמשכות/בקרובות בשרשור הנתון.

boolean isInterruptAllowed ()

תן את סטטוס ההפסקה של ה-RunUtil.

Process runCmdInBackground (Redirect redirect, command) runCmdInBackground (Redirect redirect, command)

שיטה חלופית runCmdInBackground(String) שמקבלת את ארגומנטי הפקודה בצורת ERROR(/List) .

Process runCmdInBackground (String... command)

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

Process runCmdInBackground ( command) runCmdInBackground ( command)

שיטה חלופית runCmdInBackground(String) שמקבלת את ארגומנטי הפקודה בצורת ERROR(/List) .

Process runCmdInBackground ( command, OutputStream output) runCmdInBackground ( command, OutputStream output)

הפעלת פקודה עם ERROR(/OutputStream) רישום את הפלט של הפקודה.

Process runCmdInBackground (Redirect redirect, String... command)

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

boolean runEscalatingTimedRetry (long opTimeout, long initialPollInterval, long maxPollInterval, long maxTime, IRunUtil.IRunnableResult runnable)

חסום ומבצע פעולה מספר פעמים עד שהיא מצליחה.

boolean runFixedTimedRetry (long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)

חסום ומבצע פעולה מספר פעמים עד שהיא מצליחה.

CommandStatus runTimed (long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors)

חסום ומבצע פעולה, ביטול אם זה לוקח יותר מזמן מוגדר.

CommandResult runTimedCmd (long timeout, String... command)

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

CommandResult runTimedCmd (long timeout, OutputStream stdout, OutputStream stderr, String... command)

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

CommandResult runTimedCmdRetry (long timeout, long retryInterval, int attempts, String... command)

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

CommandResult runTimedCmdSilently (long timeout, String... command)

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

CommandResult runTimedCmdSilentlyRetry (long timeout, long retryInterval, int attempts, String... command)

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

CommandResult runTimedCmdWithInput (long timeout, String input, File stdoutFile, File stderrFile, String... command)

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

CommandResult runTimedCmdWithInput (long timeout, String input, command) runTimedCmdWithInput (long timeout, String input, command)

שיטת עוזר לביצוע פקודת מערכת הדורשת קלט stdin, וביטול אם זה לוקח יותר מזמן מוגדר.

CommandResult runTimedCmdWithInput (long timeout, String input, String... command)

שיטת עוזר לביצוע פקודת מערכת הדורשת קלט stdin, וביטול אם זה לוקח יותר מזמן מוגדר.

CommandResult runTimedCmdWithInputRedirect (long timeout, File inputRedirect, String... command)

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

boolean runTimedRetry (long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)

חסום ומבצע פעולה מספר פעמים עד שהיא מצליחה.

void setEnvVariable (String name, String value)

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

void setEnvVariablePriority ( IRunUtil.EnvPriority priority)

החלט אם בעת יצירת תהליך, ביטול משתני הסביבה הוא בעדיפות גבוהה יותר מאשר הגדרתם.

void setInterruptibleInFuture (Thread thread, long timeMs)

הגדר כניתנת להפסקה לאחר זמן המתנה.

void setLinuxInterruptProcess (boolean interrupt)

אפשר להשתמש בהפרעה 'להרוג' של לינוקס בתהליך הפועל בשיטות #runTimed כאשר הוא מגיע לפסק זמן.

void setRedirectStderrToStdout (boolean redirect)

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

void setWorkingDir (File dir)

מגדיר את ספריית העבודה עבור פקודות מערכת.

void sleep (long time)

שיטת עוזר לישון במשך זמן נתון, תוך התעלמות מכל חריג.

void unsetEnvVariable (String key)

מבטל הגדרות של משתנה סביבה, כך שפקודות המערכת פועלות ללא משתנה סביבה זה. משתני סביבה עשויים לרשת מתהליך האב, ולכן עלינו למחוק את משתנה הסביבה מ- ProcessBuilder.environment()

שדות

INHERITIO_PREFIX

public static final String INHERITIO_PREFIX

RUNNABLE_NOTIFIER_NAME

public static final String RUNNABLE_NOTIFIER_NAME

בנאים ציבוריים

RunUtil

public RunUtil ()

צור אובייקט RunUtil חדש לשימוש.

שיטות ציבוריות

לאפשר הפרעה

public void allowInterrupt (boolean allow)

מאפשר/לא מאפשר פסיקות ריצה בשרשור הנוכחי. אם זה מותר, ניתן להפסיק את פעולות ההרצה של השרשור הנוכחי משרשורים אחרים באמצעות שיטת interrupt(Thread, String) .

פרמטרים
allow boolean : האם לאפשר הפסקות ריצה בשרשור הנוכחי.

getDefault

public static IRunUtil getDefault ()

קבל הפניה לאובייקט RunUtil ברירת המחדל.

זה שימושי למתקשרים שרוצים להשתמש ב-IRunUtil ללא התאמה אישית. מומלץ למתקשרים שצריכים מופע IRunUtil מותאם אישית (כלומר צריכים לקרוא ל- setEnvVariable(String, String) או setWorkingDir(File) ליצור עותק משלהם.

החזרות
IRunUtil

פסיקת

public void interrupt (Thread thread, 
                String message, 
                ErrorIdentifier errorId)

קוטע את פעולות הריצה המתמשכות/בקרובות בשרשור הנתון. פעולות ההרצה בשרשור הנתון יזרקו RunInterruptedException .

פרמטרים
message String : ההודעה עבור RunInterruptedException .

errorId ErrorIdentifier : מייצג את הגורם להפרעה כאשר ידוע.

פסיקת

public void interrupt (Thread thread, 
                String message)

קוטע את פעולות הריצה המתמשכות/בקרובות בשרשור הנתון. פעולות ההרצה בשרשור הנתון יזרקו RunInterruptedException .

פרמטרים
message String : ההודעה עבור RunInterruptedException .

isInterruptAllowed

public boolean isInterruptAllowed ()

תן את סטטוס ההפסקה של ה-RunUtil.

החזרות
boolean נכון אם ניתן להפריע את הריצה, אחרת לא נכון.

runCmdInBackground

public Process runCmdInBackground (Redirect redirect, 
                 command)

שיטה חלופית runCmdInBackground(String) שמקבלת את ארגומנטי הפקודה בצורת ERROR(/List) .

פרמטרים
redirect Redirect : ERROR(/Redirect) להחלה על ProcessBuilder .

command : ה- ERROR(/List) המכיל פקודת מערכת שצוינה ובאופן אופציונלי ארגומנטים לביצוע

החזרות
Process Process הפקודה שבוצעה

runCmdInBackground

public Process runCmdInBackground (String... command)

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

יחזור מיד לאחר הפעלת הפקודה.

פרמטרים
command String : פקודת המערכת שצוינה ובאופן אופציונלי ארגומנטים לביצוע

החזרות
Process Process הפקודה שבוצעה

runCmdInBackground

public Process runCmdInBackground ( command)

שיטה חלופית runCmdInBackground(String) שמקבלת את ארגומנטי הפקודה בצורת ERROR(/List) .

פרמטרים
command : ה- ERROR(/List) המכיל פקודת מערכת שצוינה ובאופן אופציונלי ארגומנטים לביצוע

החזרות
Process Process הפקודה שבוצעה

runCmdInBackground

public Process runCmdInBackground ( command, 
                OutputStream output)

הפעלת פקודה עם ERROR(/OutputStream) רישום את הפלט של הפקודה. Stdout ו-stderr משולבים יחד.

פרמטרים
command : הפקודה להפעלה

output OutputStream : ה-OutputStream כדי לשמור את הפלט

החזרות
Process Process שמריץ את הפקודה

runCmdInBackground

public Process runCmdInBackground (Redirect redirect, 
                String... command)

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

יחזור מיד לאחר הפעלת הפקודה.

פרמטרים
redirect Redirect : ERROR(/Redirect) להחלה על ProcessBuilder .

command String : פקודת המערכת שצוינה ובאופן אופציונלי ארגומנטים לביצוע

החזרות
Process Process הפקודה שבוצעה

runEscalatingTimedRetry

public boolean runEscalatingTimedRetry (long opTimeout, 
                long initialPollInterval, 
                long maxPollInterval, 
                long maxTime, 
                IRunUtil.IRunnableResult runnable)

חסום ומבצע פעולה מספר פעמים עד שהיא מצליחה.

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

פרמטרים
opTimeout long : זמן מקסימלי להמתנה ב-ms לניסיון פעולה בודד

initialPollInterval long : זמן המתנה ראשוני בין ניסיונות הפעולה

maxPollInterval long : הזמן המקסימלי להמתנה בין ניסיונות הפעולה

maxTime long : הזמן המקסימלי הכולל המשוער כדי להמשיך לנסות את הפעולה

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult לביצוע

החזרות
boolean true אם הפעולה הושלמה בהצלחה לפני שפג תוקפו של maxTime

runFixedTimedRetry

public boolean runFixedTimedRetry (long opTimeout, 
                long pollInterval, 
                long maxTime, 
                IRunUtil.IRunnableResult runnable)

חסום ומבצע פעולה מספר פעמים עד שהיא מצליחה.

פרמטרים
opTimeout long : זמן מקסימלי להמתנה ב-ms לניסיון פעולה בודד

pollInterval long : זמן המתנה ראשוני בין ניסיונות הפעולה

maxTime long : הזמן המקסימלי הכולל המשוער כדי להמשיך לנסות את הפעולה

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult לביצוע

החזרות
boolean true אם הפעולה הושלמה בהצלחה לפני שפג תוקפו של maxTime

זמן ריצה

public CommandStatus runTimed (long timeout, 
                IRunUtil.IRunnableResult runnable, 
                boolean logErrors)

חסום ומבצע פעולה, ביטול אם זה לוקח יותר מזמן מוגדר.

פרמטרים
timeout long : זמן המתנה מקסימלי ב-ms

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult לביצוע

logErrors boolean : יומן שגיאות על חריגה או לא.

החזרות
CommandStatus תוצאת CommandStatus של הפעולה.

runTimedCmd

public CommandResult runTimedCmd (long timeout, 
                String... command)

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

פרמטרים
timeout long : זמן המתנה מקסימלי ב-ms. 0 פירושו שאין פסק זמן.

command String : פקודת המערכת שצוינה ובאופן אופציונלי ארגומנטים לביצוע

החזרות
CommandResult CommandResult המכילה תוצאה מהרצת הפקודה

runTimedCmd

public CommandResult runTimedCmd (long timeout, 
                OutputStream stdout, 
                OutputStream stderr, 
                String... command)

שיטת עוזר לביצוע פקודת מערכת, לבטל אם זה לוקח יותר מזמן מוגדר ולהפנות פלט לקבצים אם צוין. כאשר ERROR(/OutputStream) מסופקים בדרך זו, הם יישארו פתוחים בסוף הפונקציה.

פרמטרים
timeout long : זמן קצוב מרבי להמתנה ב-ms. 0 פירושו שאין פסק זמן.

stdout OutputStream : ERROR(/OutputStream) שבו הפלט std יופנה מחדש. יכול להיות ריק.

stderr OutputStream : ERROR(/OutputStream) שבו פלט השגיאה יופנה מחדש. יכול להיות ריק.

command String : פקודת המערכת שצוינה ובאופן אופציונלי ארגומנטים לביצוע

החזרות
CommandResult CommandResult המכילה תוצאה מהרצת הפקודה

runTimedCmdRetry

public CommandResult runTimedCmdRetry (long timeout, 
                long retryInterval, 
                int attempts, 
                String... command)

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

פרמטרים
timeout long : זמן המתנה מקסימלי ב-ms לכל ניסיון

retryInterval long : זמן המתנה בין ניסיונות חוזרים של פקודה

attempts int : המספר המרבי של ניסיונות לנסות

command String : פקודת המערכת שצוינה ובאופן אופציונלי ארגומנטים לביצוע

החזרות
CommandResult CommandResult המכילה תוצאה מהרצת הפקודה

runTimedCmdSilently

public CommandResult runTimedCmdSilently (long timeout, 
                String... command)

שיטת עוזר לביצוע פקודת מערכת, וביטול אם זה לוקח יותר מזמן מוגדר. דומה ל- runTimedCmd(long, String) , אך אינו רושם שגיאות על חריגה.

פרמטרים
timeout long : זמן המתנה מקסימלי ב-ms

command String : פקודת המערכת שצוינה ובאופן אופציונלי ארגומנטים לביצוע

החזרות
CommandResult CommandResult המכילה תוצאה מהרצת הפקודה

runTimedCmdSilently נסה שוב

public CommandResult runTimedCmdSilentlyRetry (long timeout, 
                long retryInterval, 
                int attempts, 
                String... command)

שיטת עוזר לביצוע פקודת מערכת, וביטול אם זה לוקח יותר מזמן מוגדר. דומה ל- runTimedCmdRetry(long, long, int, String[]) , אך אינו רושם שגיאות על חריגה.

פרמטרים
timeout long : זמן המתנה מקסימלי ב-ms

retryInterval long : זמן המתנה בין ניסיונות חוזרים של פקודה

attempts int : המספר המרבי של ניסיונות לנסות

command String : פקודת המערכת שצוינה ובאופן אופציונלי ארגומנטים לביצוע

החזרות
CommandResult CommandResult המכילה תוצאה מהרצת הפקודה

runTimedCmdWithInput

public CommandResult runTimedCmdWithInput (long timeout, 
                String input, 
                File stdoutFile, 
                File stderrFile, 
                String... command)

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

פרמטרים
timeout long : זמן קצוב מרבי להמתנה ב-ms. 0 פירושו שאין פסק זמן.

input String : קלט הסטדין שיעבור לתהליך

stdoutFile File : ERROR(/File) שבו הפלט STD יופנה מחדש. יכול להיות ריק.

stderrFile File : ERROR(/File) שבו פלט השגיאה ינותב מחדש. יכול להיות ריק.

command String : פקודת המערכת שצוינה ובאופן אופציונלי ארגומנטים לביצוע

החזרות
CommandResult CommandResult המכילה תוצאה מהרצת הפקודה

runTimedCmdWithInput

public CommandResult runTimedCmdWithInput (long timeout, 
                String input, 
                 command)

שיטת עוזר לביצוע פקודת מערכת הדורשת קלט stdin, וביטול אם זה לוקח יותר מזמן מוגדר.

פרמטרים
timeout long : זמן המתנה מקסימלי ב-ms

input String : קלט הסטדין שיעבור לתהליך

command : ERROR(/List) המכילה את פקודת המערכת ובאופן אופציונלי ארגומנטים לביצוע

החזרות
CommandResult CommandResult המכילה תוצאה מהרצת הפקודה

runTimedCmdWithInput

public CommandResult runTimedCmdWithInput (long timeout, 
                String input, 
                String... command)

שיטת עוזר לביצוע פקודת מערכת הדורשת קלט stdin, וביטול אם זה לוקח יותר מזמן מוגדר.

פרמטרים
timeout long : זמן המתנה מקסימלי ב-ms

input String : קלט הסטדין שיעבור לתהליך

command String : פקודת המערכת שצוינה ובאופן אופציונלי ארגומנטים לביצוע

החזרות
CommandResult CommandResult המכילה תוצאה מהרצת הפקודה

runTimedCmdWithInputRedirect

public CommandResult runTimedCmdWithInputRedirect (long timeout, 
                File inputRedirect, 
                String... command)

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

פרמטרים
timeout long : זמן המתנה מקסימלי ב-ms

inputRedirect File : ה- ERROR(/File) לניתוב מחדש כקלט סטנדרטי באמצעות ProcessBuilder.redirectInput() . אם null, stdin לא יופנה מחדש.

command String : פקודת המערכת שצוינה ובאופן אופציונלי ארגומנטים לביצוע

החזרות
CommandResult CommandResult המכילה תוצאה מהרצת הפקודה

runTimedRetry

public boolean runTimedRetry (long opTimeout, 
                long pollInterval, 
                int attempts, 
                IRunUtil.IRunnableResult runnable)

חסום ומבצע פעולה מספר פעמים עד שהיא מצליחה.

פרמטרים
opTimeout long : זמן מקסימלי להמתנה ב-ms לניסיון פעולה אחד

pollInterval long : זמן המתנה בין ניסיונות חוזרים של פקודה

attempts int : המספר המרבי של ניסיונות לנסות

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult לביצוע

החזרות
boolean true אם הפעולה הושלמה בהצלחה לפני שהושגו ניסיונות.

setEnvVariable

public void setEnvVariable (String name, 
                String value)

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

פרמטרים
name String : שם המשתנה

value String : ערך המשתנה

setEnvVariablePriority

public void setEnvVariablePriority (IRunUtil.EnvPriority priority)

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

פרמטרים
priority IRunUtil.EnvPriority

setInterruptibleInFuture

public void setInterruptibleInFuture (Thread thread, 
                long timeMs)

הגדר כניתנת להפסקה לאחר זמן המתנה. ERROR(/CommandScheduler#shutdownHard()) כדי לאכוף אנו מפסיקים בסופו של דבר.

פרמטרים
thread Thread : השרשור שיהפוך לניתוק.

timeMs long : זמן המתנה לפני הגדרת ניתוק.

setLinuxInterruptProcess

public void setLinuxInterruptProcess (boolean interrupt)

אפשר להשתמש בהפרעה 'להרוג' של לינוקס בתהליך הפועל בשיטות #runTimed כאשר הוא מגיע לפסק זמן. לא ניתן להשתמש במופע ברירת המחדל של IRunUtil .

פרמטרים
interrupt boolean

setRedirectStderrToStdout

public void setRedirectStderrToStdout (boolean redirect)

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

פרמטרים
redirect boolean : ערך חדש עבור הפנייה מחדש או לא

setWorkingDir

public void setWorkingDir (File dir)

מגדיר את ספריית העבודה עבור פקודות מערכת.

פרמטרים
dir File : ספריית העבודה

לִישׁוֹן

public void sleep (long time)

שיטת עוזר לישון במשך זמן נתון, תוך התעלמות מכל חריג.

פרמטרים
time long : MS לישון. תתעלם מערכים שווים או קטנים מ-0

unsetEnvVariable

public void unsetEnvVariable (String key)

מבטל הגדרות של משתנה סביבה, כך שפקודות המערכת פועלות ללא משתנה סביבה זה. משתני סביבה עשויים לרשת מתהליך האב, ולכן עלינו למחוק את משתנה הסביבה מ- ProcessBuilder.environment()

פרמטרים
key String : שם המשתנה