Package org.apache.felix.gogo.options
Class Options
- java.lang.Object
-
- org.apache.felix.gogo.options.Options
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.List<java.lang.String>argsprivate java.lang.String[]defArgsprivate java.lang.StringdefOptsprivate java.lang.Stringerrorprivate java.io.PrintStreamerrStreamprivate static intGROUP_ARG_1private static intGROUP_DEFAULTprivate static intGROUP_LONG_OPT_1private static intGROUP_LONG_OPT_2private static intGROUP_SHORT_OPT_1private static intGROUP_SHORT_OPT_2private java.lang.String[]gspecstatic java.lang.StringNLprivate java.util.Map<java.lang.String,java.lang.String>optAliasprivate java.util.Map<java.lang.String,java.lang.Object>optArgprivate booleanoptionsFirstprivate java.util.Map<java.lang.String,java.lang.String>optNameprivate java.util.Map<java.lang.String,java.lang.Boolean>optSetprivate java.util.regex.Patternparserprivate static java.lang.Stringregexprivate java.lang.String[]specprivate booleanstopOnBadOptionprivate java.util.regex.Patternunameprivate static java.lang.StringUNKNOWNprivate java.util.Map<java.lang.String,java.lang.Object>unmodifiableOptArgprivate java.util.Map<java.lang.String,java.lang.Boolean>unmodifiableOptSetprivate intusageIndexprivate java.lang.StringusageNameprivate java.util.List<java.lang.Object>xargs
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidaddArg(java.lang.String name, java.lang.Object value)java.util.List<java.lang.Object>argObjects()get remaining non-options args as Objects.java.util.List<java.lang.String>args()get remaining non-options args as Strings.static Optioncompile(java.lang.String optSpec)static Optioncompile(java.lang.String[] optSpec)static Optioncompile(java.lang.String[] optSpec, java.lang.String[] gspec)static Optioncompile(java.lang.String[] optSpec, Option gopt)java.lang.Stringget(java.lang.String name)get value of named option.java.util.List<java.lang.String>getList(java.lang.String name)get list of all values for named option.intgetNumber(java.lang.String name)get value of named option as a Number.java.lang.ObjectgetObject(java.lang.String name)get value of named option as an Object.java.util.List<java.lang.Object>getObjectList(java.lang.String name)get list of all Object values for named option.booleanisSet(java.lang.String name)test whether specified option has been explicitly set.static voidmain(java.lang.String[] args)Optionparse(java.lang.Object[] argv)parse arguments.Optionparse(java.lang.Object[] argv, boolean skipArg0)parse arguments.Optionparse(java.util.List<?> argv)parse arguments.Optionparse(java.util.List<?> argv, boolean skipArg0)parse arguments.private voidparseSpec(java.util.Map<java.lang.String,java.lang.Boolean> myOptSet, java.util.Map<java.lang.String,java.lang.Object> myOptArg)parse option spec.private voidreset()OptionsetOptionsFirst(boolean optionsFirst)require options to precede args.OptionsetStopOnBadOption(boolean stopOnBadOption)stop parsing on the first unknown option.java.lang.StringtoString()voidusage()print usage message to System.err.java.lang.IllegalArgumentExceptionusageError(java.lang.String s)prints usage message and returns IllegalArgumentException, for you to throw.
-
-
-
Field Detail
-
NL
public static final java.lang.String NL
-
regex
private static final java.lang.String regex
- See Also:
- Constant Field Values
-
GROUP_SHORT_OPT_1
private static final int GROUP_SHORT_OPT_1
- See Also:
- Constant Field Values
-
GROUP_SHORT_OPT_2
private static final int GROUP_SHORT_OPT_2
- See Also:
- Constant Field Values
-
GROUP_LONG_OPT_1
private static final int GROUP_LONG_OPT_1
- See Also:
- Constant Field Values
-
GROUP_ARG_1
private static final int GROUP_ARG_1
- See Also:
- Constant Field Values
-
GROUP_LONG_OPT_2
private static final int GROUP_LONG_OPT_2
- See Also:
- Constant Field Values
-
GROUP_DEFAULT
private static final int GROUP_DEFAULT
- See Also:
- Constant Field Values
-
parser
private final java.util.regex.Pattern parser
-
uname
private final java.util.regex.Pattern uname
-
unmodifiableOptSet
private final java.util.Map<java.lang.String,java.lang.Boolean> unmodifiableOptSet
-
unmodifiableOptArg
private final java.util.Map<java.lang.String,java.lang.Object> unmodifiableOptArg
-
optSet
private final java.util.Map<java.lang.String,java.lang.Boolean> optSet
-
optArg
private final java.util.Map<java.lang.String,java.lang.Object> optArg
-
optName
private final java.util.Map<java.lang.String,java.lang.String> optName
-
optAlias
private final java.util.Map<java.lang.String,java.lang.String> optAlias
-
xargs
private final java.util.List<java.lang.Object> xargs
-
args
private java.util.List<java.lang.String> args
-
UNKNOWN
private static final java.lang.String UNKNOWN
- See Also:
- Constant Field Values
-
usageName
private java.lang.String usageName
-
usageIndex
private int usageIndex
-
spec
private final java.lang.String[] spec
-
gspec
private final java.lang.String[] gspec
-
defOpts
private final java.lang.String defOpts
-
defArgs
private final java.lang.String[] defArgs
-
errStream
private java.io.PrintStream errStream
-
error
private java.lang.String error
-
optionsFirst
private boolean optionsFirst
-
stopOnBadOption
private boolean stopOnBadOption
-
-
Constructor Detail
-
Options
private Options(java.lang.String[] spec, java.lang.String[] gspec, Option opt)
-
-
Method Detail
-
main
public static void main(java.lang.String[] args)
-
compile
public static Option compile(java.lang.String[] optSpec)
-
compile
public static Option compile(java.lang.String optSpec)
-
compile
public static Option compile(java.lang.String[] optSpec, java.lang.String[] gspec)
-
setStopOnBadOption
public Option setStopOnBadOption(boolean stopOnBadOption)
Description copied from interface:Optionstop parsing on the first unknown option. This allows one parser to get its own options and then pass the remaining options to another parser.- Specified by:
setStopOnBadOptionin interfaceOption- Parameters:
stopOnBadOption- stopOnBadOption- Returns:
- Option
-
setOptionsFirst
public Option setOptionsFirst(boolean optionsFirst)
Description copied from interface:Optionrequire options to precede args. Default is false, so options can appear between or after args.- Specified by:
setOptionsFirstin interfaceOption- Parameters:
optionsFirst- optionsFirst- Returns:
- Option
-
isSet
public boolean isSet(java.lang.String name)
Description copied from interface:Optiontest whether specified option has been explicitly set.
-
getObject
public java.lang.Object getObject(java.lang.String name)
Description copied from interface:Optionget value of named option as an Object. If multiple options given, this method returns the last one. UseOption.getObjectList(String)to get all values.
-
getObjectList
public java.util.List<java.lang.Object> getObjectList(java.lang.String name)
Description copied from interface:Optionget list of all Object values for named option.- Specified by:
getObjectListin interfaceOption- Parameters:
name- the name- Returns:
- List<Object>
-
getList
public java.util.List<java.lang.String> getList(java.lang.String name)
Description copied from interface:Optionget list of all values for named option.
-
addArg
private void addArg(java.lang.String name, java.lang.Object value)
-
get
public java.lang.String get(java.lang.String name)
Description copied from interface:Optionget value of named option. If multiple options given, this method returns the last one. UseOption.getList(String)to get all values.
-
getNumber
public int getNumber(java.lang.String name)
Description copied from interface:Optionget value of named option as a Number.
-
argObjects
public java.util.List<java.lang.Object> argObjects()
Description copied from interface:Optionget remaining non-options args as Objects.- Specified by:
argObjectsin interfaceOption- Returns:
- List<Object>
-
args
public java.util.List<java.lang.String> args()
Description copied from interface:Optionget remaining non-options args as Strings.
-
usage
public void usage()
Description copied from interface:Optionprint usage message to System.err.
-
usageError
public java.lang.IllegalArgumentException usageError(java.lang.String s)
prints usage message and returns IllegalArgumentException, for you to throw.- Specified by:
usageErrorin interfaceOption- Parameters:
s- the error- Returns:
- IllegalArgumentException
-
parseSpec
private void parseSpec(java.util.Map<java.lang.String,java.lang.Boolean> myOptSet, java.util.Map<java.lang.String,java.lang.Object> myOptArg)parse option spec.
-
reset
private void reset()
-
parse
public Option parse(java.lang.Object[] argv)
Description copied from interface:Optionparse arguments. SeeOption.parse(List, boolean)
-
parse
public Option parse(java.util.List<?> argv)
Description copied from interface:Optionparse arguments. SeeOption.parse(List, boolean)
-
parse
public Option parse(java.lang.Object[] argv, boolean skipArg0)
Description copied from interface:Optionparse arguments. SeeOption.parse(List, boolean)
-
parse
public Option parse(java.util.List<?> argv, boolean skipArg0)
Description copied from interface:Optionparse arguments. If skipArgv0 is true, then parsing begins at arg1. This allows for commands where argv0 is the command name rather than a real argument.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-