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
public class JOptCommandLinePropertySource extends CommandLinePropertySource<joptsimple.OptionSet>
CommandLinePropertySourceimplementation backed by a JOptOptionSet.Typical usage
Configure and execute anOptionParseragainst theString[]of arguments supplied to themainmethod, and create aJOptCommandLinePropertySourceusing the resultingOptionSetobject: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); // ... }SeeCommandLinePropertySourcefor 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:
CommandLinePropertySource,OptionParser,OptionSet
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_NAME
Fields inherited from class org.springframework.core.env.PropertySource
logger, name, source
Constructor Summary
Constructors Constructor Description JOptCommandLinePropertySource(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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleancontainsOption(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.String[]getPropertyNames()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 Detail
JOptCommandLinePropertySource
public JOptCommandLinePropertySource(joptsimple.OptionSet options)
Create a newJOptCommandLinePropertySourcehaving the default name and backed by the givenOptionSet.
JOptCommandLinePropertySource
public JOptCommandLinePropertySource(String name, joptsimple.OptionSet options)
Create a newJOptCommandLinePropertySourcehaving the given name and backed by the givenOptionSet.
Method Detail
containsOption
protected boolean containsOption(String name)
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
public String[] getPropertyNames()
Description copied from class:EnumerablePropertySourceReturn the names of all properties contained by the source object (nevernull).- Specified by:
getPropertyNamesin classEnumerablePropertySource<joptsimple.OptionSet>
getOptionValues
public List<String> getOptionValues(String name)
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
protected List<String> getNonOptionArgs()
Description copied from class:CommandLinePropertySourceReturn the collection of non-option arguments parsed from the command line. Nevernull.- Specified by:
getNonOptionArgsin classCommandLinePropertySource<joptsimple.OptionSet>