RunUtil

public class RunUtil
extends Object implements IRunUtil

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


Kumpulan metode pembantu untuk menjalankan operasi.

Ringkasan

Bidang

public static final String INHERITIO_PREFIX

public static final String RUNNABLE_NOTIFIER_NAME

Konstruktor publik

RunUtil ()

Buat objek RunUtil baru untuk digunakan.

Metode publik

void allowInterrupt (boolean allow)

Mengizinkan/melarang menjalankan interupsi pada utas saat ini.

static IRunUtil getDefault ()

Dapatkan referensi ke objek RunUtil default.

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

Mengganggu operasi yang sedang berlangsung/akan datang pada utas yang diberikan.

void interrupt (Thread thread, String message)

Mengganggu operasi yang sedang berlangsung/akan datang pada utas yang diberikan.

boolean isInterruptAllowed ()

Berikan status interupsi dari RunUtil.

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

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

Process runCmdInBackground ( command) runCmdInBackground ( command)

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

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

Menjalankan perintah dengan ERROR(/OutputStream) mencatat keluaran dari perintah.

Process runCmdInBackground (String... command)

Metode pembantu untuk menjalankan perintah sistem secara asinkron.

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

Metode pembantu untuk menjalankan perintah sistem secara asinkron.

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

Blokir dan jalankan operasi beberapa kali hingga berhasil.

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

Blokir dan jalankan operasi beberapa kali hingga berhasil.

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

Blokir dan jalankan operasi, batalkan jika membutuhkan waktu lebih lama dari waktu yang ditentukan.

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

Metode pembantu untuk menjalankan perintah sistem, batalkan jika membutuhkan waktu lebih lama dari waktu yang ditentukan, dan arahkan output ke file jika ditentukan.

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

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

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

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

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

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

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

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

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

Metode pembantu untuk menjalankan perintah sistem, batalkan jika membutuhkan waktu lebih lama dari waktu yang ditentukan, dan arahkan output ke file jika ditentukan.

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

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

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

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

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

Metode pembantu untuk menjalankan perintah sistem yang memerlukan pengalihan Stdin dari file, dan batalkan jika membutuhkan waktu lebih lama dari waktu yang ditentukan.

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

Blokir dan jalankan operasi beberapa kali hingga berhasil.

void setEnvVariable (String name, String value)

Menetapkan variabel lingkungan yang akan digunakan saat menjalankan perintah sistem.

void setEnvVariablePriority ( IRunUtil.EnvPriority priority)

Putuskan apakah saat membuat proses atau tidak, menghapus variabel lingkungan lebih diprioritaskan daripada menyetelnya.

void setInterruptibleInFuture (Thread thread, long timeMs)

Ditetapkan sebagai dapat diinterupsi setelah beberapa waktu menunggu.

void setLinuxInterruptProcess (boolean interrupt)

Izinkan untuk menggunakan interupsi 'bunuh' linux pada proses yang berjalan melalui metode #runTimed saat mencapai batas waktu.

void setRedirectStderrToStdout (boolean redirect)

Setel aliran kesalahan standar untuk mengalihkan ke aliran keluaran standar saat menjalankan perintah sistem.

void setWorkingDir (File dir)

Menetapkan direktori kerja untuk perintah sistem.

void sleep (long time)

Metode pembantu untuk tidur untuk waktu tertentu, mengabaikan pengecualian apa pun.

void unsetEnvVariable (String key)

Menghapus variabel lingkungan, sehingga perintah sistem berjalan tanpa variabel lingkungan ini. Variabel lingkungan mungkin mewarisi dari proses induk, jadi kita perlu menghapus variabel lingkungan dari ProcessBuilder.environment()

Bidang

INHERITIO_PREFIX

public static final String INHERITIO_PREFIX

RUNNABLE_NOTIFIER_NAME

public static final String RUNNABLE_NOTIFIER_NAME

Konstruktor publik

RunUtil

public RunUtil ()

Buat objek RunUtil baru untuk digunakan.

Metode publik

izinkan Interupsi

public void allowInterrupt (boolean allow)

Mengizinkan/melarang menjalankan interupsi pada utas saat ini. Jika diizinkan, operasi yang dijalankan dari utas saat ini dapat diinterupsi dari utas lainnya melalui metode interrupt(Thread, String) .

Parameter
allow boolean : apakah mengizinkan menjalankan interupsi pada utas saat ini.

getDefault

public static IRunUtil getDefault ()

Dapatkan referensi ke objek RunUtil default.

