Google berkomitmen untuk mendorong terwujudnya keadilan ras bagi komunitas Kulit Hitam. Lihat caranya.
Tetap teratur dengan koleksi Simpan dan kategorikan konten berdasarkan preferensi Anda.

ArgsOptionParser

public class ArgsOptionParser
extends OptionSetter

java.lang.Object
com.android.tradefed.config.OptionSetter
com.android.tradefed.config.ArgsOptionParser


Mempopulai Option bidang dari argumen baris perintah parsing.

String dalam String[] yang diteruskan diurai dari kiri ke kanan. Setiap String diklasifikasikan sebagai opsi pendek (seperti "-v"), opsi panjang (seperti "--verbose"), argumen ke opsi (seperti "out.txt" di "-f out.txt "), atau argumen posisional non-opsi.

Setiap argumen pilihan harus peta untuk satu atau lebih Option bidang. Sebuah pilihan yang lama memetakan ke Option nama, dan pilihan singkat memetakan ke Option nama pendek. Setiap nama pilihan dan pilihan nama pendek harus unik sehubungan dengan semua lainnya Option bidang dalam objek yang sama.

Argumen pilihan tunggal bisa dipetakan ke beberapa Option bidang dengan nama yang sama di beberapa objek. Option argumen dapat namespaced untuk unik merujuk ke Option lapangan dalam satu objek menggunakan benda penuh nama kelas atau yang OptionClass nilai alias dipisahkan oleh ':'. yaitu

 --classname:optionname optionvalue or
 --optionclassalias:optionname optionvalue.
 

Opsi pendek sederhana adalah "-" diikuti oleh karakter opsi pendek. Jika opsi memerlukan argumen (yang berlaku untuk opsi non-boolean apa pun), opsi tersebut dapat ditulis sebagai parameter terpisah, tetapi tidak perlu. Artinya, "-f out.txt" dan "-fout.txt" keduanya dapat diterima.

Dimungkinkan untuk menentukan beberapa opsi pendek setelah satu "-" selama semua (kecuali mungkin yang terakhir) tidak memerlukan argumen.

Opsi panjang dimulai dengan "--" diikuti oleh beberapa karakter. Jika opsi memerlukan argumen, opsi dapat ditulis langsung setelah nama opsi, dipisahkan dengan "=", atau sebagai argumen berikutnya. (Artinya, "--file=out.txt" atau "--file out.txt".)

Opsi panjang boolean '--name' secara otomatis mendapatkan pendamping '--no-name'. Diberikan opsi "--flag", maka, "--flag", "--no-flag", "--flag=true" dan "--flag=false" semuanya valid, meskipun tidak ada "--flag benar" atau "--flag false" diperbolehkan (karena "--flag" saja sudah cukup, "benar" atau "salah" berikut ini ditafsirkan secara terpisah). Anda dapat menggunakan "ya" dan "tidak" sebagai sinonim untuk "benar" dan "salah".

Setiap String yang tidak dimulai dengan "-" dan bukan argumen yang diperlukan dari opsi sebelumnya adalah argumen posisi non-opsi, seperti halnya semua String yang berurutan. Setiap String setelah "--" adalah argumen posisi non-opsi.

Bidang yang terkait dengan opsi diperbarui saat opsinya diproses. Argumen posisi yang tersisa dikembalikan sebagai List<String>.

Berikut adalah contoh sederhana:

 // Non-@Option fields will be ignored.
 class Options {
     @Option(name = "quiet", shortName = 'q')
     boolean quiet = false;

     // Here the user can use --no-color.
     @Option(name = "color")
     boolean color = true;

     @Option(name = "mode", shortName = 'm')
     String mode = "standard; // Supply a default just by setting the field.

     @Option(name = "port", shortName = 'p')
     int portNumber = 8888;

     // There's no need to offer a short name for rarely-used options.
     @Option(name = "timeout" )
     double timeout = 1.0;

     @Option(name = "output-file", shortName = 'o' })
     File output;

     // Multiple options are added to the collection.
     // The collection field itself must be non-null.
     @Option(name = "input-file", shortName = 'i')
     List<File> inputs = new ArrayList<File>();

 }

 Options options = new Options();
 List<String> posArgs = new OptionParser(options).parse("--input-file", "/tmp/file1.txt");
 for (File inputFile : options.inputs) {
     if (!options.quiet) {
        ...
     }
     ...

 }

 
