Class InUnitFunction

java.lang.Object
adql.query.operand.function.ADQLFunction
adql.query.operand.function.InUnitFunction
All Implemented Interfaces:
ADQLObject, ADQLOperand

public class InUnitFunction extends ADQLFunction
It represents the IN_UNIT function of ADQL.

This function converts the given value into the given VO-Unit.

This function should report an error if the specified unit is not valid or if the conversion is not possible.

Since:
2.0
  • Field Details

    • FEATURE

      public static final LanguageFeature FEATURE
      Description of this ADQL Feature.
    • FCT_NAME

      protected final String FCT_NAME
      Constant name of this function.
      See Also:
    • value

      protected ADQLOperand value
      The value to convert.
    • targetUnit

      protected ADQLOperand targetUnit
      The VO-Unit into which the value must be converted.
  • Constructor Details

  • Method Details

    • getValue

      public final ADQLOperand getValue()
      Get the numeric operand to convert into a different unit.
      Returns:
      The value to convert.
    • setValue

      public final void setValue(ADQLOperand value) throws NullPointerException, IllegalArgumentException
      Set the numeric operand to convert into a different unit.
      Parameters:
      value - The value to convert.
      Throws:
      NullPointerException - If the given operand is NULL.
      IllegalArgumentException - If the given operand is not a numeric.
    • getTargetUnit

      public final ADQLOperand getTargetUnit()
      Get the VO-Unit into which the value must be converted.
      Returns:
      The target unit.
    • setTargetUnit

      public final void setTargetUnit(ADQLOperand targetUnit) throws NullPointerException, IllegalArgumentException
      Set the VO-Unit into which the value must be converted.
      Parameters:
      targetUnit - The target unit.
      Throws:
      NullPointerException - If the given operand is NULL.
      IllegalArgumentException - If the given operand is not a string.
    • isNumeric

      public final boolean isNumeric()
      Description copied from interface: ADQLOperand
      Tell whether this operand is numeric or not.
      Returns:
      true if this operand is numeric, false otherwise.
    • isString

      public final boolean isString()
      Description copied from interface: ADQLOperand
      Tell whether this operand is a string or not.
      Returns:
      true if this operand is a string, false otherwise.
    • isGeometry

      public final boolean isGeometry()
      Description copied from interface: ADQLOperand
      Tell whether this operand is a geometrical region or not.
      Returns:
      true if this operand is a geometry, false otherwise.
    • getName

      public String getName()
      Description copied from interface: ADQLObject
      Gets the name of this object in ADQL.
      Returns:
      The name of this ADQL object.
    • getFeatureDescription

      public LanguageFeature getFeatureDescription()
      Description copied from interface: ADQLObject
      Get the description of this ADQL's Language Feature.

      Note: Getting this description is generally only useful when discovery optional features so that determining if they are allowed to be used in ADQL queries.

      Returns:
      Description of this ADQL object as an ADQL's feature.
    • getCopy

      public ADQLObject getCopy() throws Exception
      Description copied from interface: ADQLObject
      Gets a (deep) copy of this ADQL object.
      Returns:
      The copy of this ADQL object.
      Throws:
      Exception - If there is any error during the copy.
    • getNbParameters

      public int getNbParameters()
      Description copied from class: ADQLFunction
      Gets the number of parameters this function has.
      Specified by:
      getNbParameters in class ADQLFunction
      Returns:
      Number of parameters.
    • getParameters

      public ADQLOperand[] getParameters()
      Description copied from class: ADQLFunction
      Gets the list of all parameters of this function.
      Specified by:
      getParameters in class ADQLFunction
      Returns:
      Its parameters list.
    • getParameter

      public ADQLOperand getParameter(int index) throws ArrayIndexOutOfBoundsException
      Description copied from class: ADQLFunction
      Gets the index-th parameter.
      Specified by:
      getParameter in class ADQLFunction
      Parameters:
      index - Parameter number.
      Returns:
      The corresponding parameter.
      Throws:
      ArrayIndexOutOfBoundsException - If the index is incorrect (index < 0 || index >= getNbParameters()).
    • setParameter

      public ADQLOperand setParameter(int index, ADQLOperand replacer) throws ArrayIndexOutOfBoundsException, NullPointerException, Exception
      Description copied from class: ADQLFunction
      Replaces the index-th parameter by the given one.
      Specified by:
      setParameter in class ADQLFunction
      Parameters:
      index - Index of the parameter to replace.
      replacer - The replacer.
      Returns:
      The replaced parameter.
      Throws:
      ArrayIndexOutOfBoundsException - If the index is incorrect (index < 0 || index >= getNbParameters()).
      NullPointerException - If a required parameter must be replaced by a NULL object.
      Exception - If another error occurs.