Ini berguna untuk penelepon yang ingin menggunakan IRunUtil tanpa penyesuaian. Direkomendasikan bahwa penelepon yang membutuhkan instance IRunUtil khusus (yakni harus memanggil setEnvVariable(String, String) atau setWorkingDir(File) membuat salinannya sendiri.

Pengembalian
IRunUtil

mengganggu

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

Mengganggu operasi yang sedang berlangsung/akan datang pada utas yang diberikan. Operasi jalankan pada utas yang diberikan akan membuang RunInterruptedException .

Parameter
message String : pesan untuk RunInterruptedException .

errorId ErrorIdentifier : Mewakili penyebab gangguan saat diketahui.

mengganggu

public void interrupt (Thread thread, 
                String message)

Mengganggu operasi yang sedang berlangsung/akan datang pada utas yang diberikan. Operasi jalankan pada utas yang diberikan akan membuang RunInterruptedException .

Parameter
message String : pesan untuk RunInterruptedException .

isInterruptAllowed

public boolean isInterruptAllowed ()

Berikan status interupsi dari RunUtil.

Pengembalian
boolean true jika Run dapat diinterupsi, false jika sebaliknya.

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

Pengembalian
Process Process dari 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

Pengembalian
Process Process dari perintah yang dieksekusi

runCmdInBackground

public Process runCmdInBackground ( command, 
                OutputStream output)

Menjalankan perintah dengan ERROR(/OutputStream) mencatat keluaran dari perintah. Stdout dan stderr digabungkan menjadi satu.

Parameter
command : perintah untuk menjalankan

output OutputStream : OutputStream untuk menyimpan output

Pengembalian
Process Process menjalankan perintah

runCmdInBackground

public Process runCmdInBackground (String... command)

Metode pembantu untuk menjalankan perintah sistem secara asinkron.

Akan kembali segera setelah meluncurkan perintah.

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

Pengembalian
Process Process dari perintah yang dieksekusi

runCmdInBackground

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

Metode pembantu untuk menjalankan perintah sistem secara asinkron.

Akan kembali segera setelah meluncurkan perintah.

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

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

Pengembalian
Process Process dari perintah yang dieksekusi

runEscalatingTimedRetry

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

Blokir dan jalankan operasi beberapa kali hingga berhasil.

Secara eksponensial meningkatkan waktu tunggu antara upaya operasi. Ini dimaksudkan untuk digunakan saat melakukan operasi seperti polling server, untuk memberikan waktu pemulihan jika server sedang down untuk sementara.

Parameter
opTimeout long : waktu maksimum untuk menunggu dalam ms untuk upaya operasi tunggal

initialPollInterval long : waktu awal untuk menunggu di antara upaya operasi

maxPollInterval long : waktu maksimal untuk menunggu di antara upaya operasi

maxTime long : total perkiraan waktu maksimum untuk terus mencoba operasi

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult untuk dieksekusi

Pengembalian
boolean true jika operasi selesai dengan sukses sebelum maxTime kedaluwarsa

runFixedTimedRetry

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

Blokir dan jalankan operasi beberapa kali hingga berhasil.

Parameter
opTimeout long : waktu maksimum untuk menunggu dalam ms untuk upaya operasi tunggal

pollInterval long : waktu awal untuk menunggu di antara upaya operasi

maxTime long : total perkiraan waktu maksimum untuk terus mencoba operasi

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult untuk dieksekusi

Pengembalian
boolean true jika operasi selesai dengan sukses sebelum maxTime kedaluwarsa

runTimed

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

Blokir dan jalankan operasi, batalkan jika membutuhkan waktu lebih lama dari waktu yang ditentukan.

Parameter
timeout long : waktu maksimum untuk menunggu dalam ms

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult untuk dieksekusi

logErrors boolean : mencatat kesalahan pada pengecualian atau tidak.

Pengembalian
CommandStatus hasil operasi CommandStatus .

runTimedCmd

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

Metode pembantu untuk menjalankan perintah sistem, batalkan jika membutuhkan waktu lebih lama dari waktu yang ditentukan, dan arahkan output ke file jika ditentukan. Ketika ERROR(/OutputStream) disediakan dengan cara ini, mereka akan dibiarkan terbuka di akhir fungsi.

Parameter
timeout long : batas waktu waktu maksimum untuk menunggu dalam ms. 0 berarti tidak ada batas waktu.

stdout OutputStream : ERROR(/OutputStream) di mana output std akan dialihkan. Bisa nol.

stderr OutputStream : ERROR(/OutputStream) tempat keluaran kesalahan akan dialihkan. Bisa nol.

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

Pengembalian
CommandResult sebuah CommandResult yang berisi hasil dari menjalankan perintah

runTimedCmd

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

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

Parameter
timeout long : waktu maksimum untuk menunggu dalam ms. 0 berarti tidak ada batas waktu.

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

Pengembalian
CommandResult sebuah CommandResult yang berisi hasil dari menjalankan perintah

runTimedCmdRetry

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

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

Parameter
timeout long : waktu tunggu maksimum dalam ms untuk setiap upaya

retryInterval long : waktu untuk menunggu antara percobaan ulang perintah

attempts int : jumlah maksimum percobaan untuk dicoba

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

Pengembalian
CommandResult sebuah CommandResult yang berisi hasil dari menjalankan perintah

runTimedCmdDiam-diam

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

Metode pembantu untuk menjalankan perintah sistem, dan membatalkan jika membutuhkan waktu lebih lama dari waktu yang ditentukan. Mirip dengan runTimedCmd(long, String) , tetapi tidak mencatat kesalahan apa pun kecuali.

Parameter
timeout long : waktu maksimum untuk menunggu dalam ms

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

Pengembalian
CommandResult sebuah CommandResult yang berisi hasil dari menjalankan perintah

runTimedCmdSilentlyRetry

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

Metode pembantu untuk menjalankan perintah sistem, dan membatalkan jika membutuhkan waktu lebih lama dari waktu yang ditentukan. Mirip dengan runTimedCmdRetry(long, long, int, String[]) , tetapi tidak mencatat kesalahan apa pun pada pengecualian.

Parameter
timeout long : waktu maksimum untuk menunggu dalam ms

retryInterval long : waktu untuk menunggu antara percobaan ulang perintah

attempts int : jumlah maksimum percobaan untuk dicoba

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

Pengembalian
CommandResult sebuah CommandResult yang berisi hasil dari menjalankan perintah

runTimedCmdWithInput

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

Metode pembantu untuk menjalankan perintah sistem, batalkan jika membutuhkan waktu lebih lama dari waktu yang ditentukan, dan arahkan output ke file jika ditentukan.

Parameter
timeout long : batas waktu waktu maksimum untuk menunggu dalam ms. 0 berarti tidak ada batas waktu.

input String : input stdin untuk diteruskan ke proses

stdoutFile File : ERROR(/File) tempat output std akan dialihkan. Bisa nol.

stderrFile File : ERROR(/File) tempat keluaran kesalahan akan dialihkan. Bisa nol.

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

Pengembalian
CommandResult sebuah CommandResult yang berisi hasil dari menjalankan perintah

runTimedCmdWithInput

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

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

Parameter
timeout long : waktu maksimum untuk menunggu dalam ms

input String : input stdin untuk diteruskan ke proses

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

Pengembalian
CommandResult sebuah CommandResult yang berisi hasil dari menjalankan perintah

runTimedCmdWithInput

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

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

Parameter
timeout long : waktu maksimum untuk menunggu dalam ms

input String : input stdin untuk diteruskan ke proses

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

Pengembalian
CommandResult sebuah CommandResult yang berisi hasil dari menjalankan perintah

runTimedCmdWithInputRedirect

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

Metode pembantu untuk menjalankan perintah sistem yang memerlukan pengalihan Stdin dari file, dan batalkan jika membutuhkan waktu lebih lama dari waktu yang ditentukan.

Parameter
timeout long : waktu maksimum untuk menunggu dalam ms

inputRedirect File : ERROR(/File) untuk 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

Pengembalian
CommandResult sebuah CommandResult yang berisi hasil dari menjalankan perintah

runTimedRetry

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

Blokir dan jalankan operasi beberapa kali hingga berhasil.

Parameter
opTimeout long : waktu maksimum untuk menunggu dalam ms untuk satu upaya operasi

pollInterval long : waktu untuk menunggu antara percobaan ulang perintah

attempts int : jumlah maksimum percobaan untuk dicoba

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult untuk dieksekusi

Pengembalian
boolean true jika operasi selesai dengan sukses sebelum upaya tercapai.

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)