Lihat juga:
  • halaman manual getopt(1)
  • Modul "optparse" Python (http://docs.python.org/library/optparse.html)
  • POSIX "Pedoman Sintaks Utilitas" (http://www.opengroup.org/onlinepubs/000095399/basedefs/xbd_chap12.html#tag_12_02)
  • GNU "Standar untuk Antarmuka Baris Perintah" (http://www.gnu.org/prep/standards/standards.html#Command_002dLine-Interfaces)

Lihat juga:

Ringkasan

Konstruktor publik

ArgsOptionParser ( optionSources) ArgsOptionParser ( optionSources)

Membuat ArgsOptionParser untuk koleksi benda-benda.

ArgsOptionParser (Object... optionSources)

Menciptakan ArgsOptionParser untuk satu atau lebih objek.

Metode publik

getInopOptions ()

Mengembalikan kumpulan opsi yang tidak mengubah nilai default apa pun.

static String getOptionHelp (boolean importantOnly, Object optionObject)

Output teks bantuan untuk semua Option bidang di pilihanObjek .

parse (String... args)

Mengurai argumen baris perintah 'args', menyetel bidang @Option dari 'optionSource' yang disediakan untuk konstruktor.

parse ( args) parse ( args)

Alternatif parse(String) metode yang mengambil ERROR(/List) dari argumen

parseBestEffort ( args) parseBestEffort ( args)

Alternatif parseBestEffort(String) metode yang mengambil ERROR(/List) dari argumen

parseBestEffort ( args, boolean forceContinue) parseBestEffort ( args, boolean forceContinue)

Alternatif parseBestEffort(String) metode yang mengambil ERROR(/List) argumen, dan dapat dipaksa untuk terus parsing sampai akhir, bahkan jika beberapa args tidak mengurai.

parseBestEffort (String... args)

Sebuah versi terbaik-upaya parse(String) .

void validateMandatoryOptions ()

Memvalidasi bahwa semua bidang yang ditandai sebagai wajib telah ditetapkan.

Konstruktor publik

ArgsOptionParser

public ArgsOptionParser ( optionSources)

Membuat ArgsOptionParser untuk koleksi benda-benda.

Parameter
optionSources : objek konfigurasi.

Melempar
ConfigurationException jika objek konfigurasi tidak dikonfigurasi dengan benar.

ArgsOptionParser

public ArgsOptionParser (Object... optionSources)

Menciptakan ArgsOptionParser untuk satu atau lebih objek.

Parameter
optionSources Object : konfigurasi objek.

Melempar
ConfigurationException jika objek konfigurasi tidak dikonfigurasi dengan benar.

Metode publik

getInopOptions

public  getInopOptions ()

Mengembalikan kumpulan opsi yang tidak mengubah nilai default apa pun.

Kembali

getOptionHelp

public static String getOptionHelp (boolean importantOnly, 
                Object optionObject)

Output teks bantuan untuk semua Option bidang di pilihanObjek .

Teks bantuan untuk masing-masing pilihan akan dalam format berikut

   [-option_shortname, --option_name]          [option_description] Default:
   [current option field's value in optionObject]
 
The 'Default ..." text akan dihilangkan jika bidang pilihan adalah nol atau kosong.

Parameter
importantOnly boolean : jika true hanya mencetak bantuan untuk opsi penting

optionObject Object : objek untuk cetak teks bantuan untuk

Kembali
String sebuah String yang berisi teks bantuan yang mudah digunakan untuk semua bidang Opsi

mengurai

public  parse (String... args)

Mengurai argumen baris perintah 'args', menyetel bidang @Option dari 'optionSource' yang disediakan untuk konstruktor.

Parameter
args String

Kembali
a ERROR(/List) dari argumen posisi yang tersisa setelah pengolahan semua pilihan.

Melempar
ConfigurationException jika terjadi kesalahan saat mengurai argumen.

mengurai

public  parse ( args)

Alternatif parse(String) metode yang mengambil ERROR(/List) dari argumen

Parameter
args

Kembali
a ERROR(/List) dari argumen posisi yang tersisa setelah pengolahan semua pilihan.

Melempar
ConfigurationException jika terjadi kesalahan saat mengurai argumen.

parseBestEffort

public  parseBestEffort ( args)

Alternatif parseBestEffort(String) metode yang mengambil ERROR(/List) dari argumen

Parameter
args

Kembali
a ERROR(/List) dari argumen yang tersisa

parseBestEffort

public  parseBestEffort ( args, 
                boolean forceContinue)

Alternatif parseBestEffort(String) metode yang mengambil ERROR(/List) argumen, dan dapat dipaksa untuk terus parsing sampai akhir, bahkan jika beberapa args tidak mengurai.

Parameter
args : daftar yang akan berisi args yang tersisa.

forceContinue boolean : Benar jika harus terus mengurai bahkan jika beberapa args tidak mengurai.

Kembali
a ERROR(/List) dari argumen yang tersisa

parseBestEffort

public  parseBestEffort (String... args)

Sebuah versi terbaik-upaya parse(String) . Jika ConfigurationException dilemparkan, pengecualian itu ditangkap secara internal, dan argumen yang tersisa (termasuk argumen yang menyebabkan pengecualian dilemparkan) dikembalikan. Metode ini tidak membuang.

Parameter
args String

Kembali
a ERROR(/List) dari argumen yang tersisa

validasiMandatoryOptions

public void validateMandatoryOptions ()

Memvalidasi bahwa semua bidang yang ditandai sebagai wajib telah ditetapkan.

Melempar
ConfigurationException