Package org.apache.commons.cli
Class Options
- java.lang.Object
-
- org.apache.commons.cli.Options
-
- All Implemented Interfaces:
java.io.Serializable
public class Options extends java.lang.Object implements java.io.Serializable
Main entry-point into the library.Options represents a collection of
Option
objects, which describe the possible options for a command-line.It may flexibly parse long and short options, with or without values. Additionally, it may parse only a portion of a commandline, allowing for flexible multi-stage parsing.
- See Also:
CommandLine
, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Map<java.lang.String,Option>
longOpts
a map of the options with the long keyprivate java.util.Map<java.lang.String,OptionGroup>
optionGroups
a map of the option groupsprivate java.util.List<java.lang.Object>
requiredOpts
a map of the required optionsprivate static long
serialVersionUID
The serial version UID.private java.util.Map<java.lang.String,Option>
shortOpts
a map of the options with the character key
-
Constructor Summary
Constructors Constructor Description Options()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Options
addOption(java.lang.String opt, boolean hasArg, java.lang.String description)
Add an option that only contains a short-name.Options
addOption(java.lang.String opt, java.lang.String description)
Add an option that only contains a short name.Options
addOption(java.lang.String opt, java.lang.String longOpt, boolean hasArg, java.lang.String description)
Add an option that contains a short-name and a long-name.Options
addOption(Option opt)
Adds an option instanceOptions
addOptionGroup(OptionGroup group)
Add the specified option group.Options
addRequiredOption(java.lang.String opt, java.lang.String longOpt, boolean hasArg, java.lang.String description)
Add an option that contains a short-name and a long-name.java.util.List<java.lang.String>
getMatchingOptions(java.lang.String opt)
Gets the options with a long name starting with the name specified.Option
getOption(java.lang.String opt)
Gets theOption
matching the long or short name specified.OptionGroup
getOptionGroup(Option opt)
Gets the OptionGroup theopt
belongs to.(package private) java.util.Collection<OptionGroup>
getOptionGroups()
Gets the OptionGroups that are members of this Options instance.java.util.Collection<Option>
getOptions()
Gets a read-only list of options in this setjava.util.List
getRequiredOptions()
Gets the required options.boolean
hasLongOption(java.lang.String opt)
boolean
hasOption(java.lang.String opt)
boolean
hasShortOption(java.lang.String opt)
(package private) java.util.List<Option>
helpOptions()
Returns the Options for use by the HelpFormatter.java.lang.String
toString()
Dump state, suitable for debugging.
-
-
-
Field Detail
-
serialVersionUID
private static final long serialVersionUID
The serial version UID.- See Also:
- Constant Field Values
-
shortOpts
private final java.util.Map<java.lang.String,Option> shortOpts
a map of the options with the character key
-
longOpts
private final java.util.Map<java.lang.String,Option> longOpts
a map of the options with the long key
-
requiredOpts
private final java.util.List<java.lang.Object> requiredOpts
a map of the required options
-
optionGroups
private final java.util.Map<java.lang.String,OptionGroup> optionGroups
a map of the option groups
-
-
Method Detail
-
addOption
public Options addOption(Option opt)
Adds an option instance- Parameters:
opt
- the option that is to be added- Returns:
- the resulting Options instance
-
addOption
public Options addOption(java.lang.String opt, boolean hasArg, java.lang.String description)
Add an option that only contains a short-name.It may be specified as requiring an argument.
- Parameters:
opt
- Short single-character name of the option.hasArg
- flag signalling if an argument is required after this optiondescription
- Self-documenting description- Returns:
- the resulting Options instance
-
addOption
public Options addOption(java.lang.String opt, java.lang.String description)
Add an option that only contains a short name.The option does not take an argument.
- Parameters:
opt
- Short single-character name of the option.description
- Self-documenting description- Returns:
- the resulting Options instance
- Since:
- 1.3
-
addOption
public Options addOption(java.lang.String opt, java.lang.String longOpt, boolean hasArg, java.lang.String description)
Add an option that contains a short-name and a long-name.It may be specified as requiring an argument.
- Parameters:
opt
- Short single-character name of the option.longOpt
- Long multi-character name of the option.hasArg
- flag signalling if an argument is required after this optiondescription
- Self-documenting description- Returns:
- the resulting Options instance
-
addOptionGroup
public Options addOptionGroup(OptionGroup group)
Add the specified option group.- Parameters:
group
- the OptionGroup that is to be added- Returns:
- the resulting Options instance
-
addRequiredOption
public Options addRequiredOption(java.lang.String opt, java.lang.String longOpt, boolean hasArg, java.lang.String description)
Add an option that contains a short-name and a long-name.The added option is set as required. It may be specified as requiring an argument. This method is a shortcut for:
Options option = new Option(opt, longOpt, hasArg, description); option.setRequired(true); options.add(option);
- Parameters:
opt
- Short single-character name of the option.longOpt
- Long multi-character name of the option.hasArg
- flag signalling if an argument is required after this optiondescription
- Self-documenting description- Returns:
- the resulting Options instance
- Since:
- 1.4
-
getMatchingOptions
public java.util.List<java.lang.String> getMatchingOptions(java.lang.String opt)
Gets the options with a long name starting with the name specified.- Parameters:
opt
- the partial name of the option- Returns:
- the options matching the partial name specified, or an empty list if none matches
- Since:
- 1.3
-
getOption
public Option getOption(java.lang.String opt)
Gets theOption
matching the long or short name specified.The leading hyphens in the name are ignored (up to 2).
- Parameters:
opt
- short or long name of theOption
- Returns:
- the option represented by opt
-
getOptionGroup
public OptionGroup getOptionGroup(Option opt)
Gets the OptionGroup theopt
belongs to.- Parameters:
opt
- the option whose OptionGroup is being queried.- Returns:
- the OptionGroup if
opt
is part of an OptionGroup, otherwise return null
-
getOptionGroups
java.util.Collection<OptionGroup> getOptionGroups()
Gets the OptionGroups that are members of this Options instance.- Returns:
- a Collection of OptionGroup instances.
-
getOptions
public java.util.Collection<Option> getOptions()
Gets a read-only list of options in this set- Returns:
- read-only Collection of
Option
objects in this descriptor
-
getRequiredOptions
public java.util.List getRequiredOptions()
Gets the required options.- Returns:
- read-only List of required options
-
hasLongOption
public boolean hasLongOption(java.lang.String opt)
-
hasOption
public boolean hasOption(java.lang.String opt)
-
hasShortOption
public boolean hasShortOption(java.lang.String opt)
-
helpOptions
java.util.List<Option> helpOptions()
Returns the Options for use by the HelpFormatter.- Returns:
- the List of Options
-
toString
public java.lang.String toString()
Dump state, suitable for debugging.- Overrides:
toString
in classjava.lang.Object
- Returns:
- Stringified form of this object
-
-