IRunUtil

public interface IRunUtil

com.android.tradefed.util.IRunUtil


Antarmuka untuk menjalankan operasi dengan waktu dan perintah sistem.

Ringkasan

Class bertingkat

interface IRunUtil.IRunnableResult

Antarmuka untuk menjalankan operasi secara asinkron yang menampilkan status boolean. 

Metode publik

abstract void allowInterrupt(boolean allow)

Mengizinkan/melarang interupsi operasi pada thread saat ini.

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

Mengganggu operasi run yang sedang berlangsung/mendatang pada thread tertentu.

abstract void interrupt(Thread thread, String message)

Mengganggu operasi run yang sedang berlangsung/mendatang pada thread tertentu.

abstract boolean isInterruptAllowed()

Berikan status interupsi RunUtil.

abstract Process runCmdInBackground(Redirect redirect, command)

Metode runCmdInBackground(String) alternatif yang menerima argumen perintah dalam bentuk ERROR(/List).

abstract Process runCmdInBackground( command)

Metode runCmdInBackground(String) alternatif yang menerima argumen perintah dalam bentuk ERROR(/List).

abstract Process runCmdInBackground( command, OutputStream output)

Menjalankan perintah dengan ERROR(/OutputStream) akan mencatat output perintah.

abstract Process runCmdInBackground(String... command)

Metode bantuan untuk mengeksekusi perintah sistem secara asinkron.

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

Metode helper untuk menjalankan perintah sistem secara asinkron.

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

Memblokir dan mengeksekusi operasi beberapa kali hingga berhasil.

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

Blokir dan jalankan operasi beberapa kali hingga berhasil.

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

Memblokir dan mengeksekusi operasi beberapa kali hingga berhasil.

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

Memblokir dan menjalankan operasi, membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan.

abstract 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.

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

Metode helper untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan.

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

Metode bantuan untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan.

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

Metode bantuan untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan.

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

Metode bantuan untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan.

abstract 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.

abstract 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.

abstract 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.

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

Metode helper untuk mengeksekusi perintah sistem yang memerlukan input stdin, dan membatalkannya jika memerlukan waktu lebih dari waktu yang ditentukan.

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

Metode bantuan untuk menjalankan perintah sistem yang memerlukan pengalihan Stdin dari file, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan.

abstract 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.

abstract 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.

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

Metode helper untuk menjalankan perintah sistem dengan caching.

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

Blokir dan jalankan operasi beberapa kali hingga berhasil.

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

Memblokir dan mengeksekusi operasi beberapa kali hingga berhasil.

abstract 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.

abstract void setEnvVariable(String key, String value)

Menetapkan variabel lingkungan yang akan digunakan saat menjalankan perintah sistem.

abstract void setEnvVariablePriority(IRunUtil.EnvPriority priority)

Tentukan apakah saat membuat proses, menghapus penetapan variabel lingkungan memiliki prioritas yang lebih tinggi daripada menetapkannya.

abstract void setInterruptibleInFuture(Thread thread, long timeMs)

Tetapkan sebagai dapat diganggu setelah beberapa waktu tunggu.

abstract void setLinuxInterruptProcess(boolean interrupt)

Mengizinkan penggunaan gangguan 'kill' linux pada proses yang berjalan melalui metode #runTimed saat mencapai waktu tunggu.

abstract void setRedirectStderrToStdout(boolean redirect)

Tetapkan aliran error standar agar dialihkan ke aliran output standar saat menjalankan perintah sistem.

abstract void setWorkingDir(File dir)

Menetapkan direktori kerja untuk perintah sistem.

abstract void sleep(long time)

Metode helper untuk tidur selama waktu tertentu, mengabaikan pengecualian apa pun.

abstract void unsetEnvVariable(String key)

Membatalkan penetapan variabel lingkungan, sehingga perintah sistem berjalan tanpa variabel lingkungan ini.

abstract void uploadCache(ICacheClient cacheClient, ExecutableActionResult actionResult)

Mengupload ExecutableActionResult terakhir yang dijalankan dengan cacheClient.

Metode publik

izinkan Interupsi

public abstract 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 interupsi operasi di thread saat ini.

interupsi

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

Mengganggu operasi operasi yang sedang berjalan/mendatang di thread tertentu. Operasi yang dijalankan pada thread tertentu akan menampilkan RunInterruptedException.

Parameter
message String: pesan untuk RunInterruptedException.

errorId ErrorIdentifier: Mewakili penyebab gangguan jika diketahui.

interupsi

public abstract 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 abstract boolean isInterruptAllowed ()

Berikan status interupsi RunUtil.

Hasil
boolean true jika Run dapat terganggu, false jika tidak.

runCmdInBackground

public abstract Process runCmdInBackground (Redirect redirect, 
                 command)

Metode runCmdInBackground(String) alternatif yang menerima argumen perintah dalam bentuk ERROR(/List).

Parameter
redirect Redirect: ERROR(/Redirect) yang akan diterapkan ke ProcessBuilder.

command : ERROR(/List) yang berisi perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi

Hasil
Process Process perintah yang dieksekusi

Menampilkan
jika perintah gagal dijalankan

runCmdInBackground

public abstract Process runCmdInBackground ( command)

Metode runCmdInBackground(String) alternatif yang menerima argumen perintah dalam bentuk ERROR(/List).

Parameter
command : ERROR(/List) yang berisi perintah sistem tertentu dan argumen opsional untuk menjalankan

Hasil
Process Process perintah yang dieksekusi

Menampilkan
jika perintah gagal dijalankan

