Google は、黒人コミュニティに対する人種平等の促進に取り組んでいます。取り組みを見る
このページは Cloud Translation API によって翻訳されました。
Switch to English

ArgsOptionParser

public class ArgsOptionParser
extends OptionSetter

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


移入のOption解析されたコマンドライン引数のフィールド。

渡された文字列[]内の文字列は、左から右へ解析されます。各文字列は、(例えば「--verbose」という)ロングオプション(例えば、「-v」のような)短いオプションとして分類され、そのような「中「out.txtを」などのオプションの引数(-f out.txtを「)、または非オプションの位置引数。

各オプションの引数には、一の以上にマップする必要がありますOptionフィールド。長いオプションはにマップするOption名、および短いオプションがにマップOption短い名前。各オプション名とオプションの短い名前は、他のすべてに対して一意でなければなりませんOption同じオブジェクト内のフィールド。

1つのオプションの引数は複数にマッピングされ得ることができますOption複数のオブジェクト間で同じ名前を持つフィールド。 Optionの引数を一意に参照するために名前空間することができますOption 、そのオブジェクトの完全なクラス名またはその使用して、単一のオブジェクト内のフィールドOptionClass別名値が区切らを「:」。すなわち

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

「 - 」短いオプション文字に続いて、簡単な短いオプションがあります。オプション(任意の非ブールオプションの真である)の引数を必要とする場合、それは別のパラメータとして書かれていますが、である必要はないことがあります。 「-f out.txtを」と「-fout.txt」であることの両方許容されます。

「 - 」限り、すべてが(おそらく最後を除く)として、引数を必要としないことは、単一の後に複数の短いオプションを指定することが可能です。

長いオプションは、で始まる「 - 」いくつかの文字が続きます。オプションが引数を必要とする場合、それは「=」、または次の引数としてで区切られ、オプション名の後に直接書き込むことができます。 (すなわち、 "--file = out.txtを" または "--file out.txtを" です。)

「--name」は自動的に「--no-名」コンパニオンを取得するブール長いオプション。オプション "--flag"、そして、 "--flag"、 "--no-フラグ"、 "--flag =真" と "--flag = false" を、すべて有効であるかのどちらも「--flagを考えます真」や 『偽--flagは』(--flag 『単独では十分であり、以下の『true』または『false』が別々に解釈されているので)許可され』。あなたは使用することができ、「はい」と「いいえ」の同義語として「真」と「偽」。

「 - 」の各文字列で始まらないし、ない前のオプションに必要な引数は、ように、すべての連続した文字列があり、非オプションの位置引数です。 「 - 」の後の各文字列は、非オプションの位置引数です。

そのオプションが処理されるようなオプションに対応するフィールドが更新されます。残りの位置引数は、List <文字列>として返されます。

ここでは簡単な例です:

 // 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) {
        ...
     }
     ...

 }

 
参照してください:
  • getopt(1)のmanページ
  • Pythonの "optparseは" モジュール(http://docs.python.org/library/optparse.html)
  • POSIX「ユーティリティの構文のガイドライン」(http://www.opengroup.org/onlinepubs/000095399/basedefs/xbd_chap12.html#tag_12_02)
  • GNU「コマンドラインインターフェイスのための基準」(http://www.gnu.org/prep/standards/standards.html#Command_002dLine-Interfaces)

参照してください:

概要

publicコンストラクタ

ArgsOptionParser ( optionSources) ArgsOptionParser ( optionSources)

作成しArgsOptionParserオブジェクトのコレクションのために。

ArgsOptionParser (Object... optionSources)

作成ArgsOptionParser 1つまたは複数のオブジェクトのために。

パブリック・メソッド

static String getOptionHelp (boolean importantOnly, Object optionObject)

すべてのための出力ヘルプテキストOptionのフィールド optionObject 。

parse (String... args)

コンストラクタに提供さ「optionSource」の@optionフィールドを設定するコマンドライン引数「引数」を、解析します。

parse ( args) parse ( args)

代替parse(String)取る方法ERROR(/List)の引数を

parseBestEffort ( args) parseBestEffort ( args)

代替parseBestEffort(String)取る方法ERROR(/List)の引数を

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

代替parseBestEffort(String)取る方法ERROR(/List)引数のを、そしていくつかの引数を解析していない場合でも、最後まで構文解析を継続するように強制することができます。

parseBestEffort (String... args)

ベストエフォート型のバージョンparse(String)

void validateMandatoryOptions ()

必須としてマークされたすべてのフィールドが設定されていることを検証します。

publicコンストラクタ

ArgsOptionParser

public ArgsOptionParser ( optionSources)

作成しArgsOptionParserオブジェクトのコレクションのために。

パラメーター
optionSources :configがオブジェクト。

スロー
ConfigurationException 設定オブジェクトが正しく設定されている場合。

ArgsOptionParser

public ArgsOptionParser (Object... optionSources)

作成ArgsOptionParser 1つまたは複数のオブジェクトのために。

パラメーター
optionSources Object :設定オブジェクト。

スロー
ConfigurationException 設定オブジェクトが正しく設定されている場合。

パブリック・メソッド

getOptionHelp

public static String getOptionHelp (boolean importantOnly, 
                Object optionObject)

すべてのための出力ヘルプテキストOptionのフィールド optionObject 。

各オプションのヘルプテキストは、次の形式になります

   [-option_shortname, --option_name]          [option_description] Default:
   [current option field's value in optionObject]
 
「デフォルト...」オプションフィールドがNULLまたは空の場合、テキストは省略する。

パラメーター
importantOnly boolean :もしtrue重要なオプションのための唯一の印刷ヘルプ

optionObject Object :のヘルプテキストを印刷するためのオブジェクト

戻り値
String すべてのオプションフィールドのユーザーフレンドリーなヘルプテキストを含むString

パース

public  parse (String... args)

コンストラクタに提供さ「optionSource」の@optionフィールドを設定するコマンドライン引数「引数」を、解析します。

パラメーター
args String

戻り値
ERROR(/List)位置引数のは、すべてのオプションを処理した後に残りました。

スロー
ConfigurationException エラーが発生した場合は、引数を解析します。

パース

public  parse ( args)

代替parse(String)取る方法ERROR(/List)の引数を

パラメーター
args

戻り値
ERROR(/List)位置引数のは、すべてのオプションを処理した後に残りました。

スロー
ConfigurationException エラーが発生した場合は、引数を解析します。

parseBestEffort

public  parseBestEffort ( args)

代替parseBestEffort(String)取る方法ERROR(/List)の引数を

パラメーター
args

戻り値
ERROR(/List)残された引数の

parseBestEffort

public  parseBestEffort ( args, 
                boolean forceContinue)

代替parseBestEffort(String)取る方法ERROR(/List)引数のを、そしていくつかの引数を解析していない場合でも、最後まで構文解析を継続するように強制することができます。

パラメーター
args :引数の上で左が含まれていますリスト。

forceContinue boolean :それはいくつかの引数を解析していない場合でも、解析を継続すべきである場合はTrue。

戻り値
ERROR(/List)残された引数の

parseBestEffort

public  parseBestEffort (String... args)

ベストエフォート型のバージョンparse(String) 。 ConfigurationExceptionががスローされた場合、その例外は内部で捕獲され、そして(スローされる例外を発生させた引数を含む)残りの引数が返されます。この方法はスローされません。

パラメーター
args String

戻り値
ERROR(/List)残された引数の

validateMandatoryOptions

public void validateMandatoryOptions ()

必須としてマークされたすべてのフィールドが設定されていることを検証します。

スロー
ConfigurationException