Class ParamGroup

java.lang.Object
org.esa.snap.core.param.ParamGroup

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

    • ParamGroup

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

    • 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:
    • 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:
    • 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

      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:
    • 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