Class ParamParserComplex

java.lang.Object
esa.opensf.osfi.ParamParserComplex

public class ParamParserComplex extends Object
Helper class used by ParamReader to process the values of structured parameters.
  • Field Details

    • EXTATTR_PATHSEP

      public static final String EXTATTR_PATHSEP
      Separator for the names of extra attributes which include the path of a sub-element. Not a valid XML name character.
      See Also:
  • Constructor Details

    • ParamParserComplex

      public ParamParserComplex(Element paramNode, String paramPath) throws esa.opensf.osfi.ParamReader.ParamParsingException
      Parse the data in the given XML element, which represents a parameter with a structured type.
      Parameters:
      paramNode - Must represent a parameter with type Parameter.ParamComplexType.MATRIX or Parameter.ParamComplexType.ARRAY.
      paramPath - Non-null, dot-separated path of this element, including the param itself.
      Throws:
      esa.opensf.osfi.ParamReader.ParamParsingException - If the parameter is malformed. This is the only exception that may be thrown by this method, other unchecked exceptions are wrapped in this.
  • Method Details

    • getType

      public Parameter.ParamType getType()
      Returns:
      the parsed element type of the parameter. Never null.
    • getMatrixValue

      public String getMatrixValue()
      Returns:
      the parameter value, or null if this parameter is not of type MATRIX.
    • getRootNode

      public ArrayNode.Raw getRootNode()
      Returns:
      the root node, or null if this parameter is not of type ARRAY.
    • getListDims

      public List<Integer> getListDims()
      Returns:
      the dimensions of the parameter (for ARRAY parameters, the rectangular envelope).
    • getComplexType

      public Parameter.ParamComplexType getComplexType()
      Returns:
      the type of structured parameter, ARRAY or MATRIX.
    • getExtraAttrs

      public Map<String,String> getExtraAttrs()
      Returns:
      the map of extra attributes on the parameter and its subnodes