public class RegionFunction extends GeometryFunction
It represents the REGION function the ADQL language.
This function provides a generic way of expressing a region represented by a single string input parameter. The format of the string MUST be specified by a service that accepts ADQL by referring to a standard format. Currently STC/s is the only standardized string representation a service can declare.
Example:
REGION('Convex ... Position ... Error ... Size')
In this example the function embeds a string serialization of an STC region within parenthesis.
Warning:
Inappropriate geometries for this construct SHOULD throw an error message, to be defined by the service making use of ADQL.
GeometryFunction.GeometryValue<F extends GeometryFunction>
ADQLFunction.ParameterIterator
Modifier and Type | Field and Description |
---|---|
protected ADQLOperand |
parameter
The only parameter of this function.
|
coordSys
Constructor and Description |
---|
RegionFunction(ADQLOperand param)
Builds a REGION function.
|
RegionFunction(RegionFunction toCopy)
Builds a REGION function by copying the given one.
|
Modifier and Type | Method and Description |
---|---|
ADQLObject |
getCopy()
Gets a (deep) copy of this ADQL object.
|
java.lang.String |
getName()
Gets the name of this object in ADQL.
|
int |
getNbParameters()
Gets the number of parameters this function has.
|
ADQLOperand |
getParameter(int index)
Gets the index-th parameter.
|
ADQLOperand[] |
getParameters()
Gets the list of all parameters of this function.
|
boolean |
isGeometry()
Tell whether this operand is a geometrical region or not.
|
boolean |
isNumeric()
Tell whether this operand is numeric or not.
|
boolean |
isString()
Tell whether this operand is a string or not.
|
ADQLOperand |
setParameter(int index,
ADQLOperand replacer)
Replaces the index-th parameter by the given one.
|
getCoordinateSystem, setCoordinateSystem
adqlIterator, getPosition, paramIterator, setPosition, toADQL
protected ADQLOperand parameter
public RegionFunction(ADQLOperand param) throws java.lang.NullPointerException, java.lang.Exception
param
- The parameter (a string or a column reference or a concatenation or a user function).ParseException
- If the given parameter is null.java.lang.NullPointerException
java.lang.Exception
public RegionFunction(RegionFunction toCopy) throws java.lang.Exception
toCopy
- The REGION function to copy.java.lang.Exception
- If there is an error during the copy.public ADQLObject getCopy() throws java.lang.Exception
ADQLObject
java.lang.Exception
- If there is any error during the copy.public java.lang.String getName()
ADQLObject
public boolean isNumeric()
ADQLOperand
public boolean isString()
ADQLOperand
public boolean isGeometry()
ADQLOperand
public ADQLOperand[] getParameters()
ADQLFunction
getParameters
in class ADQLFunction
public int getNbParameters()
ADQLFunction
getNbParameters
in class ADQLFunction
public ADQLOperand getParameter(int index) throws java.lang.ArrayIndexOutOfBoundsException
ADQLFunction
getParameter
in class ADQLFunction
index
- Parameter number.java.lang.ArrayIndexOutOfBoundsException
- If the index is incorrect (index < 0 || index >= getNbParameters()).public ADQLOperand setParameter(int index, ADQLOperand replacer) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.NullPointerException, java.lang.Exception
ADQLFunction
setParameter
in class ADQLFunction
index
- Index of the parameter to replace.replacer
- The replacer.java.lang.ArrayIndexOutOfBoundsException
- If the index is incorrect (index < 0 || index >= getNbParameters()).java.lang.NullPointerException
- If a required parameter must be replaced by a NULL object.java.lang.Exception
- If another error occurs.