Putuskan apakah saat membuat proses atau tidak, menghapus variabel lingkungan adalah prioritas yang lebih tinggi daripada menyetelnya. Secara Default, unsetting adalah prioritas yang lebih tinggi: artinya jika upaya untuk mengatur variabel dengan nama yang sama dibuat, itu tidak akan terjadi karena variabel akan di-unset. Tidak dapat digunakan pada instance IRunUtil default.

Parameter
priority IRunUtil.EnvPriority

setInterruptibleInFuture

public void setInterruptibleInFuture (Thread thread, 
                long timeMs)

Ditetapkan sebagai dapat diinterupsi setelah beberapa waktu menunggu. ERROR(/CommandScheduler#shutdownHard()) untuk menegakkan akhirnya kami hentikan.

Parameter
thread Thread : utas yang akan terputus.

timeMs long : waktu untuk menunggu sebelum mengatur interruptible.

setLinuxInterruptProcess

public void setLinuxInterruptProcess (boolean interrupt)

Izinkan untuk menggunakan interupsi 'bunuh' linux pada proses yang berjalan melalui metode #runTimed saat mencapai batas waktu. Tidak dapat digunakan pada instance IRunUtil default.

Parameter
interrupt boolean

setRedirectStderrToStdout

public void setRedirectStderrToStdout (boolean redirect)

Setel aliran kesalahan standar untuk mengalihkan ke aliran keluaran standar saat menjalankan perintah sistem. Nilai awal salah.

Parameter
redirect boolean : nilai baru untuk mengarahkan ulang atau tidak

setWorkingDir

public void setWorkingDir (File dir)

Menetapkan direktori kerja untuk perintah sistem.

Parameter
dir File : direktori kerja

tidur

public void sleep (long time)

Metode pembantu untuk tidur untuk waktu tertentu, mengabaikan pengecualian apa pun.

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

unsetEnvVariable

public void unsetEnvVariable (String key)

Menghapus variabel lingkungan, sehingga perintah sistem berjalan tanpa variabel lingkungan ini. Variabel lingkungan mungkin mewarisi dari proses induk, jadi kita perlu menghapus variabel lingkungan dari ProcessBuilder.environment()

Parameter
key String : nama variabel