Package org.springframework.core.env
Class JOptCommandLinePropertySource
java.lang.Object
org.springframework.core.env.PropertySource<T>
org.springframework.core.env.EnumerablePropertySource<T>
org.springframework.core.env.CommandLinePropertySource<joptsimple.OptionSet>
org.springframework.core.env.JOptCommandLinePropertySource
CommandLinePropertySource implementation backed by a JOpt OptionSet.
Typical usage
Configure and execute anOptionParser 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.
Requires JOpt Simple version 4.3 or higher. Tested against JOpt up until 5.0.
- Since:
- 3.1
- Author:
- Chris Beams, Juergen Hoeller, Dave Syer
- See Also:
-
CommandLinePropertySourceOptionParserOptionSet
-
Nested Class Summary
Nested classes/interfaces inherited from class org.springframework.core.env.PropertySource
PropertySource.StubPropertySource -
Field Summary
Fields inherited from class org.springframework.core.env.CommandLinePropertySource
COMMAND_LINE_PROPERTY_SOURCE_NAME, DEFAULT_NON_OPTION_ARGS_PROPERTY_NAMEFields inherited from class org.springframework.core.env.PropertySource
logger, name, source -
Constructor Summary
ConstructorsConstructorDescriptionJOptCommandLinePropertySource(String name, joptsimple.OptionSet options) Create a newJOptCommandLinePropertySourcehaving the given name and backed by the givenOptionSet.JOptCommandLinePropertySource(joptsimple.OptionSet options) Create a newJOptCommandLinePropertySourcehaving the default name and backed by the givenOptionSet. -
Method Summary
Modifier and TypeMethodDescriptionprotected booleancontainsOption(String name) Return whether the set of option arguments parsed from the command line contains an option with the given name.Return the collection of non-option arguments parsed from the command line.getOptionValues(String name) Return the collection of values associated with the command line option having the given name.String[]Return the names of all properties contained by the source object (nevernull).Methods inherited from class org.springframework.core.env.CommandLinePropertySource
containsProperty, getProperty, setNonOptionArgsPropertyName
-
Constructor Details
-
JOptCommandLinePropertySource
public JOptCommandLinePropertySource(joptsimple.OptionSet options) Create a newJOptCommandLinePropertySourcehaving the default name and backed by the givenOptionSet. -
JOptCommandLinePropertySource
Create a newJOptCommandLinePropertySourcehaving the given name and backed by the givenOptionSet.
-
-
Method Details
-
containsOption
Description copied from class:CommandLinePropertySourceReturn whether the set of option arguments parsed from the command line contains an option with the given name.- Specified by:
containsOptionin classCommandLinePropertySource<joptsimple.OptionSet>
-
getPropertyNames
Description copied from class:EnumerablePropertySourceReturn the names of all properties contained by the source object (nevernull).- Specified by:
getPropertyNamesin classEnumerablePropertySource<joptsimple.OptionSet>
-
getOptionValues
Description copied from class:CommandLinePropertySourceReturn 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:
getOptionValuesin classCommandLinePropertySource<joptsimple.OptionSet>
- if the option is present and has no argument (e.g.: "--foo"), return an empty
collection (
-
getNonOptionArgs
Description copied from class:CommandLinePropertySourceReturn the collection of non-option arguments parsed from the command line. Nevernull.- Specified by:
getNonOptionArgsin classCommandLinePropertySource<joptsimple.OptionSet>
-