public abstract class NamedObjectParameter<T> extends Parameter<T>
ChoiceParameter in that several
 named choices are available.
 However, it is also possible to select options which are not in the
 known option list.  For this to work, a pair of methods
 toString(java.lang.Object) and fromString(java.lang.String)
 must be implemented as inverses of each other so that a string can be
 turned into an object.
 The supplied options do not need to have names which follow this scheme.
 Note: this class duplicates some of the functionality
 in other Parameter subclasses.  It's here for historical reasons.
 New code in general ought not to make use of this class.| Constructor and Description | 
|---|
NamedObjectParameter(String name,
                    Class<T> clazz)
Constructs a new parameter with no named options. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
addOption(String name,
         T option)
Adds an option with an associated name. 
 | 
abstract T | 
fromString(String name)
Translates a string value for this parameter into the object value
 which it represents. 
 | 
String[] | 
getNames()
Returns the names of all the named options known for this parameter. 
 | 
String | 
getOptionList()
Returns a formatted XML string giving an unordered list of the options
 for this parameter. 
 | 
T[] | 
getOptions()
Returns the option objects for all the named options known for this
 parameter. 
 | 
String | 
getUsage()
Returns the usage string for this parameter. 
 | 
void | 
setDefaultOption(T option)
Sets the default value of this parameter as an option value object. 
 | 
void | 
setUsage(String usage)
Sets a usage string for this parameter. 
 | 
T | 
stringToObject(Environment env,
              String sval)
Takes a non-blank string, as supplied by the execution environment,
 and turns it into a typed value for this parameter. 
 | 
String | 
toString(T option)
Translates a possible option value of this parameter into a string
 which represents it as a string value. 
 | 
clearValue, getDescription, getName, getPosition, getPreferExplicit, getPrompt, getStringDefault, getValueClass, isNullPermitted, objectToString, objectValue, setDescription, setDescription, setName, setNullPermitted, setPosition, setPreferExplicit, setPrompt, setStringDefault, setValue, setValueFromObject, setValueFromString, stringValue, toArray, toStringpublic void addOption(String name, T option)
toString(option).name - option aliasoption - option value objectpublic T stringToObject(Environment env, String sval) throws TaskException
ParameterIt is an error to supply a null or empty string value.
If this method fails (throws a ParameterValueException)
 and if allowClassnameValue is set, then a subsequent
 attempt will be made to interpret the stringVal
 as the classname of a suitable class with a no-arg constructor.
stringToObject in class Parameter<T>env - execution environment; in most cases this is not required
              but for some purposes environment-specific characteristics
              may influence the resultsval - non-null, non-empty string valueTaskExceptionpublic void setDefaultOption(T option)
option must be either one of the values added using
 addOption(java.lang.String, T) or toString(java.lang.Object) must be
 able to translate it.  Or it could be null.option - new default value as an objectpublic String toString(T option)
option - object valuepublic abstract T fromString(String name)
The implementation must be such that
 fromString(toString(o)).equals(o).
name - option namepublic String getOptionList()
public String[] getNames()
public T[] getOptions()
public void setUsage(String usage)
ParameterParameter class uses the string "<value>"
 as the default usage string.Copyright © 2025 Central Laboratory of the Research Councils. All Rights Reserved.