RunUtil
public
class
RunUtil
extends Object
implements
IRunUtil
java.lang.Object | |
↳ | com.android.tradefed.util.RunUtil |
Kumpulan metode bantuan untuk menjalankan operasi.
Ringkasan
Kolom | |
---|---|
public
static
final
String |
INHERITIO_PREFIX
|
public
static
final
String |
RUNNABLE_NOTIFIER_NAME
|
Konstruktor publik | |
---|---|
RunUtil()
Buat objek |
|
RunUtil(boolean inheritEnvVars)
|
Metode publik | |
---|---|
void
|
allowInterrupt(boolean allow)
Mengizinkan/melarang interupsi yang berjalan di thread saat ini. |
ProcessBuilder
|
createProcessBuilder(Redirect redirect,
|
static
IRunUtil
|
getDefault()
Dapatkan referensi ke objek |
void
|
interrupt(Thread thread, String message, ErrorIdentifier errorId)
Mengganggu operasi run yang sedang berlangsung/mendatang pada thread tertentu. |
void
|
interrupt(Thread thread, String message)
Mengganggu operasi run yang sedang berlangsung/mendatang pada thread tertentu. |
boolean
|
isInterruptAllowed()
Memberikan status interupsi RunUtil. |
static
File
|
linkFile(File destRoot, String relToRoot, File target)
Menautkan |
Process
|
runCmdInBackground(Redirect redirect,
Metode |
Process
|
runCmdInBackground(
Metode |
Process
|
runCmdInBackground(
Menjalankan perintah dengan |
Process
|
runCmdInBackground(String... command)
Metode bantuan untuk mengeksekusi perintah sistem secara asinkron. |
Process
|
runCmdInBackground(Redirect redirect, String... command)
Metode bantuan untuk mengeksekusi perintah sistem secara asinkron. |
boolean
|
runEscalatingTimedRetry(long opTimeout, long initialPollInterval, long maxPollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Memblokir dan mengeksekusi operasi beberapa kali hingga berhasil. |
boolean
|
runFixedTimedRetry(long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Memblokir dan mengeksekusi operasi beberapa kali hingga berhasil. |
boolean
|
runFixedTimedRetryWithOutputMonitor(long opTimeout, long idleOutputTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Memblokir dan mengeksekusi operasi beberapa kali hingga berhasil. |
CommandStatus
|
runTimed(long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Memblokir dan menjalankan operasi, membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan. |
CommandResult
|
runTimedCmd(long timeout, OutputStream stdout, OutputStream stderr, String... command)
Metode helper untuk mengeksekusi perintah sistem, membatalkan jika memakan waktu lebih dari waktu yang ditentukan, dan mengalihkan output ke file jika ditentukan. |
CommandResult
|
runTimedCmd(long timeout, String... command)
Metode helper untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan. |
CommandResult
|
runTimedCmdRetry(long timeout, long retryInterval, int attempts, String... command)
Metode helper untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan. |
CommandResult
|
runTimedCmdRetryWithOutputMonitor(long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)
Metode helper untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan. |
CommandResult
|
runTimedCmdSilently(long timeout, String... command)
Metode helper untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan. |
CommandResult
|
runTimedCmdSilentlyRetry(long timeout, long retryInterval, int attempts, String... command)
Metode helper untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input, File stdoutFile, File stderrFile, String... command)
Metode bantuan untuk mengeksekusi perintah sistem, membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan, dan mengalihkan output ke file jika ditentukan. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input, String... command)
Metode helper untuk mengeksekusi perintah sistem yang memerlukan input stdin, dan membatalkannya jika memerlukan waktu lebih dari waktu yang ditentukan. |
CommandResult
|
runTimedCmdWithInput(long timeout, String input,
Metode bantuan untuk menjalankan perintah sistem yang memerlukan input stdin, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan. |
CommandResult
|
runTimedCmdWithInputRedirect(long timeout, File inputRedirect, String... command)
Metode helper untuk mengeksekusi perintah sistem yang memerlukan pengalihan Stdin dari file, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan. |
CommandResult
|
runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)
Metode helper untuk mengeksekusi perintah sistem, membatalkan jika memakan waktu lebih dari waktu yang ditentukan, dan mengalihkan output ke file jika ditentukan. |
CommandResult
|
runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, String... command)
Metode helper untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan. |
CommandResult
|
runTimedCmdWithOutputMonitor(long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, ICacheClient cacheClient, String... command)
Metode helper untuk menjalankan perintah sistem dengan caching. |
boolean
|
runTimedRetry(long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Memblokir dan mengeksekusi operasi beberapa kali hingga berhasil. |
boolean
|
runTimedRetryWithOutputMonitor(long opTimeout, long idleOutputTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Memblokir dan mengeksekusi operasi beberapa kali hingga berhasil. |
CommandStatus
|
runTimedWithOutputMonitor(long timeout, long idleOutputTimeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Memblokir dan menjalankan operasi, dan membatalkannya jika memakan waktu lebih dari waktu yang ditentukan. |
void
|
setEnvVariable(String name, String value)
Menetapkan variabel lingkungan yang akan digunakan saat menjalankan perintah sistem. |
void
|
setEnvVariablePriority(IRunUtil.EnvPriority priority)
Tentukan apakah saat membuat proses, menghapus penetapan variabel lingkungan memiliki prioritas yang lebih tinggi daripada menetapkannya. |
void
|
setInterruptibleInFuture(Thread thread, long timeMs)
Tetapkan sebagai dapat diganggu setelah beberapa waktu tunggu. |
void
|
setLinuxInterruptProcess(boolean interrupt)
Mengizinkan penggunaan gangguan 'kill' linux pada proses yang berjalan melalui metode #runTimed saat mencapai waktu tunggu. |
void
|
setRedirectStderrToStdout(boolean redirect)
Tetapkan aliran error standar untuk dialihkan ke aliran output standar saat menjalankan perintah sistem. |
void
|
setWorkingDir(File dir)
Menetapkan direktori kerja untuk perintah sistem. |
void
|
sleep(long time)
Metode helper untuk tidur selama waktu tertentu, mengabaikan pengecualian apa pun. |
static
String
|
toRelative(File start, File target)
|
static
String
|
toRelative(File start, String target)
|
void
|
unsetEnvVariable(String key)
Membatalkan penetapan variabel lingkungan, sehingga perintah sistem berjalan tanpa variabel lingkungan ini.
Variabel lingkungan dapat diwarisi dari proses induk, jadi kita perlu menghapus
variabel lingkungan dari |
void
|
uploadCache(ICacheClient cacheClient, ExecutableActionResult actionResult)
Mengupload |
Kolom
INHERITIO_PREFIX
public static final String INHERITIO_PREFIX
{i>RUNNABLE_NOTIFIER_NAME<i}
public static final String RUNNABLE_NOTIFIER_NAME
Konstruktor publik
RunUtil
public RunUtil (boolean inheritEnvVars)
Parameter | |
---|---|
inheritEnvVars |
boolean |
Metode publik
allowInterrupt
public void allowInterrupt (boolean allow)
Mengizinkan/melarang interupsi operasi pada thread saat ini. Jika diizinkan, operasi jalankan
thread saat ini dapat terganggu dari thread lain melalui metode interrupt(Thread, String)
.
Parameter | |
---|---|
allow |
boolean : apakah akan mengizinkan gangguan operasi pada thread saat ini. |
createProcessBuilder
public ProcessBuilder createProcessBuilder (Redirect redirect,commandList, boolean enableCache)
Parameter | |
---|---|
redirect |
Redirect |
commandList |
|
enableCache |
boolean |
Hasil | |
---|---|
ProcessBuilder |
getDefault
public static IRunUtil getDefault ()
Dapatkan referensi ke objek RunUtil
default.
Hal ini berguna untuk pemanggil yang ingin menggunakan IRunUtil tanpa penyesuaian.
Sebaiknya pemanggil yang memerlukan instance IRunUtil kustom
(yaitu perlu memanggil setEnvVariable(String, String)
atau
setWorkingDir(File)
membuat salinannya sendiri.
Hasil | |
---|---|
IRunUtil |
mengganggu
public void interrupt (Thread thread, String message, ErrorIdentifier errorId)
Mengganggu operasi run yang sedang berlangsung/mendatang pada thread tertentu. Operasi yang dijalankan pada
thread tertentu akan menampilkan RunInterruptedException
.
Parameter | |
---|---|
message |
String : pesan untuk RunInterruptedException . |
errorId |
ErrorIdentifier : Mewakili penyebab gangguan jika diketahui. |
mengganggu
public void interrupt (Thread thread, String message)
Mengganggu operasi run yang sedang berlangsung/mendatang pada thread tertentu. Operasi yang dijalankan pada
thread tertentu akan menampilkan RunInterruptedException
.
Parameter | |
---|---|
message |
String : pesan untuk RunInterruptedException . |
isInterruptAllowed
public boolean isInterruptAllowed ()
Berikan status interupsi RunUtil.
Hasil | |
---|---|
boolean |
true jika Run dapat terganggu, false jika tidak. |
linkFile
public static File linkFile (File destRoot, String relToRoot, File target)
Menautkan target
ke tempat di bagian destRoot
.
Jika file target atau symlink sudah ada di destRoot
, file tersebut
tidak akan ditautkan.
Parameter | |
---|---|
destRoot |
File : Root tujuan. |
relToRoot |
String : Jalur relatif dari direktori tujuan ke root. |
target |
File : File target yang akan ditautkan. |
Hasil | |
---|---|
File |
symlink |
Menampilkan | |
---|---|
|
jika file target gagal ditautkan. |
runCmdInBackground
public Process runCmdInBackground (Redirect redirect,command)
Metode runCmdInBackground(String)
alternatif yang menerima argumen perintah
dalam bentuk ERROR(/List)
.
Parameter | |
---|---|
redirect |
Redirect : ERROR(/Redirect) untuk diterapkan ke ProcessBuilder . |
command |
: ERROR(/List) yang berisi perintah sistem yang ditentukan dan secara opsional argumen
untuk dieksekusi |
Hasil | |
---|---|
Process |
Process perintah yang dieksekusi |
runCmdInBackground
public Process runCmdInBackground (command)
Metode runCmdInBackground(String)
alternatif yang menerima argumen perintah
dalam bentuk ERROR(/List)
.
Parameter | |
---|---|
command |
: ERROR(/List) yang berisi perintah sistem yang ditentukan dan secara opsional argumen
untuk dieksekusi |
Hasil | |
---|---|
Process |
Process perintah yang dieksekusi |
runCmdInBackground
public Process runCmdInBackground (command, OutputStream output)
Menjalankan perintah dengan log ERROR(/OutputStream)
akan mencatat output perintah.
Stdout dan stderr digabungkan.
Parameter | |
---|---|
command |
: perintah yang akan dijalankan |
output |
OutputStream : OutputStream untuk menyimpan output |
Hasil | |
---|---|
Process |
Process yang menjalankan perintah |
runCmdInBackground
public Process runCmdInBackground (String... command)
Metode bantuan untuk mengeksekusi perintah sistem secara asinkron.
Akan segera kembali setelah perintah peluncuran.
Parameter | |
---|---|
command |
String : perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi |
Hasil | |
---|---|
Process |
Process perintah yang dieksekusi |
runCmdInBackground
public Process runCmdInBackground (Redirect redirect, String... command)
Metode bantuan untuk mengeksekusi perintah sistem secara asinkron.
Akan segera kembali setelah perintah peluncuran.
Parameter | |
---|---|
redirect |
Redirect : ERROR(/Redirect) untuk diterapkan ke ProcessBuilder . |
command |
String : perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi |
Hasil | |
---|---|
Process |
Process perintah yang dieksekusi |
runEscalatingTimedRetry
public boolean runEscalatingTimedRetry (long opTimeout, long initialPollInterval, long maxPollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Memblokir dan mengeksekusi operasi beberapa kali hingga berhasil.
Tingkatkan waktu tunggu secara eksponensial di antara upaya operasi. Hal ini dimaksudkan untuk digunakan saat melakukan operasi seperti melakukan polling pada server, guna memberikan waktu untuk melakukan pemulihan jika server sedang tidak aktif untuk sementara.
Parameter | |
---|---|
opTimeout |
long : waktu maksimum untuk menunggu dalam md untuk satu upaya operasi |
initialPollInterval |
long : waktu awal untuk menunggu di antara upaya operasi |
maxPollInterval |
long : waktu maksimum untuk menunggu di antara upaya operasi |
maxTime |
long : perkiraan total waktu maksimum untuk terus mencoba operasi |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult untuk dieksekusi |
Hasil | |
---|---|
boolean |
true jika operasi berhasil diselesaikan sebelum masa berlaku maxTime berakhir |
runFixedTimedRetry
public boolean runFixedTimedRetry (long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Memblokir dan mengeksekusi operasi beberapa kali hingga berhasil.
Parameter | |
---|---|
opTimeout |
long : waktu maksimum untuk menunggu dalam md untuk satu upaya operasi |
pollInterval |
long : waktu tunggu awal di antara upaya operasi |
maxTime |
long : perkiraan total waktu maksimum untuk terus mencoba operasi |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult untuk dieksekusi |
Hasil | |
---|---|
boolean |
true jika operasi berhasil diselesaikan sebelum maxTime berakhir |
runFixedTimedRetryWithOutputMonitor
public boolean runFixedTimedRetryWithOutputMonitor (long opTimeout, long idleOutputTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)
Memblokir dan mengeksekusi operasi beberapa kali hingga berhasil. Juga memantau streaming output untuk aktivitas, membatalkan jika tidak ada aktivitas streaming yang diamati selama waktu yang ditentukan. Jika idleOutputTimeout disetel ke nol, pemantauan streaming tidak akan terjadi.
Parameter | |
---|---|
opTimeout |
long : waktu maksimum untuk menunggu dalam md untuk satu upaya operasi |
idleOutputTimeout |
long : waktu tunggu maksimum dalam md untuk output pada streaming output |
pollInterval |
long : waktu awal untuk menunggu di antara upaya operasi |
maxTime |
long : perkiraan total waktu maksimum untuk terus mencoba operasi |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult untuk dieksekusi |
Hasil | |
---|---|
boolean |
true jika operasi berhasil diselesaikan sebelum masa berlaku maxTime berakhir |
runTimed
public CommandStatus runTimed (long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Memblokir dan menjalankan operasi, dan membatalkannya jika memakan waktu lebih dari waktu yang ditentukan.
Parameter | |
---|---|
timeout |
long : waktu maksimum untuk menunggu dalam md |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult untuk dieksekusi |
logErrors |
boolean : mencatat error pada pengecualian atau tidak. |
Hasil | |
---|---|
CommandStatus |
hasil operasi CommandStatus . |
runTimedCmd
public CommandResult runTimedCmd (long timeout, OutputStream stdout, OutputStream stderr, String... command)
Metode bantuan untuk mengeksekusi perintah sistem, membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan,
dan mengalihkan output ke file jika ditentukan. Jika ERROR(/OutputStream)
diberikan dengan cara ini,
fungsi tersebut akan dibiarkan terbuka di akhir fungsi.
Parameter | |
---|---|
timeout |
long : waktu maksimum waktu tunggu dalam md. 0 berarti tidak ada waktu tunggu. |
stdout |
OutputStream : ERROR(/OutputStream) tempat output std akan dialihkan. Dapat ditetapkan ke null. |
stderr |
OutputStream : ERROR(/OutputStream) tempat output error akan dialihkan. Bisa null. |
command |
String : perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi |
Hasil | |
---|---|
CommandResult |
CommandResult yang berisi hasil dari perintah yang dijalankan |
runTimedCmd
public CommandResult runTimedCmd (long timeout, String... command)
Metode helper untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan.
Parameter | |
---|---|
timeout |
long : waktu maksimum untuk menunggu dalam md. 0 berarti tidak ada waktu tunggu. |
command |
String : perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi |
Hasil | |
---|---|
CommandResult |
CommandResult yang berisi hasil dari perintah yang dijalankan |
runTimedCmdCoba lagi
public CommandResult runTimedCmdRetry (long timeout, long retryInterval, int attempts, String... command)
Metode helper untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan.
Parameter | |
---|---|
timeout |
long : waktu maksimum untuk menunggu dalam satuan milidetik untuk setiap percobaan |
retryInterval |
long : waktu tunggu di antara percobaan ulang perintah |
attempts |
int : jumlah maksimum percobaan |
command |
String : perintah sistem yang ditentukan dan argumen opsional untuk exec |
Hasil | |
---|---|
CommandResult |
CommandResult yang berisi hasil dari command run |
runTimedCmdRetryWithOutputMonitor
public CommandResult runTimedCmdRetryWithOutputMonitor (long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)
Metode helper untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan. Juga memantau streaming output untuk aktivitas, membatalkan jika tidak ada aktivitas streaming yang diamati selama waktu yang ditentukan. Jika idleOutputTimeout disetel ke nol, pemantauan streaming tidak akan terjadi.
Parameter | |
---|---|
timeout |
long : waktu maksimum untuk menunggu dalam satuan milidetik untuk setiap percobaan |
idleOutputTimeout |
long : waktu maksimum untuk menunggu dalam md untuk output di aliran output |
retryInterval |
long : waktu tunggu di antara percobaan ulang perintah |
attempts |
int : jumlah maksimum percobaan |
command |
String : perintah sistem yang ditentukan dan argumen opsional untuk exec |
Hasil | |
---|---|
CommandResult |
CommandResult yang berisi hasil dari command run |
runTimedCmdSilently
public CommandResult runTimedCmdSilently (long timeout, String... command)
Metode helper untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu
yang ditentukan. Serupa dengan runTimedCmd(long, String)
, tetapi tidak mencatat error apa pun pada
pengecualian.
Parameter | |
---|---|
timeout |
long : waktu tunggu maksimum dalam md |
command |
String : perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi |
Hasil | |
---|---|
CommandResult |
CommandResult yang berisi hasil dari perintah yang dijalankan |
runTimedCmdlyCoba lagi
public CommandResult runTimedCmdSilentlyRetry (long timeout, long retryInterval, int attempts, String... command)
Metode helper untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu
yang ditentukan. Serupa dengan runTimedCmdRetry(long, long, int, String[])
,
tetapi tidak mencatat error apa pun pada pengecualian.
Parameter | |
---|---|
timeout |
long : waktu maksimum untuk menunggu dalam md |
retryInterval |
long : waktu tunggu di antara percobaan ulang perintah |
attempts |
int : jumlah maksimum percobaan |
command |
String : perintah sistem yang ditentukan dan argumen opsional untuk exec |
Hasil | |
---|---|
CommandResult |
CommandResult yang berisi hasil dari command run |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input, File stdoutFile, File stderrFile, String... command)
Metode bantuan untuk mengeksekusi perintah sistem, membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan, dan mengalihkan output ke file jika ditentukan.
Parameter | |
---|---|
timeout |
long : waktu tunggu maksimum waktu tunggu dalam md. 0 berarti tidak ada waktu tunggu. |
input |
String : input stdin yang akan diteruskan untuk diproses |
stdoutFile |
File : ERROR(/File) tempat output std akan dialihkan. Dapat ditetapkan ke null. |
stderrFile |
File : ERROR(/File) tempat output error akan dialihkan. Dapat ditetapkan ke null. |
command |
String : perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi |
Hasil | |
---|---|
CommandResult |
CommandResult yang berisi hasil dari command run |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input, String... command)
Metode bantuan untuk menjalankan perintah sistem yang memerlukan input stdin, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan.
Parameter | |
---|---|
timeout |
long : waktu maksimum untuk menunggu dalam md |
input |
String : input stdin yang akan diteruskan untuk diproses |
command |
String : perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi |
Hasil | |
---|---|
CommandResult |
CommandResult yang berisi hasil dari perintah yang dijalankan |
runTimedCmdWithInput
public CommandResult runTimedCmdWithInput (long timeout, String input,command)
Metode bantuan untuk menjalankan perintah sistem yang memerlukan input stdin, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan.
Parameter | |
---|---|
timeout |
long : waktu maksimum untuk menunggu dalam md |
input |
String : input stdin yang akan diteruskan untuk diproses |
command |
: ERROR(/List) yang berisi perintah sistem dan argumen opsional untuk dieksekusi |
Hasil | |
---|---|
CommandResult |
CommandResult yang berisi hasil dari command run |
runTimedCmdWithInputRedirect
public CommandResult runTimedCmdWithInputRedirect (long timeout, File inputRedirect, String... command)
Metode helper untuk mengeksekusi perintah sistem yang memerlukan pengalihan Stdin dari file, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan.
Parameter | |
---|---|
timeout |
long : waktu maksimum untuk menunggu dalam md |
inputRedirect |
File : ERROR(/File) yang akan dialihkan sebagai input standar menggunakan ProcessBuilder.redirectInput() . Jika null, stdin tidak akan dialihkan. |
command |
String : perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi |
Hasil | |
---|---|
CommandResult |
CommandResult yang berisi hasil dari perintah yang dijalankan |
runTimedCmdWithOutputMonitor
public CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)
Metode bantuan untuk mengeksekusi perintah sistem, membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan,
dan mengalihkan output ke file jika ditentukan. Jika ERROR(/OutputStream)
diberikan dengan cara ini,
fungsi tersebut akan dibiarkan terbuka di akhir fungsi.
Parameter | |
---|---|
timeout |
long : waktu maksimum waktu tunggu dalam md. 0 berarti tidak ada waktu tunggu. |
idleOutputTimeout |
long : waktu maksimum untuk menunggu dalam md untuk output di aliran output |
stdout |
OutputStream : ERROR(/OutputStream) tempat output std akan dialihkan. Dapat ditetapkan ke null. |
stderr |
OutputStream : ERROR(/OutputStream) tempat output error akan dialihkan. Dapat ditetapkan ke null. |
command |
String : perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi |
Hasil | |
---|---|
CommandResult |
CommandResult yang berisi hasil dari perintah yang dijalankan |
runTimedCmdWithOutputMonitor
public CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, String... command)
Metode helper untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan. Selain itu, memantau aliran output untuk aktivitas, akan dibatalkan jika tidak ada aktivitas streaming yang diamati selama waktu tertentu. Jika idleOutputTimeout disetel ke nol, pemantauan streaming tidak akan terjadi.
Parameter | |
---|---|
timeout |
long : waktu tunggu maksimum dalam md. 0 berarti tidak ada waktu tunggu. |
idleOutputTimeout |
long : waktu maksimum untuk menunggu dalam md untuk output di aliran output |
command |
String : perintah sistem yang ditentukan dan argumen opsional untuk exec |
Hasil | |
---|---|
CommandResult |
CommandResult yang berisi hasil dari perintah yang dijalankan |
runTimedCmdWithOutputMonitor
public CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, ICacheClient cacheClient, String... command)
Metode helper untuk menjalankan perintah sistem dengan caching.
Jika cacheClient
ditentukan, caching akan diaktifkan. Jika cache tersedia, hasil yang di-cache akan ditampilkan. Jika tidak, runTimedCmdWithOutputMonitor(long, long, OutputStream, OutputStream, String)
akan digunakan untuk mengeksekusi perintah dan hasilnya akan diupload untuk di-cache.
Parameter | |
---|---|
timeout |
long : waktu maksimum waktu tunggu dalam md. 0 berarti tidak ada waktu tunggu. |
idleOutputTimeout |
long : waktu tunggu maksimum dalam md untuk output pada streaming output. |
stdout |
OutputStream : ERROR(/OutputStream) tempat output std akan dialihkan. Dapat ditetapkan ke null. |
stderr |
OutputStream : ERROR(/OutputStream) tempat output error akan dialihkan. Dapat ditetapkan ke null. |
cacheClient |
ICacheClient : instance ICacheClient yang digunakan untuk menangani penyimpanan dalam cache. |
command |
String : perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi. |
Hasil | |
---|---|
CommandResult |
CommandResult yang berisi hasil dari perintah yang dijalankan. |
runTimedRetry
public boolean runTimedRetry (long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Memblokir dan mengeksekusi operasi beberapa kali hingga berhasil.
Parameter | |
---|---|
opTimeout |
long : waktu tunggu maksimum dalam md untuk satu upaya operasi |
pollInterval |
long : waktu tunggu di antara percobaan ulang perintah |
attempts |
int : jumlah maksimum percobaan |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult untuk dieksekusi |
Hasil | |
---|---|
boolean |
true jika operasi berhasil diselesaikan sebelum upaya tercapai. |
runTimedRetryWithOutputMonitor
public boolean runTimedRetryWithOutputMonitor (long opTimeout, long idleOutputTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)
Memblokir dan mengeksekusi operasi beberapa kali hingga berhasil. Selain itu, memantau streaming output untuk aktivitas, akan dibatalkan jika tidak ada aktivitas streaming yang diamati selama waktu tertentu. Jika idleOutputTimeout disetel ke nol, pemantauan streaming tidak akan terjadi.
Parameter | |
---|---|
opTimeout |
long : waktu maksimum untuk menunggu dalam md untuk satu upaya operasi |
idleOutputTimeout |
long : waktu maksimum untuk menunggu dalam md untuk output di aliran output |
pollInterval |
long : waktu tunggu di antara percobaan ulang perintah |
attempts |
int : jumlah maksimum upaya yang akan dicoba |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult untuk dieksekusi |
Hasil | |
---|---|
boolean |
true jika operasi berhasil diselesaikan sebelum upaya tercapai. |
runTimedWithOutputMonitor
public CommandStatus runTimedWithOutputMonitor (long timeout, long idleOutputTimeout, IRunUtil.IRunnableResult runnable, boolean logErrors)
Memblokir dan menjalankan operasi, membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan. Selain itu, memantau streaming output untuk aktivitas, membatalkan jika tidak ada aktivitas streaming yang diamati selama waktu yang ditentukan. Jika idleOutputTimeout disetel ke nol, pemantauan streaming tidak akan terjadi.
Parameter | |
---|---|
timeout |
long : waktu tunggu maksimum dalam md |
idleOutputTimeout |
long : waktu maksimum untuk menunggu dalam md untuk output di aliran output |
runnable |
IRunUtil.IRunnableResult : IRunUtil.IRunnableResult untuk dieksekusi |
logErrors |
boolean : mencatat error pada pengecualian atau tidak. |
Hasil | |
---|---|
CommandStatus |
hasil operasi CommandStatus . |
setEnvVariable
public void setEnvVariable (String name, String value)
Menetapkan variabel lingkungan yang akan digunakan saat menjalankan perintah sistem.
Parameter | |
---|---|
name |
String : nama variabel |
value |
String : nilai variabel |
setEnvVariablePriority
public void setEnvVariablePriority (IRunUtil.EnvPriority priority)
Tentukan apakah saat membuat proses, menghapus penetapan variabel lingkungan memiliki prioritas
yang lebih tinggi daripada menetapkannya.
Secara Default, penghapusan setelan memiliki prioritas yang lebih tinggi: artinya jika upaya untuk menetapkan variabel dengan
nama yang sama dilakukan, upaya tersebut tidak akan terjadi karena variabel akan dihapus setelannya.
Tidak dapat digunakan pada instance IRunUtil
default.
Parameter | |
---|---|
priority |
IRunUtil.EnvPriority |
setInterruptibleInFuture
public void setInterruptibleInFuture (Thread thread, long timeMs)
Tetapkan sebagai dapat diganggu setelah beberapa waktu tunggu.
ERROR(/CommandScheduler#shutdownHard())
untuk menerapkan penghentian pada akhirnya.
Parameter | |
---|---|
thread |
Thread : thread yang akan dapat diinterupsi. |
timeMs |
long : waktu tunggu sebelum menyetel dapat diganggu. |
{i>setLinuxInterruptProcess<i}
public void setLinuxInterruptProcess (boolean interrupt)
Mengizinkan penggunaan gangguan 'kill' linux pada proses yang berjalan melalui metode #runTimed saat
mencapai waktu tunggu.
Tidak dapat digunakan pada instance IRunUtil
default.
Parameter | |
---|---|
interrupt |
boolean |
setRedirectStderrToStdout
public void setRedirectStderrToStdout (boolean redirect)
Tetapkan aliran error standar untuk dialihkan ke aliran output standar saat menjalankan perintah sistem. Nilai awal adalah salah.
Parameter | |
---|---|
redirect |
boolean : nilai baru untuk menentukan apakah akan mengalihkan atau tidak |
setWorkingDir
public void setWorkingDir (File dir)
Menetapkan direktori kerja untuk perintah sistem.
Parameter | |
---|---|
dir |
File : direktori kerja |
sleep
public void sleep (long time)
Metode helper untuk tidur selama waktu tertentu, mengabaikan pengecualian apa pun.
Parameter | |
---|---|
time |
long : md untuk tidur. nilai yang kurang dari atau sama dengan 0 akan diabaikan |
toRelative
public static String toRelative (File start, File target)
Parameter | |
---|---|
start |
File |
target |
File |
Hasil | |
---|---|
String |
toRelative
public static String toRelative (File start, String target)
Parameter | |
---|---|
start |
File |
target |
String |
Hasil | |
---|---|
String |
unsetEnvVariable
public void unsetEnvVariable (String key)
Membatalkan penetapan variabel lingkungan, sehingga perintah sistem berjalan tanpa variabel lingkungan ini.
Variabel lingkungan mungkin mewarisi dari proses induk, jadi kita harus menghapus variabel lingkungan dari ProcessBuilder.environment()
Parameter | |
---|---|
key |
String : nama variabel |
Lihat juga:
uploadCache
public void uploadCache (ICacheClient cacheClient, ExecutableActionResult actionResult)
Mengupload ExecutableActionResult
terakhir yang dijalankan dengan cacheClient.
Parameter | |
---|---|
cacheClient |
ICacheClient : ICacheClient yang digunakan untuk mengupload hasil. |
actionResult |
ExecutableActionResult : ExecutableActionResult yang akan diupload. |