Package adql.query.operand.function
Class InUnitFunction
java.lang.Object
adql.query.operand.function.ADQLFunction
adql.query.operand.function.InUnitFunction
- All Implemented Interfaces:
ADQLObject,ADQLOperand
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
-
Nested Class Summary
Nested classes/interfaces inherited from class adql.query.operand.function.ADQLFunction
ADQLFunction.ParameterIterator -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final StringConstant name of this function.static final LanguageFeatureDescription of this ADQL Feature.protected ADQLOperandThe VO-Unit into which the value must be converted.protected ADQLOperandThe value to convert. -
Constructor Summary
ConstructorsConstructorDescriptionInUnitFunction(ADQLOperand value, ADQLOperand targetUnit) Create the object representation of the ADQL function IN_UNIT. -
Method Summary
Modifier and TypeMethodDescriptiongetCopy()Gets a (deep) copy of this ADQL object.Get the description of this ADQL's Language Feature.getName()Gets the name of this object in ADQL.intGets the number of parameters this function has.getParameter(int index) Gets the index-th parameter.Gets the list of all parameters of this function.final ADQLOperandGet the VO-Unit into which the value must be converted.final ADQLOperandgetValue()Get the numeric operand to convert into a different unit.final booleanTell whether this operand is a geometrical region or not.final booleanTell whether this operand is numeric or not.final booleanisString()Tell whether this operand is a string or not.setParameter(int index, ADQLOperand replacer) Replaces the index-th parameter by the given one.final voidsetTargetUnit(ADQLOperand targetUnit) Set the VO-Unit into which the value must be converted.final voidsetValue(ADQLOperand value) Set the numeric operand to convert into a different unit.Methods inherited from class adql.query.operand.function.ADQLFunction
adqlIterator, getPosition, paramIterator, setPosition, toADQL
-
Field Details
-
FEATURE
Description of this ADQL Feature. -
FCT_NAME
Constant name of this function.- See Also:
-
value
The value to convert. -
targetUnit
The VO-Unit into which the value must be converted.
-
-
Constructor Details
-
InUnitFunction
public InUnitFunction(ADQLOperand value, ADQLOperand targetUnit) throws NullPointerException, IllegalArgumentException Create the object representation of the ADQL function IN_UNIT.- Parameters:
value- The value to convert.targetUnit- The VO-Unit into which the value must be converted.- Throws:
NullPointerException- If one of the given operands is NULL.IllegalArgumentException- If the 1st operand is not a numeric, or if the 2nd is not a string.
-
-
Method Details
-
getValue
Get the numeric operand to convert into a different unit.- Returns:
- The value to convert.
-
setValue
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
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:ADQLOperandTell 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:ADQLOperandTell 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:ADQLOperandTell whether this operand is a geometrical region or not.- Returns:
- true if this operand is a geometry, false otherwise.
-
getName
Description copied from interface:ADQLObjectGets the name of this object in ADQL.- Returns:
- The name of this ADQL object.
-
getFeatureDescription
Description copied from interface:ADQLObjectGet 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
Description copied from interface:ADQLObjectGets 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:ADQLFunctionGets the number of parameters this function has.- Specified by:
getNbParametersin classADQLFunction- Returns:
- Number of parameters.
-
getParameters
Description copied from class:ADQLFunctionGets the list of all parameters of this function.- Specified by:
getParametersin classADQLFunction- Returns:
- Its parameters list.
-
getParameter
Description copied from class:ADQLFunctionGets the index-th parameter.- Specified by:
getParameterin classADQLFunction- Parameters:
index- Parameter number.- Returns:
- The corresponding parameter.
- Throws:
ArrayIndexOutOfBoundsException- If the index is incorrect (index invalid input: '<' 0 || index >= getNbParameters()).
-
setParameter
public ADQLOperand setParameter(int index, ADQLOperand replacer) throws ArrayIndexOutOfBoundsException, NullPointerException, Exception Description copied from class:ADQLFunctionReplaces the index-th parameter by the given one.- Specified by:
setParameterin classADQLFunction- Parameters:
index- Index of the parameter to replace.replacer- The replacer.- Returns:
- The replaced parameter.
- Throws:
ArrayIndexOutOfBoundsException- If the index is incorrect (index invalid input: '<' 0 || index >= getNbParameters()).NullPointerException- If a required parameter must be replaced by a NULL object.Exception- If another error occurs.
-