Package org.apache.commons.cli
Class PatternOptionBuilder
- java.lang.Object
-
- org.apache.commons.cli.PatternOptionBuilder
-
public class PatternOptionBuilder extends java.lang.Object
Allows Options to be created from a single String. The pattern contains various single character flags and via an optional punctuation character, their expected type.Overview of PatternOptionBuilder patterns a -a flag b@ -b [class name] c> -c [file name] d+ -d [class name] (creates object via empty constructor) e% -e [number] (creates Double/Long instance depending on existing of a '.') f/ -f [URL] g: -g [string] For example, the following allows command line flags of '-v -p string-value -f /dir/file'. The exclamation mark precede a mandatory option.
Options options = PatternOptionBuilder.parsePattern("vp:!f/");
TODO These need to break out to OptionType and also to be pluggable.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.Class<?>
CLASS_VALUE
Class classstatic java.lang.Class<java.util.Date>
DATE_VALUE
Date classstatic java.lang.Class<java.io.FileInputStream>
EXISTING_FILE_VALUE
FileInputStream classstatic java.lang.Class<java.io.File>
FILE_VALUE
File classstatic java.lang.Class<java.io.File[]>
FILES_VALUE
File array classstatic java.lang.Class<java.lang.Number>
NUMBER_VALUE
Number classstatic java.lang.Class<java.lang.Object>
OBJECT_VALUE
Object classstatic java.lang.Class<java.lang.String>
STRING_VALUE
String classprivate static Converter<?,java.lang.UnsupportedOperationException>
UNSUPPORTED
The converter to use for Unimplemented data typesstatic java.lang.Class<java.net.URL>
URL_VALUE
URL class
-
Constructor Summary
Constructors Constructor Description PatternOptionBuilder()
-
Method Summary
All Methods Static Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static java.lang.Object
getValueClass(char ch)
Deprecated.static java.lang.Class<?>
getValueType(char ch)
Retrieve the class thatch
represents.static boolean
isValueCode(char ch)
Returns whetherch
is a value code, i.e.static Options
parsePattern(java.lang.String pattern)
Returns theOptions
instance represented bypattern
.(package private) static <T> T
unsupported()
-
-
-
Field Detail
-
STRING_VALUE
public static final java.lang.Class<java.lang.String> STRING_VALUE
String class
-
OBJECT_VALUE
public static final java.lang.Class<java.lang.Object> OBJECT_VALUE
Object class
-
NUMBER_VALUE
public static final java.lang.Class<java.lang.Number> NUMBER_VALUE
Number class
-
DATE_VALUE
public static final java.lang.Class<java.util.Date> DATE_VALUE
Date class
-
CLASS_VALUE
public static final java.lang.Class<?> CLASS_VALUE
Class class
-
EXISTING_FILE_VALUE
public static final java.lang.Class<java.io.FileInputStream> EXISTING_FILE_VALUE
FileInputStream class
-
FILE_VALUE
public static final java.lang.Class<java.io.File> FILE_VALUE
File class
-
FILES_VALUE
public static final java.lang.Class<java.io.File[]> FILES_VALUE
File array class
-
URL_VALUE
public static final java.lang.Class<java.net.URL> URL_VALUE
URL class
-
UNSUPPORTED
private static final Converter<?,java.lang.UnsupportedOperationException> UNSUPPORTED
The converter to use for Unimplemented data types
-
-
Method Detail
-
getValueClass
@Deprecated public static java.lang.Object getValueClass(char ch)
Deprecated.Retrieve the class thatch
represents.- Parameters:
ch
- the specified character- Returns:
- The class that
ch
represents
-
getValueType
public static java.lang.Class<?> getValueType(char ch)
Retrieve the class thatch
represents.- Parameters:
ch
- the specified character- Returns:
- The class that
ch
represents - Since:
- 1.7.0
-
isValueCode
public static boolean isValueCode(char ch)
Returns whetherch
is a value code, i.e. whether it represents a class in a pattern.- Parameters:
ch
- the specified character- Returns:
- true if
ch
is a value code, otherwise false.
-
parsePattern
public static Options parsePattern(java.lang.String pattern)
Returns theOptions
instance represented bypattern
.- Parameters:
pattern
- the pattern string- Returns:
- The
Options
instance
-
unsupported
static <T> T unsupported()
-
-