Class Registry
java.lang.Object
org.apache.sis.internal.filter.sqlmm.Registry
- All Implemented Interfaces:
FunctionRegister
A register of functions defined by the SQL/MM standard.
This standard is defined by ISO/IEC 13249-3:2016
Information technology — Database languages — SQL multimedia and application packages — Part 3: Spatial.
- Since:
- 1.1
- Version:
- 1.1
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Geometries<?>
The geometry library used by this registry. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription<R> Expression<R,
?> create
(String name, Expression<? super R, ?>[] parameters) Create a new function of the given name with given parameters.Returns the name of the standard or authority defining the functions.getNames()
Returns the names of all functions known to this register.
-
Field Details
-
library
The geometry library used by this registry.
-
-
Constructor Details
-
Registry
Creates the default register.- Parameters:
library
- the geometry library to use.
-
-
Method Details
-
getAuthority
Returns the name of the standard or authority defining the functions.- Specified by:
getAuthority
in interfaceFunctionRegister
- Returns:
- provider of function definitions.
-
getNames
Returns the names of all functions known to this register.- Specified by:
getNames
in interfaceFunctionRegister
- Returns:
- set of supported function names.
-
create
Create a new function of the given name with given parameters. It is caller's responsibility to ensure that the given array is non-null, has been cloned and does not contain null elements. This method verifies only the number of parameters.- Specified by:
create
in interfaceFunctionRegister
- Type Parameters:
R
- the type of resources (e.g.Feature
) used as inputs.- Parameters:
name
- name of the function to call.parameters
- expressions providing values for the function arguments.- Returns:
- an expression which will call the specified function.
- Throws:
IllegalArgumentException
- if function name is unknown or some parameters are illegal.
-