Class ParamGroup


  • public class ParamGroup
    extends Object
    The ParamGroup class represents a ordered list of parameters.
    Version:
    $Revision$ $Date$
    • Constructor Detail

      • ParamGroup

        public ParamGroup()
        Constructs a new parameter group.
    • Method Detail

      • create

        public static ParamGroup create​(PropertyMap propertyMap)
        Adds and configures parameters supplied through the given properties.

        For each entry in the properties having the form any-string.name = param-name the method creates a new parameter with the name given by param-name if it does not already exists in this list. Then, for each entry of the form param-name.attrib-name = attrib-value contained in the given properties, the method sets/creates a new parameter attribute for the parameter's getProperties() field.

        If a parameter found in the properties has the null value, the method sets the value of this parameter to the value given by param-name.defaultValue = default-value, if it can be found in the properties.

        Parameters:
        propertyMap - the properties used to add and configure new parameters
        See Also:
        Parameter.getProperties(), ParamProperties
      • setParameterValues

        public void setParameterValues​(PropertyMap propertyMap,
                                       ParamExceptionHandler handler)
        Sets parameter values supplied through the given property map.

        For each parameter contained in this list having the name param-name this method searches for entries in the property ma having the form param-name = param-value. If it can be found, the parameter is set to the given textual value using the parameter's setValueAsText method.

        Parameters:
        propertyMap - the property map, must not be null
        handler - an optional error handler, can be null
        See Also:
        Parameter.setValueAsText(java.lang.String)
      • getParameterValues

        public PropertyMap getParameterValues()
        Gets the parameter values in this group as a property map instance.

        Simply returns getParameterValues(null).

        Returns:
        the property map, never null
        See Also:
        getParameterValues(PropertyMap)
      • getParameterValues

        public PropertyMap getParameterValues​(PropertyMap propertyMap)
        Gets the parameter values in this group as a property map instance.

        For each parameter contained in this list a new entry in the property map instance is created. The key is always the paramer's name and the value is created by using the parameter's getValueAsText method.

        Parameters:
        propertyMap - if not null used as return value, otherwise a new Properties instance will be created and returned
        Returns:
        the property map, never null
        See Also:
        Parameter.getValueAsText()
      • getNumParameters

        public int getNumParameters()
        Returns the number of parameters in this group.
      • getParameterAt

        public Parameter getParameterAt​(int index)
        Returns the parameter with the given index.
        Parameters:
        index - the parameter index
        Throws:
        IndexOutOfBoundsException - if the index is negative or greater or equal to getNumParameters().
      • getParameter

        public Parameter getParameter​(String name)
        Returns the parameter with the given name.
        Returns:
        the parameter or null if the a parameter with the given name was not found in this group
      • createParameter

        public Parameter createParameter​(String name)
        Creates a parameter for the given name. If a parameter with the given name already exists in this group, its reference is returned.
        Returns:
        the parameter, never null
      • getParameterIndex

        public int getParameterIndex​(String name)
        Returns the index of the parameter with the given name. If a parameter with the given name was not found, -1 is returned.
        Returns:
        the parameter index, or -1 if it was not found
      • addParameter

        public void addParameter​(Parameter parameter)
        Adds the given parameter to this group. If the parameter is null or the parameter already exists in this group, nothing happens.
        Parameters:
        parameter - the parameter to be added
      • removeParameter

        public void removeParameter​(Parameter parameter)
        Removes the given parameter from this group. If the parameter is null or the parameter does not exists in this group, nothing happens.
        Parameters:
        parameter - the parameter to be removed
      • addParamChangeListener

        public void addParamChangeListener​(ParamChangeListener listener)
        Adds a parameter change listener to all parameters in this group.
        Parameters:
        listener - the listener to be added to all parameters
      • removeParamChangeListener

        public void removeParamChangeListener​(ParamChangeListener listener)
        Removes the parameter change listener from all parameters in this group.
        Parameters:
        listener - the listener to be removed from all parameters