Class MapOptionHandler
Parses options into a
Map.
class Foo {
@Option(name="-P",handler=MapOptionHandler.class)
Map<String,String> args;
}
With this, -P x=1 -P y=2 parses to map of size 2.
This option handler can be subtyped if you want to convert values to different types
or to handle key=value in other formats, like key:=value.
-
Field Summary
Fields inherited from class OptionHandler
option, owner, setter -
Constructor Summary
ConstructorsConstructorDescriptionMapOptionHandler(CmdLineParser parser, OptionDef option, Setter<? super Map<?, ?>> setter) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidEncapsulates how a single string argument gets converted into key and value.protected voidThis is the opportunity to convert values to some typed objects.protected MapcreateNewCollection(Class<? extends Map> type) Creates a new instance of the collection.Gets the default meta variable name used to print the usage screen.intparseArguments(Parameters params) Called if the option that this owner recognizes is found.Methods inherited from class OptionHandler
getMetaVariable, getNameAndMeta, getNameAndMeta, print, printDefaultValue
-
Constructor Details
-
MapOptionHandler
-
-
Method Details
-
getDefaultMetaVariable
Description copied from class:OptionHandlerGets the default meta variable name used to print the usage screen. The value returned by this method can be a reference in theResourceBundle, if one was passed toCmdLineParser.- Specified by:
getDefaultMetaVariablein classOptionHandler<Map<?,?>> - Returns:
nullto hide a meta variable.
-
parseArguments
Description copied from class:OptionHandlerCalled if the option that this owner recognizes is found.- Specified by:
parseArgumentsin classOptionHandler<Map<?,?>> - Parameters:
params- The rest of the arguments. This method can use this object to access the arguments of the option if necessary. The object is valid only during the method call.- Returns:
- The number of arguments consumed. (For example, returns
0if this option doesn't take any parameters.) - Throws:
CmdLineException
-
createNewCollection
-
addToMap
Encapsulates how a single string argument gets converted into key and value.- Throws:
CmdLineException
-
addToMap
-