runCmdInBackground

public abstract Process runCmdInBackground ( command, 
                OutputStream output)

Menjalankan perintah dengan 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

Menampilkan
IOException

runCmdInBackground

public abstract Process runCmdInBackground (String... command)

Metode bantuan untuk mengeksekusi perintah sistem secara asinkron.

Akan segera ditampilkan setelah perintah diluncurkan.

Parameter
command String: perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi

Hasil
Process Process perintah yang dieksekusi

Menampilkan
jika perintah gagal dijalankan

runCmdInBackground

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

Metode bantuan untuk mengeksekusi perintah sistem secara asinkron.

Akan segera ditampilkan setelah perintah diluncurkan.

Parameter
redirect Redirect: ERROR(/Redirect) yang akan diterapkan ke ProcessBuilder.

command String: perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi

Hasil
Process Process perintah yang dieksekusi

Menampilkan
jika perintah gagal dijalankan

runEscalatingTimedRetry

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

Blokir dan jalankan operasi beberapa kali hingga berhasil.

Tingkatkan waktu tunggu secara eksponensial di antara upaya operasi. Ini dimaksudkan untuk digunakan saat melakukan operasi seperti polling server, untuk memberinya waktu memulihkan jika server tidak berfungsi untuk sementara.

Parameter
opTimeout long: waktu tunggu maksimum 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: total perkiraan 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 abstract boolean runFixedTimedRetry (long opTimeout, 
                long pollInterval, 
                long maxTime, 
                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 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

runFixedTimedRetryWithOutputMonitor

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

Blokir dan jalankan 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 tunggu maksimum dalam md untuk satu upaya operasi

idleOutputTimeout long: waktu maksimum untuk menunggu dalam md untuk output di aliran 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 maxTime berakhir

runTimed

public abstract 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 abstract 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. 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. Dapat ditetapkan ke null.

command String: perintah sistem yang ditentukan dan argumen opsional untuk exec

Hasil
CommandResult CommandResult yang berisi hasil dari command run

runTimedCmd

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

Metode bantuan untuk menjalankan perintah sistem, dan membatalkan jika memerlukan waktu lebih lama dari waktu yang ditentukan.

Parameter
timeout long: waktu tunggu maksimum 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 abstract 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 upaya yang akan dicoba

command String: perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi

Hasil
CommandResult CommandResult yang berisi hasil dari perintah yang dijalankan

runTimedCmdRetryWithOutputMonitor

public abstract 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. 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 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 upaya yang akan dicoba

command String: perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi

Hasil
CommandResult CommandResult yang berisi hasil dari perintah yang dijalankan

runTimedCmdSilently

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

Metode bantuan 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 maksimum untuk menunggu dalam md

command String: perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi

Hasil
CommandResult CommandResult yang berisi hasil dari perintah yang dijalankan

runTimedCmdSilentlyRetry

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

Metode bantuan 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 upaya yang akan dicoba

command String: perintah sistem yang ditentukan dan secara opsional argumen untuk dieksekusi

Hasil
CommandResult CommandResult yang berisi hasil dari perintah yang dijalankan

runTimedCmdWithInput

public abstract 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 maksimum waktu tunggu habis dalam md. 0 berarti tidak ada waktu tunggu habis.

input String: input stdin yang akan diteruskan ke proses

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 argumen opsional untuk exec

Hasil
CommandResult CommandResult yang berisi hasil dari perintah yang dijalankan

runTimedCmdWithInput

public abstract 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.

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 abstract CommandResult runTimedCmdWithInput (long timeout, 
                String input, 
                 command)

Metode helper untuk mengeksekusi perintah sistem yang memerlukan input stdin, dan membatalkannya jika memerlukan waktu lebih 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 abstract 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 command run

runTimedCmdWithOutputMonitor

public abstract 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 tunggu 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. Bisa null.

command String: perintah sistem yang ditentukan dan argumen opsional untuk exec

Hasil
CommandResult CommandResult yang berisi hasil dari command run

runTimedCmdWithOutputMonitor

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

Metode bantuan 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 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 secara opsional argumen untuk dieksekusi

Hasil
CommandResult CommandResult yang berisi hasil dari perintah yang dijalankan

runTimedCmdWithOutputMonitor

public abstract 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, penyimpanan dalam cache 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 command run.

runTimedRetry

public abstract 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 abstract boolean runTimedRetryWithOutputMonitor (long opTimeout, 
                long idleOutputTimeout, 
                long pollInterval, 
                int attempts, 
                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 tunggu maksimum 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 abstract 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 maksimum untuk menunggu 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 abstract void setEnvVariable (String key, 
                String value)

Menetapkan variabel lingkungan yang akan digunakan saat menjalankan perintah sistem.

Parameter
key String: nama variabel

value String: nilai variabel

setEnvVariablePriority

public abstract 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 abstract 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.

setLinuxInterruptProcess

public abstract 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 abstract 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 abstract void setWorkingDir (File dir)

Menetapkan direktori kerja untuk perintah sistem.

Parameter
dir File: direktori kerja

sleep

public abstract void sleep (long time)

Metode helper untuk tidur selama waktu tertentu, mengabaikan pengecualian apa pun.

Parameter
time long: ms untuk tidur. nilai yang kurang dari atau sama dengan 0 akan diabaikan

unsetEnvVariable

public abstract void unsetEnvVariable (String key)

Membatalkan setelan variabel lingkungan, sehingga perintah sistem berjalan tanpa variabel lingkungan ini.

Parameter
key String: nama variabel

uploadCache

public abstract 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.