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)

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

Process runCmdInBackground( command)

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

Process runCmdInBackground( command, OutputStream output)

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

Process runCmdInBackground(String... command)

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

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)

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

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

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

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

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

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

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

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

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

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

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

CommandResult runTimedCmdRetryWithOutputMonitor(long timeout, long idleOutputTimeout, 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, String... command)

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

CommandResult runTimedCmdWithInput(long timeout, String input, command)

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

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

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

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

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

CommandResult runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, String... command)

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

CommandResult runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, ICacheClient cacheClient, String... command)

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

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

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

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

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

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

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

void setEnvVariable(String name, String value)

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

void setEnvVariablePriority(IRunUtil.EnvPriority priority)

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

void setInterruptibleInFuture(Thread thread, long timeMs)

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

void setLinuxInterruptProcess(boolean interrupt)

אפשר להשתמש בהפרעה מסוג linux 'kill' בתהליך הרצה באמצעות שיטות #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 חדש לשימוש.

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

AllowInterrupt

public void allowInterrupt (boolean allow)

מאפשר או לא מאפשר להריץ הפרעות בשרשור הנוכחי. אם ההגדרה מופעלת, פעולות ההרצה של השרשור הנוכחי יפריעו לשרשורים אחרים באמצעות method 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 true אם ניתן להפסיק את ההפעלה, אחרת false.

runCmdInBackground

public Process runCmdInBackground (Redirect redirect, 
                 command)

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

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

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

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

runCmdInBackground

public Process runCmdInBackground ( command)

רכיב method חלופי של 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 (String... command)

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

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

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

החזרות
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: זמן המתנה מקסימלי באלפיות השנייה עבור ניסיון פעולה אחד

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: זמן המתנה מקסימלי באלפיות השנייה עבור ניסיון פעולה אחד

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

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

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult להפעלה

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

runFixedTimedRetryWithOutputMonitor

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

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

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

idleOutputTimeout long: זמן מקסימלי להמתנה באלפיות השנייה לפלט של שידורי הפלט

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

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

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult להפעלה

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

זמן ריצה

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

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

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

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult להפעלה

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

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

runTimedCmd

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

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

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

stdout OutputStream: ERROR(/OutputStream) שאליו יופנה פלט ה-std. הערך יכול להיות null.

stderr OutputStream: ERROR(/OutputStream) שאליו יופנה פלט השגיאה. הערך יכול להיות null.

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

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

runTimedCmd

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

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

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

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

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

runTimedCmdRetry

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

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

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

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

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

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

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

runTimedCmdRetryWithOutputMonitor

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

שיטה לעזרה בהרצת פקודת מערכת, ולבטל אם התהליך נמשך יותר זמן מזמן מסוים. בנוסף, מתבצע מעקב אחר שידורי הפלט של הפעילות, תוך ביטול אם לא נצפתה פעילות סטרימינג במשך פרק זמן מסוים. אם ערך הזמן הקצוב לתפוגה שהוגדר ל-{/7}OutputTimeout הוא אפס, לא יתבצע מעקב אחר הסטרימינג.

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

idleOutputTimeout long: זמן מקסימלי להמתנה באלפיות השנייה לפלט של שידורי הפלט

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

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

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

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

runTimedCmdSilently

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

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

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

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

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

runTimedCmdSilentlyRetry

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

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

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

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

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

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

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

runTimedCmdWithInput

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

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

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

input String: קלט ה-stdin להעברה לעיבוד

stdoutFile File: ERROR(/File) שאליו יופנה פלט ה-std. הערך יכול להיות null.

stderrFile File: ERROR(/File) שאליו יופנה פלט השגיאה. הערך יכול להיות null.

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

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

runTimedCmdWithInput

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

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

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

input String: קלט ה-stdin להעברה לעיבוד

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

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

runTimedCmdWithInput

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

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

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

input String: קלט ה-stdin להעברה לעיבוד

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

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

runTimedCmdWithInputRedirect

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

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

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

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

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

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

runTimedCmdWithOutputMonitor

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

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

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

idleOutputTimeout long: זמן מקסימלי להמתנה באלפיות השנייה לפלט של שידורי הפלט

stdout OutputStream: ERROR(/OutputStream) שאליו יופנה פלט ה-std. הערך יכול להיות null.

stderr OutputStream: ERROR(/OutputStream) שאליו יופנה פלט השגיאה. הערך יכול להיות null.

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

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

runTimedCmdWithOutputMonitor

public CommandResult runTimedCmdWithOutputMonitor (long timeout, 
                long idleOutputTimeout, 
                String... command)

שיטה לעזרה בהרצת פקודת מערכת, ולבטל אם התהליך נמשך יותר זמן מזמן מסוים. בנוסף, מתבצע מעקב אחר שידורי הפלט של הפעילות, תוך ביטול אם לא נצפתה פעילות סטרימינג במשך פרק זמן מסוים. אם ערך הזמן הקצוב לתפוגה שהוגדר ל-{/7}OutputTimeout הוא אפס, לא יתבצע מעקב אחר הסטרימינג.

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

idleOutputTimeout long: זמן מקסימלי להמתנה באלפיות השנייה לפלט של שידורי הפלט

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

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

runTimedCmdWithOutputMonitor

public CommandResult runTimedCmdWithOutputMonitor (long timeout, 
                long idleOutputTimeout, 
                OutputStream stdout, 
                OutputStream stderr, 
                ICacheClient cacheClient, 
                String... command)

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

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

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

idleOutputTimeout long: משך הזמן המקסימלי להמתנה באלפיות השנייה לפלט של שידורי הפלט.

stdout OutputStream: ERROR(/OutputStream) שאליו יופנה פלט ה-std. הערך יכול להיות null.

stderr OutputStream: ERROR(/OutputStream) שאליו יופנה פלט השגיאה. הערך יכול להיות null.

cacheClient ICacheClient: מכונה של ICacheClient שמשמשת לטיפול בשמירה במטמון.

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

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

runTimedRetry

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

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

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

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

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

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult להפעלה

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

runTimedRetryWithOutputMonitor

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

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

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

idleOutputTimeout long: זמן מקסימלי להמתנה באלפיות השנייה לפלט של שידורי הפלט

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

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

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult להפעלה

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

runTimedWithOutputMonitor

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

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

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

idleOutputTimeout long: זמן מקסימלי להמתנה באלפיות השנייה לפלט של שידורי הפלט

runnable IRunUtil.IRunnableResult: IRunUtil.IRunnableResult להפעלה

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

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

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)

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

פרמטרים
interrupt boolean

setRedirectStderrToStdout

public void setRedirectStderrToStdout (boolean redirect)

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

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

setWorkingDir

public void setWorkingDir (File dir)

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

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

שינה

public void sleep (long time)

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

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

לא מוגדרEnvVariable

public void unsetEnvVariable (String key)

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

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

למידע נוסף: