Package adams.core.option
Class AbstractNumericOption<T extends Number>
- java.lang.Object
-
- adams.core.option.AbstractOption
-
- adams.core.option.AbstractArgumentOption
-
- adams.core.option.AbstractNumericOption<T>
-
- Type Parameters:
T- the type of number
- All Implemented Interfaces:
CleanUpHandler,VariableChangeListener,Serializable
- Direct Known Subclasses:
ByteOption,DoubleOption,FloatOption,IntegerOption,LongOption,ShortOption
public abstract class AbstractNumericOption<T extends Number> extends AbstractArgumentOption
Handles options with numeric arguments.- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class adams.core.option.AbstractArgumentOption
m_BaseClass, m_Multiple, m_Variable, m_VariableModified, m_VariableReferencesObject
-
Fields inherited from class adams.core.option.AbstractOption
m_Commandline, m_Constraint, m_Debug, m_DefaultValue, m_MinUserMode, m_OutputDefaultValue, m_Owner, m_Property, TOOLTIP_SUFFIX
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractNumericOption(OptionManager owner, String commandline, String property, Object defValue)Initializes the option.protectedAbstractNumericOption(OptionManager owner, String commandline, String property, Object defValue, T lower, T upper)Initializes the option.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleancompareValues(Object value, Object defValue)Compares the two values.TgetLowerBound()Returns the lower bound for this option.TgetUpperBound()Returns the lower bound for this option.booleanhasLowerBound()Checks whether a lower bound has been defined for this option.booleanhasUpperBound()Checks whether a lower bound has been defined for this option.StringtoString(Object obj)Returns a string representation of the specified object.TvalueOf(String s)Turns the string into the appropriate number.-
Methods inherited from class adams.core.option.AbstractArgumentOption
cleanUp, getBaseClass, getVariable, getVariableName, hasBaseClass, isDefaultValue, isDefaultValue, isMultiple, isVariableAttached, isVariableModified, isVariableReferencingObject, setVariable, toArray, toString, updateVariable, updateVariable, updateVariable, variableChanged
-
Methods inherited from class adams.core.option.AbstractOption
dontOutputDefaultValue, getCommandline, getConstraint, getCurrentValue, getDebug, getDefaultValue, getDescriptor, getMinUserMode, getOptionHandler, getOutputDefaultValue, getOwner, getProperty, getReadMethod, getToolTipMethod, getWriteMethod, hasConstraint, isValid, noConstraint, setConstraint, setCurrentValue, setMinUserMode, setOutputDefaultValue
-
-
-
-
Constructor Detail
-
AbstractNumericOption
protected AbstractNumericOption(OptionManager owner, String commandline, String property, Object defValue)
Initializes the option. Will always output the default value.- Parameters:
owner- the owner of this optioncommandline- the commandline string to identify the option (no leading dash)property- the name of bean propertydefValue- the default value, if null then the owner's current state is used
-
AbstractNumericOption
protected AbstractNumericOption(OptionManager owner, String commandline, String property, Object defValue, T lower, T upper)
Initializes the option.- Parameters:
owner- the owner of this optioncommandline- the commandline string to identify the optionproperty- the name of bean propertydefValue- the default value, if null then the owner's current state is usedlower- the lower bound (incl; only for numeric values), use null to use unboundedupper- the upper bound (incl; only for numeric values), use null to use unbounded
-
-
Method Detail
-
hasLowerBound
public boolean hasLowerBound()
Checks whether a lower bound has been defined for this option.- Returns:
- true if lower bound exists
-
getLowerBound
public T getLowerBound()
Returns the lower bound for this option.- Returns:
- the lower bound, can be null if none defined
-
hasUpperBound
public boolean hasUpperBound()
Checks whether a lower bound has been defined for this option.- Returns:
- true if lower bound exists
-
getUpperBound
public T getUpperBound()
Returns the lower bound for this option.- Returns:
- the lower bound, can be null if none defined
-
compareValues
protected boolean compareValues(Object value, Object defValue)
Compares the two values.- Specified by:
compareValuesin classAbstractArgumentOption- Parameters:
value- the value to compare against the default valuedefValue- the default value to compare against- Returns:
- true if both are equal
-
valueOf
public T valueOf(String s) throws Exception
Turns the string into the appropriate number.- Specified by:
valueOfin classAbstractArgumentOption- Parameters:
s- the string to parse- Returns:
- the generated number
- Throws:
Exception- if parsing of string fails
-
toString
public String toString(Object obj)
Returns a string representation of the specified object.- Specified by:
toStringin classAbstractArgumentOption- Parameters:
obj- the object to turn into a string- Returns:
- the string representation
-
-