Package repast.simphony.parameter
Class DefaultParameters
- java.lang.Object
-
- repast.simphony.parameter.DefaultParameters
-
- All Implemented Interfaces:
Cloneable
,MutableParameters
,Parameters
- Direct Known Subclasses:
BoundParameters
public class DefaultParameters extends Object implements MutableParameters
Default implementation of Parameters. Individual paramters are created via the add method. This is intended to be used in conjuction with a ParametersCreator.- Author:
- Nick Collier
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean
changed
protected Map<String,String>
nameMap
protected PropertyChangeSupport
pcs
protected Set<String>
readOnly
protected DefaultSchema
schema
protected Map<String,Object>
values
-
Fields inherited from interface repast.simphony.parameter.Parameters
NULL
-
-
Constructor Summary
Constructors Constructor Description DefaultParameters()
Creates a new DefaultParameters object.DefaultParameters(Parameters params)
Creates a new DefaultParameters using the parameters in the specified Parameters object.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addConstraint(String name, List constrainingList)
Constains the value of the named to parameter to those in the list.void
addConstraint(String name, SteppedRange constrainingRange)
Constrains the value of the named parameter to those in the specified range.void
addConvertor(String name, StringConverter converter)
Adds a converter to convert the named parameter back and forth to a String.protected void
addParameter(String name, Class type, Object value, boolean isReadOnly)
Adds a parameter to this Parameters.void
addParameter(String name, String displayName, Class type, Object value, boolean isReadOnly)
Adds a parameter to this Parameters.void
addPropertyChangeListener(PropertyChangeListener listener)
Adds listener that will listen for parameter changes on this Parameters.Parameters
clone()
Method to clone a Parameter object.Boolean
getBoolean(String paramName)
Gets the Boolean value associated with the specified parameter name.String
getDisplayName(String paramName)
Gets the display name for the specified parameter name.Double
getDouble(String paramName)
Gets the Double value associated with the specified parameter name.Float
getFloat(String paramName)
Gets the Float value associated with the specified parameter name.Integer
getInteger(String paramName)
Gets the Integer value associated with the specified parameter name.Long
getLong(String paramName)
Gets the Boolean value associated with the specified parameter name.Schema
getSchema()
Gets the Schema for this Parameters object.String
getString(String paramName)
Gets the String value associated with the specified parameter name.Object
getValue(String paramName)
Gets the value associated with the specified parameter name.String
getValueAsString(String paramName)
Gets a String representation of the specified parameter's value.boolean
isReadOnly(String paramName)
True if parameter is read only.boolean
removeParameter(String name)
Removes the named parametervoid
removePropertyChangeListener(PropertyChangeListener listener)
Removes the specified listener from the listeners listening to this Parameters object.void
setValue(String paramName, Object val)
Sets the specified parameter name to the specified value.
-
-
-
Field Detail
-
pcs
protected PropertyChangeSupport pcs
-
schema
protected DefaultSchema schema
-
changed
protected boolean changed
-
-
Constructor Detail
-
DefaultParameters
public DefaultParameters()
Creates a new DefaultParameters object.
-
DefaultParameters
public DefaultParameters(Parameters params)
Creates a new DefaultParameters using the parameters in the specified Parameters object.- Parameters:
param
- parameters whose values we want to copy into this DefaultParameters
-
-
Method Detail
-
clone
public Parameters clone()
Description copied from interface:Parameters
Method to clone a Parameter object.- Specified by:
clone
in interfaceParameters
- Overrides:
clone
in classObject
- Returns:
- a Parameter clone.
-
addPropertyChangeListener
public void addPropertyChangeListener(PropertyChangeListener listener)
Adds listener that will listen for parameter changes on this Parameters.- Specified by:
addPropertyChangeListener
in interfaceParameters
- Parameters:
listener
-
-
removePropertyChangeListener
public void removePropertyChangeListener(PropertyChangeListener listener)
Removes the specified listener from the listeners listening to this Parameters object.- Specified by:
removePropertyChangeListener
in interfaceParameters
- Parameters:
listener
-
-
removeParameter
public boolean removeParameter(String name)
Removes the named parameter- Specified by:
removeParameter
in interfaceMutableParameters
- Parameters:
name
- the name of the parameter- Returns:
- whether or not removal was successful
-
addParameter
public void addParameter(String name, String displayName, Class type, Object value, boolean isReadOnly)
Adds a parameter to this Parameters.- Specified by:
addParameter
in interfaceMutableParameters
- Parameters:
name
- the name of the parameterdisplayName
- the display name for the parametertype
- the type of the parametervalue
- the default value of the parameterisReadOnly
- whether or not the parameter is read only.
-
addConstraint
public void addConstraint(String name, List constrainingList)
Constains the value of the named to parameter to those in the list.- Specified by:
addConstraint
in interfaceMutableParameters
- Parameters:
name
- the name of the parameterconstrainingList
- a list containing the possible values for the named parameter
-
addConvertor
public void addConvertor(String name, StringConverter converter)
Adds a converter to convert the named parameter back and forth to a String.- Specified by:
addConvertor
in interfaceMutableParameters
- Parameters:
name
- the name of the parameterconverter
- the converter
-
addConstraint
public void addConstraint(String name, SteppedRange constrainingRange)
Constrains the value of the named parameter to those in the specified range.- Specified by:
addConstraint
in interfaceMutableParameters
- Parameters:
name
- the name of the parmaeterconstrainingRange
- a range of the possible values for the named parameter
-
addParameter
protected void addParameter(String name, Class type, Object value, boolean isReadOnly)
Adds a parameter to this Parameters.- Parameters:
name
- the name of the parametertype
- the type of the parametervalue
- the default value of the parameterisReadOnly
- whether or not the parameter is read only.
-
getSchema
public Schema getSchema()
Gets the Schema for this Parameters object.- Specified by:
getSchema
in interfaceParameters
- Returns:
- the Schema for this Parameters object.
-
getValue
public Object getValue(String paramName)
Gets the value associated with the specified parameter name.- Specified by:
getValue
in interfaceParameters
- Parameters:
paramName
- the name of the parameter whose value we want- Returns:
- the value associated with the specified parameter name.
-
getDouble
public Double getDouble(String paramName)
Gets the Double value associated with the specified parameter name.- Specified by:
getDouble
in interfaceParameters
- Parameters:
paramName
- the name of the parameter whose value we want- Returns:
- the value associated with the specified parameter name.
-
getInteger
public Integer getInteger(String paramName)
Gets the Integer value associated with the specified parameter name.- Specified by:
getInteger
in interfaceParameters
- Parameters:
paramName
- the name of the parameter whose value we want- Returns:
- the value associated with the specified parameter name.
-
getBoolean
public Boolean getBoolean(String paramName)
Gets the Boolean value associated with the specified parameter name.- Specified by:
getBoolean
in interfaceParameters
- Parameters:
paramName
- the name of the parameter whose value we want- Returns:
- the value associated with the specified parameter name.
-
getString
public String getString(String paramName)
Gets the String value associated with the specified parameter name.- Specified by:
getString
in interfaceParameters
- Parameters:
paramName
- the name of the parameter whose value we want- Returns:
- the value associated with the specified parameter name.
-
getLong
public Long getLong(String paramName)
Gets the Boolean value associated with the specified parameter name.- Specified by:
getLong
in interfaceParameters
- Parameters:
paramName
- the name of the parameter whose value we want- Returns:
- the value associated with the specified parameter name.
-
getFloat
public Float getFloat(String paramName)
Gets the Float value associated with the specified parameter name.- Specified by:
getFloat
in interfaceParameters
- Parameters:
paramName
- the name of the parameter whose value we want- Returns:
- the value associated with the specified parameter name.
-
getValueAsString
public String getValueAsString(String paramName)
Gets a String representation of the specified parameter's value.- Specified by:
getValueAsString
in interfaceParameters
- Parameters:
paramName
- the name of the parameter- Returns:
- a String representation of the specified parameters's value.
-
isReadOnly
public boolean isReadOnly(String paramName)
True if parameter is read only.- Specified by:
isReadOnly
in interfaceParameters
- Parameters:
paramName
- the name of the parameter- Returns:
- true if parameter is read-only otherwise false.
-
setValue
public void setValue(String paramName, Object val)
Sets the specified parameter name to the specified value.- Specified by:
setValue
in interfaceParameters
- Parameters:
paramName
- the name of the parameter to set to the new valueval
- the new value
-
getDisplayName
public String getDisplayName(String paramName)
Gets the display name for the specified parameter name.- Specified by:
getDisplayName
in interfaceParameters
- Parameters:
paramName
- the parameter name- Returns:
- the display name for the specified parameter name.
-
-