org.springframework.core.env
Class JOptCommandLinePropertySource
java.lang.Object
org.springframework.core.env.PropertySource<T>
org.springframework.core.env.CommandLinePropertySource<joptsimple.OptionSet>
org.springframework.core.env.JOptCommandLinePropertySource
public class JOptCommandLinePropertySource
- extends CommandLinePropertySource<joptsimple.OptionSet>
CommandLinePropertySource implementation backed by a JOpt OptionSet.
Typical usage
Configure and execute an OptionParser against the String[] of arguments
supplied to the main method, and create a JOptCommandLinePropertySource
using the resulting OptionSet object:
public static void main(String[] args) {
OptionParser parser = new OptionParser();
parser.accepts("option1");
parser.accepts("option2").withRequiredArg();
OptionSet options = parser.parse(args);
PropertySource> ps = new JOptCommandLinePropertySource(options);
// ...
}
See CommandLinePropertySource for complete general usage examples.
Requirements
Use of this class requires adding the jopt-simple JAR to your application classpath.
Versions 3.0 and better are supported.
- Since:
- 3.1
- Author:
- Chris Beams
- See Also:
CommandLinePropertySource,
OptionParser,
OptionSet
|
Constructor Summary |
JOptCommandLinePropertySource(joptsimple.OptionSet options)
Create a new JOptCommandLinePropertySource having the default name
and backed by the given OptionSet. |
JOptCommandLinePropertySource(String name,
joptsimple.OptionSet options)
Create a new JOptCommandLinePropertySource having the given name
and backed by the given OptionSet. |
|
Method Summary |
protected boolean |
containsOption(String name)
Return whether the set of option arguments parsed from the command line contains
an option with the given name. |
protected List<String> |
getNonOptionArgs()
Return the collection of non-option arguments parsed from the command line. |
List<String> |
getOptionValues(String name)
Return the collection of values associated with the command line option having the
given name. |
JOptCommandLinePropertySource
public JOptCommandLinePropertySource(joptsimple.OptionSet options)
- Create a new
JOptCommandLinePropertySource having the default name
and backed by the given OptionSet.
- See Also:
CommandLinePropertySource.COMMAND_LINE_PROPERTY_SOURCE_NAME,
CommandLinePropertySource.CommandLinePropertySource(Object)
JOptCommandLinePropertySource
public JOptCommandLinePropertySource(String name,
joptsimple.OptionSet options)
- Create a new
JOptCommandLinePropertySource having the given name
and backed by the given OptionSet.
containsOption
protected boolean containsOption(String name)
- Description copied from class:
CommandLinePropertySource
- Return whether the set of option arguments parsed from the command line contains
an option with the given name.
- Specified by:
containsOption in class CommandLinePropertySource<joptsimple.OptionSet>
getOptionValues
public List<String> getOptionValues(String name)
- Description copied from class:
CommandLinePropertySource
- Return the collection of values associated with the command line option having the
given name.
- if the option is present and has no argument (e.g.: "--foo"), return an empty
collection (
[])
- if the option is present and has a single value (e.g. "--foo=bar"), return a
collection having one element (
["bar"])
- if the option is present and the underlying command line parsing library
supports multiple arguments (e.g. "--foo=bar --foo=baz"), return a collection
having elements for each value (
["bar", "baz"])
- if the option is not present, return
null
- Specified by:
getOptionValues in class CommandLinePropertySource<joptsimple.OptionSet>
getNonOptionArgs
protected List<String> getNonOptionArgs()
- Description copied from class:
CommandLinePropertySource
- Return the collection of non-option arguments parsed from the command line. Never
null.
- Specified by:
getNonOptionArgs in class CommandLinePropertySource<joptsimple.OptionSet>