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>
args
private java.lang.String[]
defArgs
private java.lang.String
defOpts
private java.lang.String
error
private java.io.PrintStream
errStream
private static int
GROUP_ARG_1
private static int
GROUP_DEFAULT
private static int
GROUP_LONG_OPT_1
private static int
GROUP_LONG_OPT_2
private static int
GROUP_SHORT_OPT_1
private static int
GROUP_SHORT_OPT_2
private java.lang.String[]
gspec
static java.lang.String
NL
private java.util.Map<java.lang.String,java.lang.String>
optAlias
private java.util.Map<java.lang.String,java.lang.Object>
optArg
private boolean
optionsFirst
private java.util.Map<java.lang.String,java.lang.String>
optName
private java.util.Map<java.lang.String,java.lang.Boolean>
optSet
private java.util.regex.Pattern
parser
private static java.lang.String
regex
private java.lang.String[]
spec
private boolean
stopOnBadOption
private java.util.regex.Pattern
uname
private static java.lang.String
UNKNOWN
private java.util.Map<java.lang.String,java.lang.Object>
unmodifiableOptArg
private java.util.Map<java.lang.String,java.lang.Boolean>
unmodifiableOptSet
private int
usageIndex
private java.lang.String
usageName
private java.util.List<java.lang.Object>
xargs
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
addArg(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 Option
compile(java.lang.String optSpec)
static Option
compile(java.lang.String[] optSpec)
static Option
compile(java.lang.String[] optSpec, java.lang.String[] gspec)
static Option
compile(java.lang.String[] optSpec, Option gopt)
java.lang.String
get(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.int
getNumber(java.lang.String name)
get value of named option as a Number.java.lang.Object
getObject(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.boolean
isSet(java.lang.String name)
test whether specified option has been explicitly set.static void
main(java.lang.String[] args)
Option
parse(java.lang.Object[] argv)
parse arguments.Option
parse(java.lang.Object[] argv, boolean skipArg0)
parse arguments.Option
parse(java.util.List<?> argv)
parse arguments.Option
parse(java.util.List<?> argv, boolean skipArg0)
parse arguments.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.private void
reset()
Option
setOptionsFirst(boolean optionsFirst)
require options to precede args.Option
setStopOnBadOption(boolean stopOnBadOption)
stop parsing on the first unknown option.java.lang.String
toString()
void
usage()
print usage message to System.err.java.lang.IllegalArgumentException
usageError(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:Option
stop 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:
setStopOnBadOption
in interfaceOption
- Parameters:
stopOnBadOption
- stopOnBadOption- Returns:
- Option
-
setOptionsFirst
public Option setOptionsFirst(boolean optionsFirst)
Description copied from interface:Option
require options to precede args. Default is false, so options can appear between or after args.- Specified by:
setOptionsFirst
in interfaceOption
- Parameters:
optionsFirst
- optionsFirst- Returns:
- Option
-
isSet
public boolean isSet(java.lang.String name)
Description copied from interface:Option
test whether specified option has been explicitly set.
-
getObject
public java.lang.Object getObject(java.lang.String name)
Description copied from interface:Option
get 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:Option
get list of all Object values for named option.- Specified by:
getObjectList
in 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:Option
get 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:Option
get 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:Option
get value of named option as a Number.
-
argObjects
public java.util.List<java.lang.Object> argObjects()
Description copied from interface:Option
get remaining non-options args as Objects.- Specified by:
argObjects
in interfaceOption
- Returns:
- List<Object>
-
args
public java.util.List<java.lang.String> args()
Description copied from interface:Option
get remaining non-options args as Strings.
-
usage
public void usage()
Description copied from interface:Option
print 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:
usageError
in 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:Option
parse arguments. SeeOption.parse(List, boolean)
-
parse
public Option parse(java.util.List<?> argv)
Description copied from interface:Option
parse arguments. SeeOption.parse(List, boolean)
-
parse
public Option parse(java.lang.Object[] argv, boolean skipArg0)
Description copied from interface:Option
parse arguments. SeeOption.parse(List, boolean)
-
parse
public Option parse(java.util.List<?> argv, boolean skipArg0)
Description copied from interface:Option
parse 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:
toString
in classjava.lang.Object
-
-