You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sis.apache.org by js...@apache.org on 2019/11/26 16:36:08 UTC
[sis] branch feat/sqlmm updated (4815c99 -> 07e2985)
This is an automated email from the ASF dual-hosted git repository.
jsorel pushed a change to branch feat/sqlmm
in repository https://gitbox.apache.org/repos/asf/sis.git.
from 4815c99 SQL/MM : add all specification expressions
new fb1c2ae SQL/MM : cleaning code
new 07e2985 SQL/MM : cleaning code
The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../filter/sqlmm/todo/AbstractGeomConstructor.java | 2 +-
.../filter/sqlmm/todo/AbstractGeomFromBinary.java | 70 ----
.../filter/sqlmm/todo/AbstractGeomFromGML.java | 79 ----
.../filter/sqlmm/todo/AbstractGeomFromText.java | 69 ----
.../sqlmm/todo/CurvePolygon_ST_ExteriorRing.java | 2 +-
.../sqlmm/todo/CurvePolygon_ST_InteriorRingN.java | 2 +-
.../todo/CurvePolygon_ST_NumInteriorRings.java | 14 +-
.../filter/sqlmm/todo/Curve_ST_EndPoint.java | 16 +-
.../filter/sqlmm/todo/Curve_ST_IsClosed.java | 14 +-
.../filter/sqlmm/todo/Curve_ST_IsRing.java | 14 +-
.../filter/sqlmm/todo/Curve_ST_Length.java | 3 +-
.../filter/sqlmm/todo/Curve_ST_StartPoint.java | 16 +-
.../filter/sqlmm/todo/GeomColl_ST_GeometryN.java | 26 +-
.../sqlmm/todo/GeomColl_ST_NumGeometries.java | 14 +-
.../filter/sqlmm/todo/Line_ST_NumPoints.java | 14 +-
.../internal/filter/sqlmm/todo/Line_ST_PointN.java | 24 +-
.../filter/sqlmm/todo/Point_ST_ExplicitPoint.java | 14 +-
.../sis/internal/filter/sqlmm/todo/Point_ST_X.java | 14 +-
.../sis/internal/filter/sqlmm/todo/Point_ST_Y.java | 14 +-
.../sis/internal/filter/sqlmm/todo/Point_ST_Z.java | 14 +-
.../internal/filter/sqlmm/todo/ST_AsBinary.java | 14 +-
.../sis/internal/filter/sqlmm/todo/ST_AsGML.java | 14 +-
.../sis/internal/filter/sqlmm/todo/ST_AsText.java | 14 +-
.../filter/sqlmm/todo/ST_BdMPolyFromText.java | 63 ----
.../filter/sqlmm/todo/ST_BdMPolyFromWKB.java | 64 ----
.../filter/sqlmm/todo/ST_BdPolyFromText.java | 61 ---
.../filter/sqlmm/todo/ST_BdPolyFromWKB.java | 61 ---
.../internal/filter/sqlmm/todo/ST_Boundary.java | 16 +-
.../sis/internal/filter/sqlmm/todo/ST_Buffer.java | 26 +-
.../internal/filter/sqlmm/todo/ST_Contains.java | 9 +-
.../internal/filter/sqlmm/todo/ST_ConvexHull.java | 16 +-
.../internal/filter/sqlmm/todo/ST_CoordDim.java | 19 +-
.../sis/internal/filter/sqlmm/todo/ST_Crosses.java | 12 +-
.../internal/filter/sqlmm/todo/ST_Difference.java | 11 +-
.../internal/filter/sqlmm/todo/ST_Dimension.java | 14 +-
.../internal/filter/sqlmm/todo/ST_Disjoint.java | 9 +-
.../internal/filter/sqlmm/todo/ST_Distance.java | 9 +-
.../internal/filter/sqlmm/todo/ST_Envelope.java | 16 +-
.../sis/internal/filter/sqlmm/todo/ST_Equals.java | 9 +-
.../filter/sqlmm/todo/ST_GeomCollFromGML.java | 40 --
.../filter/sqlmm/todo/ST_GeomCollFromText.java | 40 --
.../filter/sqlmm/todo/ST_GeomCollFromWKB.java | 40 --
.../filter/sqlmm/todo/ST_GeomCollection.java | 13 +-
.../internal/filter/sqlmm/todo/ST_GeomFromGML.java | 40 --
.../filter/sqlmm/todo/ST_GeomFromText.java | 40 --
.../internal/filter/sqlmm/todo/ST_GeomFromWKB.java | 40 --
.../filter/sqlmm/todo/ST_GeometryType.java | 14 +-
.../filter/sqlmm/todo/ST_Intersection.java | 11 +-
.../internal/filter/sqlmm/todo/ST_Intersects.java | 9 +-
.../sis/internal/filter/sqlmm/todo/ST_Is3D.java | 14 +-
.../sis/internal/filter/sqlmm/todo/ST_IsEmpty.java | 14 +-
.../internal/filter/sqlmm/todo/ST_IsSimple.java | 14 +-
.../sis/internal/filter/sqlmm/todo/ST_IsValid.java | 14 +-
.../internal/filter/sqlmm/todo/ST_LineFromGML.java | 40 --
.../filter/sqlmm/todo/ST_LineFromText.java | 40 --
.../internal/filter/sqlmm/todo/ST_LineFromWKB.java | 40 --
.../internal/filter/sqlmm/todo/ST_LineString.java | 13 +-
.../filter/sqlmm/todo/ST_MLineFromGML.java | 40 --
.../filter/sqlmm/todo/ST_MLineFromText.java | 40 --
.../filter/sqlmm/todo/ST_MLineFromWKB.java | 40 --
.../filter/sqlmm/todo/ST_MPointFromGML.java | 40 --
.../filter/sqlmm/todo/ST_MPointFromText.java | 40 --
.../filter/sqlmm/todo/ST_MPointFromWKB.java | 40 --
.../filter/sqlmm/todo/ST_MPolyFromGML.java | 40 --
.../filter/sqlmm/todo/ST_MPolyFromText.java | 40 --
.../filter/sqlmm/todo/ST_MPolyFromWKB.java | 40 --
.../filter/sqlmm/todo/ST_MultiLineString.java | 13 +-
.../internal/filter/sqlmm/todo/ST_MultiPoint.java | 13 +-
.../filter/sqlmm/todo/ST_MultiPolygon.java | 13 +-
.../internal/filter/sqlmm/todo/ST_Overlaps.java | 9 +-
.../sis/internal/filter/sqlmm/todo/ST_Point.java | 21 +-
.../filter/sqlmm/todo/ST_PointFromGML.java | 40 --
.../filter/sqlmm/todo/ST_PointFromText.java | 40 --
.../filter/sqlmm/todo/ST_PointFromWKB.java | 40 --
.../internal/filter/sqlmm/todo/ST_PolyFromGML.java | 40 --
.../filter/sqlmm/todo/ST_PolyFromText.java | 40 --
.../internal/filter/sqlmm/todo/ST_PolyFromWKB.java | 40 --
.../sis/internal/filter/sqlmm/todo/ST_Polygon.java | 14 +-
.../sis/internal/filter/sqlmm/todo/ST_Relate.java | 19 +-
.../sis/internal/filter/sqlmm/todo/ST_SRID.java | 14 +-
.../filter/sqlmm/todo/ST_SymDifference.java | 9 +-
.../internal/filter/sqlmm/todo/ST_ToGeomColl.java | 14 +-
.../filter/sqlmm/todo/ST_ToLineString.java | 14 +-
.../internal/filter/sqlmm/todo/ST_ToMultiLine.java | 14 +-
.../filter/sqlmm/todo/ST_ToMultiPoint.java | 14 +-
.../filter/sqlmm/todo/ST_ToMultiPolygon.java | 14 +-
.../sis/internal/filter/sqlmm/todo/ST_ToPoint.java | 14 +-
.../internal/filter/sqlmm/todo/ST_ToPolygon.java | 14 +-
.../sis/internal/filter/sqlmm/todo/ST_Touches.java | 9 +-
.../internal/filter/sqlmm/todo/ST_Transform.java | 23 +-
.../sis/internal/filter/sqlmm/todo/ST_Union.java | 9 +-
.../sis/internal/filter/sqlmm/todo/ST_Within.java | 9 +-
.../internal/filter/sqlmm/todo/ST_XFromBinary.java | 417 +++++++++++++++++++++
.../internal/filter/sqlmm/todo/ST_XFromGML.java | 324 ++++++++++++++++
.../internal/filter/sqlmm/todo/ST_XFromText.java | 416 ++++++++++++++++++++
.../filter/sqlmm/todo/Surface_ST_Area.java | 14 +-
.../filter/sqlmm/todo/Surface_ST_Centroid.java | 14 +-
.../filter/sqlmm/todo/Surface_ST_Perimeter.java | 14 +-
.../sqlmm/todo/Surface_ST_PointOnSurface.java | 14 +-
99 files changed, 1885 insertions(+), 1569 deletions(-)
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromBinary.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromGML.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromText.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdMPolyFromText.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdMPolyFromWKB.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdPolyFromText.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdPolyFromWKB.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromGML.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromText.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromWKB.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromGML.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromText.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromWKB.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromGML.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromText.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromWKB.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromGML.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromText.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromWKB.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromGML.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromText.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromWKB.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromGML.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromText.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromWKB.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromGML.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromText.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromWKB.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromGML.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromText.java
delete mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromWKB.java
create mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_XFromBinary.java
create mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_XFromGML.java
create mode 100644 core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_XFromText.java
[sis] 02/02: SQL/MM : cleaning code
Posted by js...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
jsorel pushed a commit to branch feat/sqlmm
in repository https://gitbox.apache.org/repos/asf/sis.git
commit 07e298508099d17c066a47ff7bd26860e1ef89e7
Author: jsorel <jo...@geomatys.com>
AuthorDate: Tue Nov 26 17:34:52 2019 +0100
SQL/MM : cleaning code
---
.../filter/sqlmm/todo/AbstractGeomFromBinary.java | 70 ----
.../filter/sqlmm/todo/AbstractGeomFromGML.java | 79 ----
.../filter/sqlmm/todo/AbstractGeomFromText.java | 69 ----
.../filter/sqlmm/todo/ST_BdMPolyFromText.java | 74 ----
.../filter/sqlmm/todo/ST_BdMPolyFromWKB.java | 74 ----
.../filter/sqlmm/todo/ST_BdPolyFromText.java | 72 ----
.../filter/sqlmm/todo/ST_BdPolyFromWKB.java | 72 ----
.../filter/sqlmm/todo/ST_GeomCollFromGML.java | 49 ---
.../filter/sqlmm/todo/ST_GeomCollFromText.java | 49 ---
.../filter/sqlmm/todo/ST_GeomCollFromWKB.java | 49 ---
.../internal/filter/sqlmm/todo/ST_GeomFromGML.java | 49 ---
.../filter/sqlmm/todo/ST_GeomFromText.java | 49 ---
.../internal/filter/sqlmm/todo/ST_GeomFromWKB.java | 49 ---
.../internal/filter/sqlmm/todo/ST_LineFromGML.java | 49 ---
.../filter/sqlmm/todo/ST_LineFromText.java | 49 ---
.../internal/filter/sqlmm/todo/ST_LineFromWKB.java | 49 ---
.../filter/sqlmm/todo/ST_MLineFromGML.java | 49 ---
.../filter/sqlmm/todo/ST_MLineFromText.java | 49 ---
.../filter/sqlmm/todo/ST_MLineFromWKB.java | 49 ---
.../filter/sqlmm/todo/ST_MPointFromGML.java | 49 ---
.../filter/sqlmm/todo/ST_MPointFromText.java | 50 ---
.../filter/sqlmm/todo/ST_MPointFromWKB.java | 49 ---
.../filter/sqlmm/todo/ST_MPolyFromGML.java | 49 ---
.../filter/sqlmm/todo/ST_MPolyFromText.java | 49 ---
.../filter/sqlmm/todo/ST_MPolyFromWKB.java | 49 ---
.../filter/sqlmm/todo/ST_PointFromGML.java | 49 ---
.../filter/sqlmm/todo/ST_PointFromText.java | 49 ---
.../filter/sqlmm/todo/ST_PointFromWKB.java | 49 ---
.../internal/filter/sqlmm/todo/ST_PolyFromGML.java | 49 ---
.../filter/sqlmm/todo/ST_PolyFromText.java | 49 ---
.../internal/filter/sqlmm/todo/ST_PolyFromWKB.java | 49 ---
.../internal/filter/sqlmm/todo/ST_XFromBinary.java | 417 +++++++++++++++++++++
.../internal/filter/sqlmm/todo/ST_XFromGML.java | 324 ++++++++++++++++
.../internal/filter/sqlmm/todo/ST_XFromText.java | 416 ++++++++++++++++++++
34 files changed, 1157 insertions(+), 1687 deletions(-)
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromBinary.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromBinary.java
deleted file mode 100644
index 5de6e39..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromBinary.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.apache.sis.internal.filter.FilterGeometryUtils;
-import org.locationtech.jts.geom.Geometry;
-import org.opengis.filter.expression.Expression;
-
-/**
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public abstract class AbstractGeomFromBinary extends AbstractSpatialFunction {
-
- public AbstractGeomFromBinary(Expression[] parameters) {
- super(parameters);
- }
-
- @Override
- protected int getMinParams() {
- return 1;
- }
-
- @Override
- protected int getMaxParams() {
- return 2;
- }
-
- protected abstract Class getExpectedClass();
-
- public String getSyntax() {
- return getName() + " ( <wkb> [,<srid>] )";
- }
-
- @Override
- public Geometry evaluate(Object candidate) {
-
- Geometry geom = FilterGeometryUtils.toGeometry(candidate, parameters.get(0));
-
- if (!getExpectedClass().isInstance(geom)) {
- warning(new Exception("WKB is not of expected type : " + getExpectedClass().getSimpleName()));
- return null;
- }
-
- if (parameters.size() > 1) {
- //srid
- geom.setSRID(((Number) parameters.get(1).evaluate(candidate)).intValue());
- }
-
- return geom;
- }
-
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromGML.java
deleted file mode 100644
index 690b9d1..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromGML.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.Geometry;
-import org.opengis.filter.expression.Expression;
-import org.opengis.util.FactoryException;
-
-/**
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public abstract class AbstractGeomFromGML extends AbstractSpatialFunction {
-
- public AbstractGeomFromGML(Expression[] parameters) {
- super(parameters);
- }
-
- @Override
- protected int getMinParams() {
- return 1;
- }
-
- @Override
- protected int getMaxParams() {
- return 2;
- }
-
- protected abstract Class getExpectedClass();
-
- public String getSyntax() {
- return getName() + " ( <gml> [,<srid>] )";
- }
-
- @Override
- public Geometry evaluate(Object candidate) {
-
- final Object obj = parameters.get(0).evaluate(candidate);
-
- final Geometry geom;
- try {
- geom = GeometrytoJTS.toJTS(String.valueOf(obj));
- } catch (FactoryException ex) {
- throw new OException(ex.getMessage(), ex);
- } catch (JAXBException ex) {
- throw new OException(ex.getMessage(), ex);
- }
-
- if (!getExpectedClass().isInstance(geom)) {
- warning(new Exception("GML is not of expected type : " + getExpectedClass().getSimpleName()));
- return null;
- }
-
- if (parameters.size() > 1) {
- //srid
- geom.setSRID(((Number) parameters.get(1).evaluate(candidate)).intValue());
- }
-
- return geom;
- }
-
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromText.java
deleted file mode 100644
index 17e4e07..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromText.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.apache.sis.internal.filter.FilterGeometryUtils;
-import org.locationtech.jts.geom.Geometry;
-import org.opengis.filter.expression.Expression;
-
-/**
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public abstract class AbstractGeomFromText extends AbstractSpatialFunction {
-
- public AbstractGeomFromText(Expression[] parameters) {
- super(parameters);
- }
-
- @Override
- protected int getMinParams() {
- return 1;
- }
-
- @Override
- protected int getMaxParams() {
- return 2;
- }
-
- protected abstract Class getExpectedClass();
-
- public String getSyntax() {
- return getName() + " ( <text> [,<srid>] )";
- }
-
- @Override
- public Geometry evaluate(Object candidate) {
-
- final Geometry geom = FilterGeometryUtils.toGeometry(candidate, parameters.get(0));
-
- if (!getExpectedClass().isInstance(geom)) {
- warning(new Exception("WKT is not of expected type : " + getExpectedClass().getSimpleName()));
- return null;
- }
-
- if (parameters.size() > 1) {
- //srid
- geom.setSRID(((Number) parameters.get(1).evaluate(candidate)).intValue());
- }
- return geom;
- }
-
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdMPolyFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdMPolyFromText.java
deleted file mode 100644
index 5d666ac..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdMPolyFromText.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.Geometry;
-import org.locationtech.jts.geom.LinearRing;
-import org.locationtech.jts.geom.MultiLineString;
-import org.locationtech.jts.geom.MultiPolygon;
-import org.locationtech.jts.geom.Polygon;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_BdMPolyFromText. <br>
- * Return an ST_MultiPolygon value which is transformed from a CHARACTER LARGE OBJECT value that
- * represents the well-known text representation of an ST_MultiLineString value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_BdMPolyFromText extends AbstractGeomFromText{
-
- public static final String NAME = "ST_BdMPolyFromText";
-
- public ST_BdMPolyFromText(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<MultiLineString> getExpectedClass() {
- return MultiLineString.class;
- }
-
- @Override
- public Geometry evaluate(Object candidate) {
- final OSerializableGeometry sergeo = super.evaluateNow(context,candidate);
- final MultiLineString mls = (MultiLineString) sergeo.getGeometry();
-
- final LinearRing exterior;
- final LinearRing[] interiors = new LinearRing[mls.getNumGeometries()-1];
-
- exterior = OrientSpatialUtilities.GF.createLinearRing(mls.getGeometryN(0).getCoordinates());
- for(int i=0;i<interiors.length;i++){
- interiors[i] = OrientSpatialUtilities.GF.createLinearRing(mls.getGeometryN(i+1).getCoordinates());
- }
-
- final Polygon poly = OrientSpatialUtilities.GF.createPolygon(exterior, interiors);
- final MultiPolygon mpoly = OrientSpatialUtilities.GF.createMultiPolygon(new Polygon[]{poly});
- mpoly.setSRID(mls.getSRID());
- sergeo.setGeometry(mpoly);
- return sergeo;
- }
-
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdMPolyFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdMPolyFromWKB.java
deleted file mode 100644
index fdc9abf..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdMPolyFromWKB.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.Geometry;
-import org.locationtech.jts.geom.LinearRing;
-import org.locationtech.jts.geom.MultiLineString;
-import org.locationtech.jts.geom.MultiPolygon;
-import org.locationtech.jts.geom.Polygon;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_BdMPolyFromWKB. <br>
- * Return an ST_MultiPolygon value which is transformed from a BINARY LARGE OBJECT value that
- * represents the well-known binary representation of an ST_MultiLineString value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_BdMPolyFromWKB extends AbstractGeomFromBinary{
-
- public static final String NAME = "ST_BdMPolyFromWKB";
-
- public ST_BdMPolyFromWKB(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<MultiLineString> getExpectedClass() {
- return MultiLineString.class;
- }
-
- @Override
- public Geometry evaluate(Object candidate) {
- final OSerializableGeometry sergeo = super.evaluateNow(context,candidate);
- final MultiLineString mls = (MultiLineString) sergeo.getGeometry();
-
- final LinearRing exterior;
- final LinearRing[] interiors = new LinearRing[mls.getNumGeometries()-1];
-
- exterior = OrientSpatialUtilities.GF.createLinearRing(mls.getGeometryN(0).getCoordinates());
- for(int i=0;i<interiors.length;i++){
- interiors[i] = OrientSpatialUtilities.GF.createLinearRing(mls.getGeometryN(i+1).getCoordinates());
- }
-
- final Polygon poly = OrientSpatialUtilities.GF.createPolygon(exterior, interiors);
- final MultiPolygon mpoly = OrientSpatialUtilities.GF.createMultiPolygon(new Polygon[]{poly});
- mpoly.setSRID(mls.getSRID());
- sergeo.setGeometry(mpoly);
- return sergeo;
- }
-
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdPolyFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdPolyFromText.java
deleted file mode 100644
index 3422644..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdPolyFromText.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.Geometry;
-import org.locationtech.jts.geom.LinearRing;
-import org.locationtech.jts.geom.MultiLineString;
-import org.locationtech.jts.geom.Polygon;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_BdPolyFromText. <br>
- * Return an ST_Polygon value which is transformed from a CHARACTER LARGE OBJECT value that
- * represents the well-known text representation of an ST_MultiLineString value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_BdPolyFromText extends AbstractGeomFromText{
-
- public static final String NAME = "ST_BdPolyFromText";
-
- public ST_BdPolyFromText(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<MultiLineString> getExpectedClass() {
- return MultiLineString.class;
- }
-
- @Override
- public Geometry evaluate(Object candidate) {
- final OSerializableGeometry sergeo = super.evaluateNow(context,candidate);
- final MultiLineString mls = (MultiLineString) sergeo.getGeometry();
-
- final LinearRing exterior;
- final LinearRing[] interiors = new LinearRing[mls.getNumGeometries()-1];
-
- exterior = OrientSpatialUtilities.GF.createLinearRing(mls.getGeometryN(0).getCoordinates());
- for(int i=0;i<interiors.length;i++){
- interiors[i] = OrientSpatialUtilities.GF.createLinearRing(mls.getGeometryN(i+1).getCoordinates());
- }
-
- final Polygon poly = OrientSpatialUtilities.GF.createPolygon(exterior, interiors);
- poly.setSRID(mls.getSRID());
- sergeo.setGeometry(poly);
- return sergeo;
- }
-
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdPolyFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdPolyFromWKB.java
deleted file mode 100644
index a20b196..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdPolyFromWKB.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.Geometry;
-import org.locationtech.jts.geom.LinearRing;
-import org.locationtech.jts.geom.MultiLineString;
-import org.locationtech.jts.geom.Polygon;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_BdPolyFromWKB. <br>
- * Return an ST_Polygon value which is transformed from a BINARY LARGE OBJECT value that represents the
- * well-known binary representation of an ST_Polygon value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_BdPolyFromWKB extends AbstractGeomFromBinary{
-
- public static final String NAME = "ST_BdPolyFromWKB";
-
- public ST_BdPolyFromWKB(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<MultiLineString> getExpectedClass() {
- return MultiLineString.class;
- }
-
- @Override
- public Geometry evaluate(Object candidate) {
- final OSerializableGeometry sergeo = super.evaluateNow(context,candidate);
- final MultiLineString mls = (MultiLineString) sergeo.getGeometry();
-
- final LinearRing exterior;
- final LinearRing[] interiors = new LinearRing[mls.getNumGeometries()-1];
-
- exterior = OrientSpatialUtilities.GF.createLinearRing(mls.getGeometryN(0).getCoordinates());
- for(int i=0;i<interiors.length;i++){
- interiors[i] = OrientSpatialUtilities.GF.createLinearRing(mls.getGeometryN(i+1).getCoordinates());
- }
-
- final Polygon poly = OrientSpatialUtilities.GF.createPolygon(exterior, interiors);
- poly.setSRID(mls.getSRID());
- sergeo.setGeometry(poly);
- return sergeo;
- }
-
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromGML.java
deleted file mode 100644
index 3bc2d2e..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromGML.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.GeometryCollection;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomCollFromGML. <br>
- * Return an ST_GeomCollection value which is transformed from a CHARACTER LARGE OBJECT value that
- * represents the GML representationof an ST_GeomCollection value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_GeomCollFromGML extends AbstractGeomFromGML{
-
- public static final String NAME = "ST_GeomCollFromGML";
-
- public ST_GeomCollFromGML(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<GeometryCollection> getExpectedClass() {
- return GeometryCollection.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromText.java
deleted file mode 100644
index 587b6a1..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromText.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.GeometryCollection;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomCollFromText. <br>
- * Return an ST_GeomCollection value which is transformed from a CHARACTER LARGE OBJECT value that
- * represents the well-known text representation of an ST_GeomCollection value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_GeomCollFromText extends AbstractGeomFromText{
-
- public static final String NAME = "ST_GeomCollFromText";
-
- public ST_GeomCollFromText(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<GeometryCollection> getExpectedClass() {
- return GeometryCollection.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromWKB.java
deleted file mode 100644
index 739feca..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromWKB.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.GeometryCollection;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomCollFromWKB. <br>
- * Return an ST_GeomCollection value which is transformed from a BINARY LARGE OBJECT value that
- * represents the well-known binary representation of an ST_GeomCollection value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_GeomCollFromWKB extends AbstractGeomFromBinary{
-
- public static final String NAME = "ST_GeomCollFromWKB";
-
- public ST_GeomCollFromWKB(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<GeometryCollection> getExpectedClass() {
- return GeometryCollection.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromGML.java
deleted file mode 100644
index 5ac64bc..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromGML.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.Geometry;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomFromGML. <br>
- * Return an ST_Geometry value which is transformed from a CHARACTER LARGE OBJECT value that
- * represents the GML representationof an ST_Geometry.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_GeomFromGML extends AbstractGeomFromGML{
-
- public static final String NAME = "ST_GeomFromGML";
-
- public ST_GeomFromGML(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<Geometry> getExpectedClass() {
- return Geometry.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromText.java
deleted file mode 100644
index 849c5cb..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromText.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.Geometry;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomFromText. <br>
- * Return an ST_Geometry value which is transformed from a CHARACTER LARGE OBJECT value that
- * represents the well-known text representation of an ST_Geometry value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_GeomFromText extends AbstractGeomFromText{
-
- public static final String NAME = "ST_GeomFromText";
-
- public ST_GeomFromText(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<Geometry> getExpectedClass() {
- return Geometry.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromWKB.java
deleted file mode 100644
index 9574ddc..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromWKB.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.Geometry;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomFromWKB. <br>
- * Return an ST_Geometry value which is transformed from a BINARY LARGE OBJECT value that represents
- * the well-known binary representation of an ST_Geometry value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_GeomFromWKB extends AbstractGeomFromBinary{
-
- public static final String NAME = "ST_GeomFromWKB";
-
- public ST_GeomFromWKB(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<Geometry> getExpectedClass() {
- return Geometry.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromGML.java
deleted file mode 100644
index 9aa5b89..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromGML.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.LineString;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_LineFromGML. <br>
- * Return an ST_LineString value which is transformed from a CHARACTER LARGE OBJECT value that
- * represents the GML representation of an ST_LineString value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_LineFromGML extends AbstractGeomFromGML{
-
- public static final String NAME = "ST_LineFromGML";
-
- public ST_LineFromGML(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<LineString> getExpectedClass() {
- return LineString.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromText.java
deleted file mode 100644
index 0b3e09f..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromText.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.LineString;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_LineFromText. <br>
- * Return an ST_LineString value which is transformed from a CHARACTER LARGE OBJECT value that
- * represents the well-known text representation of an ST_LineString value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_LineFromText extends AbstractGeomFromText{
-
- public static final String NAME = "ST_LineFromText";
-
- public ST_LineFromText(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<LineString> getExpectedClass() {
- return LineString.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromWKB.java
deleted file mode 100644
index 4d37ef0..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromWKB.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.LineString;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_LineFromWKB. <br>
- * Return an ST_LineString value which is transformed from a BINARY LARGE OBJECT value that represents
- * the well-known binary representation of an ST_LineString value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_LineFromWKB extends AbstractGeomFromBinary{
-
- public static final String NAME = "ST_LineFromWKB";
-
- public ST_LineFromWKB(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<LineString> getExpectedClass() {
- return LineString.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromGML.java
deleted file mode 100644
index eccf1fc..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromGML.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.MultiLineString;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromGML. <br>
- * Return an ST_MultiLineString value which is transformed from a CHARACTER LARGE OBJECT value that
- * represents the GML representationof an ST_MultiLineString value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_MLineFromGML extends AbstractGeomFromGML{
-
- public static final String NAME = "ST_MLineFromGML";
-
- public ST_MLineFromGML(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<MultiLineString> getExpectedClass() {
- return MultiLineString.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromText.java
deleted file mode 100644
index c7d46ad..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromText.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.MultiLineString;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MLineFromText. <br>
- * Return an ST_MultiLineString value which is transformed from a CHARACTER LARGE OBJECT value that
- * represents the well-known text representation of an ST_MultiLineString value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_MLineFromText extends AbstractGeomFromText{
-
- public static final String NAME = "ST_MLineFromText";
-
- public ST_MLineFromText(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<MultiLineString> getExpectedClass() {
- return MultiLineString.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromWKB.java
deleted file mode 100644
index 412321a..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromWKB.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.MultiLineString;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromWKB. <br>
- * Return an ST_MultiLineString value which is transformed from a BINARY LARGE OBJECT value that
- * represents the well-known binary representation of an ST_MultiLineString value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_MLineFromWKB extends AbstractGeomFromBinary{
-
- public static final String NAME = "ST_MLineFromWKB";
-
- public ST_MLineFromWKB(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<MultiLineString> getExpectedClass() {
- return MultiLineString.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromGML.java
deleted file mode 100644
index 3f0b242..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromGML.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.MultiPoint;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromGML. <br>
- * Return an ST_MultiPoint value which is transformed from a CHARACTER LARGE OBJECT value that
- * represents the GML representation of an ST_MultiPoint value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_MPointFromGML extends AbstractGeomFromGML{
-
- public static final String NAME = "ST_MPointFromGML";
-
- public ST_MPointFromGML(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<MultiPoint> getExpectedClass() {
- return MultiPoint.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromText.java
deleted file mode 100644
index bdbe93d..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromText.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.MultiPoint;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromText. <br>
- * Return an ST_MultiPoint value which is transformed from a CHARACTER LARGE OBJECT value that
- * represents the well-known text representation of an ST_MultiPoint value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_MPointFromText extends AbstractGeomFromText{
-
- public static final String NAME = "ST_MPointFromText";
-
- public ST_MPointFromText(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<MultiPoint> getExpectedClass() {
- return MultiPoint.class;
- }
-
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromWKB.java
deleted file mode 100644
index f5b2467..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromWKB.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.MultiPoint;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromWKB. <br>
- * Return an ST_MultiPoint value which is transformed from a BINARY LARGE OBJECT value that represents
- * the well-known binary representation of an ST_MultiPoint value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_MPointFromWKB extends AbstractGeomFromBinary{
-
- public static final String NAME = "ST_MPointFromWKB";
-
- public ST_MPointFromWKB(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<MultiPoint> getExpectedClass() {
- return MultiPoint.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromGML.java
deleted file mode 100644
index 74237a0..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromGML.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.MultiPolygon;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MPolyFromGML. <br>
- * Return an ST_MultiPolygon value which is transformed from a CHARACTER LARGE OBJECT value that
- * represents the GML representationof an ST_MultiPolygon value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_MPolyFromGML extends AbstractGeomFromGML{
-
- public static final String NAME = "ST_MPolyFromGML";
-
- public ST_MPolyFromGML(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<MultiPolygon> getExpectedClass() {
- return MultiPolygon.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromText.java
deleted file mode 100644
index d093b28..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromText.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.MultiPolygon;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MPolyFromText. <br>
- * Return an ST_MultiPolygon value which is transformed from a CHARACTER LARGE OBJECT value that
- * represents the well-known text representation of an ST_MultiPolygon value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_MPolyFromText extends AbstractGeomFromText{
-
- public static final String NAME = "ST_MPolyFromText";
-
- public ST_MPolyFromText(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<MultiPolygon> getExpectedClass() {
- return MultiPolygon.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromWKB.java
deleted file mode 100644
index 375673d..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromWKB.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.MultiPolygon;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MPolyFromWKB. <br>
- * Return an ST_MultiPolygon value which is transformed from a BINARY LARGE OBJECT value that
- * represents the well-known binary representation of an ST_MultiPolygon value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_MPolyFromWKB extends AbstractGeomFromBinary{
-
- public static final String NAME = "ST_MPolyFromWKB";
-
- public ST_MPolyFromWKB(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<MultiPolygon> getExpectedClass() {
- return MultiPolygon.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromGML.java
deleted file mode 100644
index a97af22..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromGML.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.Point;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_PointFromGML. <br>
- * Return an ST_Point value which is transformed from a CHARACTER LARGE OBJECT value that represents
- * the GML representationof an ST_Point.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_PointFromGML extends AbstractGeomFromGML{
-
- public static final String NAME = "ST_PointFromGML";
-
- public ST_PointFromGML(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<Point> getExpectedClass() {
- return Point.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromText.java
deleted file mode 100644
index 662b0ef..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromText.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.Point;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_PointFromText. <br>
- * Return an ST_Point value which is transformed from a CHARACTER LARGE OBJECT value that represents
- * the well-known text representation of an ST_Point value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_PointFromText extends AbstractGeomFromText{
-
- public static final String NAME = "ST_PointFromText";
-
- public ST_PointFromText(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<Point> getExpectedClass() {
- return Point.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromWKB.java
deleted file mode 100644
index 761d5dc..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromWKB.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.Point;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_PointFromWKB. <br>
- * Return an ST_Point value which is transformed from a BINARY LARGE OBJECT value that represents the
- * well-known binary representation of an ST_Point value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_PointFromWKB extends AbstractGeomFromBinary{
-
- public static final String NAME = "ST_PointFromWKB";
-
- public ST_PointFromWKB(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<Point> getExpectedClass() {
- return Point.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromGML.java
deleted file mode 100644
index 3e4bf92..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromGML.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.Polygon;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_PolyFromGML. <br>
- * Return an ST_Polygon value which is transformed from a CHARACTER LARGE OBJECT value that
- * represents the GML representationof an ST_Polygon value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_PolyFromGML extends AbstractGeomFromGML{
-
- public static final String NAME = "ST_PolyFromGML";
-
- public ST_PolyFromGML(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<Polygon> getExpectedClass() {
- return Polygon.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromText.java
deleted file mode 100644
index 1d81020..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromText.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.Polygon;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_PolyFromText. <br>
- * Return an ST_Polygon value which is transformed from a CHARACTER LARGE OBJECT value that
- * represents the well-known text representation of an ST_Polygon value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_PolyFromText extends AbstractGeomFromText{
-
- public static final String NAME = "ST_PolyFromText";
-
- public ST_PolyFromText(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<Polygon> getExpectedClass() {
- return Polygon.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromWKB.java
deleted file mode 100644
index 1eb8b47..0000000
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromWKB.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.sis.internal.filter.sqlmm.todo;
-
-import org.locationtech.jts.geom.Polygon;
-import org.opengis.filter.expression.Expression;
-
-/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_PolyFromWKB. <br>
- * Return an ST_Polygon value which is transformed from a BINARY LARGE OBJECT value that represents the
- * well-known binary representation of an ST_Polygon value.
- *
- * @author Johann Sorel (Geomatys)
- * @version 2.0
- * @since 2.0
- * @module
- */
-public final class ST_PolyFromWKB extends AbstractGeomFromBinary {
-
- public static final String NAME = "ST_PolyFromWKB";
-
- public ST_PolyFromWKB(Expression[] parameters){
- super(parameters);
- }
-
- @Override
- public String getName() {
- return NAME;
- }
-
- @Override
- protected Class<Polygon> getExpectedClass() {
- return Polygon.class;
- }
-}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_XFromBinary.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_XFromBinary.java
new file mode 100644
index 0000000..07e8756
--- /dev/null
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_XFromBinary.java
@@ -0,0 +1,417 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.internal.filter.sqlmm.todo;
+
+import org.apache.sis.internal.filter.FilterGeometryUtils;
+import org.locationtech.jts.geom.Geometry;
+import org.locationtech.jts.geom.GeometryCollection;
+import org.locationtech.jts.geom.LineString;
+import org.locationtech.jts.geom.LinearRing;
+import org.locationtech.jts.geom.MultiLineString;
+import org.locationtech.jts.geom.MultiPoint;
+import org.locationtech.jts.geom.MultiPolygon;
+import org.locationtech.jts.geom.Point;
+import org.locationtech.jts.geom.Polygon;
+import org.opengis.filter.expression.Expression;
+
+/**
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+public abstract class ST_XFromBinary extends AbstractSpatialFunction {
+
+ public ST_XFromBinary(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ protected int getMinParams() {
+ return 1;
+ }
+
+ @Override
+ protected int getMaxParams() {
+ return 2;
+ }
+
+ protected abstract Class getExpectedClass();
+
+ public String getSyntax() {
+ return getName() + " ( <wkb> [,<srid>] )";
+ }
+
+ @Override
+ public Geometry evaluate(Object candidate) {
+
+ Geometry geom = FilterGeometryUtils.toGeometry(candidate, parameters.get(0));
+
+ if (!getExpectedClass().isInstance(geom)) {
+ warning(new Exception("WKB is not of expected type : " + getExpectedClass().getSimpleName()));
+ return null;
+ }
+
+ if (parameters.size() > 1) {
+ //srid
+ geom.setSRID(((Number) parameters.get(1).evaluate(candidate)).intValue());
+ }
+
+ return geom;
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_BdMPolyFromWKB. <br>
+ * Return an ST_MultiPolygon value which is transformed from a BINARY LARGE
+ * OBJECT value that represents the well-known binary representation of an
+ * ST_MultiLineString value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_BdMPolyFromWKB extends ST_XFromBinary {
+
+ public static final String NAME = "ST_BdMPolyFromWKB";
+
+ public ST_BdMPolyFromWKB(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiLineString> getExpectedClass() {
+ return MultiLineString.class;
+ }
+
+ @Override
+ public Geometry evaluate(Object candidate) {
+ final OSerializableGeometry sergeo = super.evaluateNow(context, candidate);
+ final MultiLineString mls = (MultiLineString) sergeo.getGeometry();
+
+ final LinearRing exterior;
+ final LinearRing[] interiors = new LinearRing[mls.getNumGeometries() - 1];
+
+ exterior = OrientSpatialUtilities.GF.createLinearRing(mls.getGeometryN(0).getCoordinates());
+ for (int i = 0; i < interiors.length; i++) {
+ interiors[i] = OrientSpatialUtilities.GF.createLinearRing(mls.getGeometryN(i + 1).getCoordinates());
+ }
+
+ final Polygon poly = OrientSpatialUtilities.GF.createPolygon(exterior, interiors);
+ final MultiPolygon mpoly = OrientSpatialUtilities.GF.createMultiPolygon(new Polygon[]{poly});
+ mpoly.setSRID(mls.getSRID());
+ sergeo.setGeometry(mpoly);
+ return sergeo;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_BdPolyFromWKB. <br>
+ * Return an ST_Polygon value which is transformed from a BINARY LARGE
+ * OBJECT value that represents the well-known binary representation of an
+ * ST_Polygon value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_BdPolyFromWKB extends ST_XFromBinary {
+
+ public static final String NAME = "ST_BdPolyFromWKB";
+
+ public ST_BdPolyFromWKB(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiLineString> getExpectedClass() {
+ return MultiLineString.class;
+ }
+
+ @Override
+ public Geometry evaluate(Object candidate) {
+ final OSerializableGeometry sergeo = super.evaluateNow(context, candidate);
+ final MultiLineString mls = (MultiLineString) sergeo.getGeometry();
+
+ final LinearRing exterior;
+ final LinearRing[] interiors = new LinearRing[mls.getNumGeometries() - 1];
+
+ exterior = OrientSpatialUtilities.GF.createLinearRing(mls.getGeometryN(0).getCoordinates());
+ for (int i = 0; i < interiors.length; i++) {
+ interiors[i] = OrientSpatialUtilities.GF.createLinearRing(mls.getGeometryN(i + 1).getCoordinates());
+ }
+
+ final Polygon poly = OrientSpatialUtilities.GF.createPolygon(exterior, interiors);
+ poly.setSRID(mls.getSRID());
+ sergeo.setGeometry(poly);
+ return sergeo;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomCollFromWKB. <br>
+ * Return an ST_GeomCollection value which is transformed from a BINARY
+ * LARGE OBJECT value that represents the well-known binary representation
+ * of an ST_GeomCollection value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_GeomCollFromWKB extends ST_XFromBinary {
+
+ public static final String NAME = "ST_GeomCollFromWKB";
+
+ public ST_GeomCollFromWKB(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<GeometryCollection> getExpectedClass() {
+ return GeometryCollection.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomFromWKB. <br>
+ * Return an ST_Geometry value which is transformed from a BINARY LARGE
+ * OBJECT value that represents the well-known binary representation of an
+ * ST_Geometry value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_GeomFromWKB extends ST_XFromBinary {
+
+ public static final String NAME = "ST_GeomFromWKB";
+
+ public ST_GeomFromWKB(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_LineFromWKB. <br>
+ * Return an ST_LineString value which is transformed from a BINARY LARGE
+ * OBJECT value that represents the well-known binary representation of an
+ * ST_LineString value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_LineFromWKB extends ST_XFromBinary {
+
+ public static final String NAME = "ST_LineFromWKB";
+
+ public ST_LineFromWKB(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<LineString> getExpectedClass() {
+ return LineString.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromWKB. <br>
+ * Return an ST_MultiLineString value which is transformed from a BINARY
+ * LARGE OBJECT value that represents the well-known binary representation
+ * of an ST_MultiLineString value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_MLineFromWKB extends ST_XFromBinary {
+
+ public static final String NAME = "ST_MLineFromWKB";
+
+ public ST_MLineFromWKB(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiLineString> getExpectedClass() {
+ return MultiLineString.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromWKB. <br>
+ * Return an ST_MultiPoint value which is transformed from a BINARY LARGE
+ * OBJECT value that represents the well-known binary representation of an
+ * ST_MultiPoint value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_MPointFromWKB extends ST_XFromBinary {
+
+ public static final String NAME = "ST_MPointFromWKB";
+
+ public ST_MPointFromWKB(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiPoint> getExpectedClass() {
+ return MultiPoint.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MPolyFromWKB. <br>
+ * Return an ST_MultiPolygon value which is transformed from a BINARY LARGE
+ * OBJECT value that represents the well-known binary representation of an
+ * ST_MultiPolygon value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_MPolyFromWKB extends ST_XFromBinary {
+
+ public static final String NAME = "ST_MPolyFromWKB";
+
+ public ST_MPolyFromWKB(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiPolygon> getExpectedClass() {
+ return MultiPolygon.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_PointFromWKB. <br>
+ * Return an ST_Point value which is transformed from a BINARY LARGE OBJECT
+ * value that represents the well-known binary representation of an ST_Point
+ * value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_PointFromWKB extends ST_XFromBinary {
+
+ public static final String NAME = "ST_PointFromWKB";
+
+ public ST_PointFromWKB(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Point> getExpectedClass() {
+ return Point.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_PolyFromWKB. <br>
+ * Return an ST_Polygon value which is transformed from a BINARY LARGE
+ * OBJECT value that represents the well-known binary representation of an
+ * ST_Polygon value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_PolyFromWKB extends ST_XFromBinary {
+
+ public static final String NAME = "ST_PolyFromWKB";
+
+ public ST_PolyFromWKB(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Polygon> getExpectedClass() {
+ return Polygon.class;
+ }
+ }
+
+}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_XFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_XFromGML.java
new file mode 100644
index 0000000..223eb1e
--- /dev/null
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_XFromGML.java
@@ -0,0 +1,324 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.internal.filter.sqlmm.todo;
+
+import org.locationtech.jts.geom.Geometry;
+import org.locationtech.jts.geom.GeometryCollection;
+import org.locationtech.jts.geom.LineString;
+import org.locationtech.jts.geom.MultiLineString;
+import org.locationtech.jts.geom.MultiPoint;
+import org.locationtech.jts.geom.MultiPolygon;
+import org.locationtech.jts.geom.Point;
+import org.locationtech.jts.geom.Polygon;
+import org.opengis.filter.expression.Expression;
+import org.opengis.util.FactoryException;
+
+/**
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+public abstract class ST_XFromGML extends AbstractSpatialFunction {
+
+ public ST_XFromGML(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ protected int getMinParams() {
+ return 1;
+ }
+
+ @Override
+ protected int getMaxParams() {
+ return 2;
+ }
+
+ protected abstract Class getExpectedClass();
+
+ public String getSyntax() {
+ return getName() + " ( <gml> [,<srid>] )";
+ }
+
+ @Override
+ public Geometry evaluate(Object candidate) {
+
+ final Object obj = parameters.get(0).evaluate(candidate);
+
+ final Geometry geom;
+ try {
+ geom = GeometrytoJTS.toJTS(String.valueOf(obj));
+ } catch (FactoryException ex) {
+ throw new OException(ex.getMessage(), ex);
+ } catch (JAXBException ex) {
+ throw new OException(ex.getMessage(), ex);
+ }
+
+ if (!getExpectedClass().isInstance(geom)) {
+ warning(new Exception("GML is not of expected type : " + getExpectedClass().getSimpleName()));
+ return null;
+ }
+
+ if (parameters.size() > 1) {
+ //srid
+ geom.setSRID(((Number) parameters.get(1).evaluate(candidate)).intValue());
+ }
+
+ return geom;
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomCollFromGML. <br>
+ * Return an ST_GeomCollection value which is transformed from a CHARACTER
+ * LARGE OBJECT value that represents the GML representationof an
+ * ST_GeomCollection value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_GeomCollFromGML extends ST_XFromGML {
+
+ public static final String NAME = "ST_GeomCollFromGML";
+
+ public ST_GeomCollFromGML(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<GeometryCollection> getExpectedClass() {
+ return GeometryCollection.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomFromGML. <br>
+ * Return an ST_Geometry value which is transformed from a CHARACTER LARGE
+ * OBJECT value that represents the GML representationof an ST_Geometry.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_GeomFromGML extends ST_XFromGML {
+
+ public static final String NAME = "ST_GeomFromGML";
+
+ public ST_GeomFromGML(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_LineFromGML. <br>
+ * Return an ST_LineString value which is transformed from a CHARACTER LARGE
+ * OBJECT value that represents the GML representation of an ST_LineString
+ * value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_LineFromGML extends ST_XFromGML {
+
+ public static final String NAME = "ST_LineFromGML";
+
+ public ST_LineFromGML(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<LineString> getExpectedClass() {
+ return LineString.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromGML. <br>
+ * Return an ST_MultiLineString value which is transformed from a CHARACTER
+ * LARGE OBJECT value that represents the GML representation of an
+ * ST_MultiLineString value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_MLineFromGML extends ST_XFromGML {
+
+ public static final String NAME = "ST_MLineFromGML";
+
+ public ST_MLineFromGML(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiLineString> getExpectedClass() {
+ return MultiLineString.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromGML. <br>
+ * Return an ST_MultiPoint value which is transformed from a CHARACTER LARGE
+ * OBJECT value that represents the GML representation of an ST_MultiPoint
+ * value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_MPointFromGML extends ST_XFromGML {
+
+ public static final String NAME = "ST_MPointFromGML";
+
+ public ST_MPointFromGML(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiPoint> getExpectedClass() {
+ return MultiPoint.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MPolyFromGML. <br>
+ * Return an ST_MultiPolygon value which is transformed from a CHARACTER
+ * LARGE OBJECT value that represents the GML representation of an
+ * ST_MultiPolygon value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_MPolyFromGML extends ST_XFromGML {
+
+ public static final String NAME = "ST_MPolyFromGML";
+
+ public ST_MPolyFromGML(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiPolygon> getExpectedClass() {
+ return MultiPolygon.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_PointFromGML. <br>
+ * Return an ST_Point value which is transformed from a CHARACTER LARGE
+ * OBJECT value that represents the GML representation of an ST_Point.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_PointFromGML extends ST_XFromGML {
+
+ public static final String NAME = "ST_PointFromGML";
+
+ public ST_PointFromGML(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Point> getExpectedClass() {
+ return Point.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_PolyFromGML. <br>
+ * Return an ST_Polygon value which is transformed from a CHARACTER LARGE
+ * OBJECT value that represents the GML representation of an ST_Polygon
+ * value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_PolyFromGML extends ST_XFromGML {
+
+ public static final String NAME = "ST_PolyFromGML";
+
+ public ST_PolyFromGML(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Polygon> getExpectedClass() {
+ return Polygon.class;
+ }
+ }
+
+}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_XFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_XFromText.java
new file mode 100644
index 0000000..6928765
--- /dev/null
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_XFromText.java
@@ -0,0 +1,416 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.sis.internal.filter.sqlmm.todo;
+
+import org.apache.sis.internal.filter.FilterGeometryUtils;
+import org.locationtech.jts.geom.Geometry;
+import org.locationtech.jts.geom.GeometryCollection;
+import org.locationtech.jts.geom.LineString;
+import org.locationtech.jts.geom.LinearRing;
+import org.locationtech.jts.geom.MultiLineString;
+import org.locationtech.jts.geom.MultiPoint;
+import org.locationtech.jts.geom.MultiPolygon;
+import org.locationtech.jts.geom.Point;
+import org.locationtech.jts.geom.Polygon;
+import org.opengis.filter.expression.Expression;
+
+/**
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+public abstract class ST_XFromText extends AbstractSpatialFunction {
+
+ public ST_XFromText(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ protected int getMinParams() {
+ return 1;
+ }
+
+ @Override
+ protected int getMaxParams() {
+ return 2;
+ }
+
+ protected abstract Class getExpectedClass();
+
+ public String getSyntax() {
+ return getName() + " ( <text> [,<srid>] )";
+ }
+
+ @Override
+ public Geometry evaluate(Object candidate) {
+
+ final Geometry geom = FilterGeometryUtils.toGeometry(candidate, parameters.get(0));
+
+ if (!getExpectedClass().isInstance(geom)) {
+ warning(new Exception("WKT is not of expected type : " + getExpectedClass().getSimpleName()));
+ return null;
+ }
+
+ if (parameters.size() > 1) {
+ //srid
+ geom.setSRID(((Number) parameters.get(1).evaluate(candidate)).intValue());
+ }
+ return geom;
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_BdMPolyFromText. <br>
+ * Return an ST_MultiPolygon value which is transformed from a CHARACTER
+ * LARGE OBJECT value that represents the well-known text representation of
+ * an ST_MultiLineString value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_BdMPolyFromText extends ST_XFromText {
+
+ public static final String NAME = "ST_BdMPolyFromText";
+
+ public ST_BdMPolyFromText(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiLineString> getExpectedClass() {
+ return MultiLineString.class;
+ }
+
+ @Override
+ public Geometry evaluate(Object candidate) {
+ final OSerializableGeometry sergeo = super.evaluateNow(context, candidate);
+ final MultiLineString mls = (MultiLineString) sergeo.getGeometry();
+
+ final LinearRing exterior;
+ final LinearRing[] interiors = new LinearRing[mls.getNumGeometries() - 1];
+
+ exterior = OrientSpatialUtilities.GF.createLinearRing(mls.getGeometryN(0).getCoordinates());
+ for (int i = 0; i < interiors.length; i++) {
+ interiors[i] = OrientSpatialUtilities.GF.createLinearRing(mls.getGeometryN(i + 1).getCoordinates());
+ }
+
+ final Polygon poly = OrientSpatialUtilities.GF.createPolygon(exterior, interiors);
+ final MultiPolygon mpoly = OrientSpatialUtilities.GF.createMultiPolygon(new Polygon[]{poly});
+ mpoly.setSRID(mls.getSRID());
+ sergeo.setGeometry(mpoly);
+ return sergeo;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_BdPolyFromText. <br>
+ * Return an ST_Polygon value which is transformed from a CHARACTER LARGE
+ * OBJECT value that represents the well-known text representation of an
+ * ST_MultiLineString value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_BdPolyFromText extends ST_XFromText {
+
+ public static final String NAME = "ST_BdPolyFromText";
+
+ public ST_BdPolyFromText(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiLineString> getExpectedClass() {
+ return MultiLineString.class;
+ }
+
+ @Override
+ public Geometry evaluate(Object candidate) {
+ final OSerializableGeometry sergeo = super.evaluateNow(context, candidate);
+ final MultiLineString mls = (MultiLineString) sergeo.getGeometry();
+
+ final LinearRing exterior;
+ final LinearRing[] interiors = new LinearRing[mls.getNumGeometries() - 1];
+
+ exterior = OrientSpatialUtilities.GF.createLinearRing(mls.getGeometryN(0).getCoordinates());
+ for (int i = 0; i < interiors.length; i++) {
+ interiors[i] = OrientSpatialUtilities.GF.createLinearRing(mls.getGeometryN(i + 1).getCoordinates());
+ }
+
+ final Polygon poly = OrientSpatialUtilities.GF.createPolygon(exterior, interiors);
+ poly.setSRID(mls.getSRID());
+ sergeo.setGeometry(poly);
+ return sergeo;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomCollFromText. <br>
+ * Return an ST_GeomCollection value which is transformed from a CHARACTER
+ * LARGE OBJECT value that represents the well-known text representation of
+ * an ST_GeomCollection value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_GeomCollFromText extends ST_XFromText {
+
+ public static final String NAME = "ST_GeomCollFromText";
+
+ public ST_GeomCollFromText(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<GeometryCollection> getExpectedClass() {
+ return GeometryCollection.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomFromText. <br>
+ * Return an ST_Geometry value which is transformed from a CHARACTER LARGE
+ * OBJECT value that represents the well-known text representation of an
+ * ST_Geometry value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_GeomFromText extends ST_XFromText {
+
+ public static final String NAME = "ST_GeomFromText";
+
+ public ST_GeomFromText(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_LineFromText. <br>
+ * Return an ST_LineString value which is transformed from a CHARACTER LARGE
+ * OBJECT value that represents the well-known text representation of an
+ * ST_LineString value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_LineFromText extends ST_XFromText {
+
+ public static final String NAME = "ST_LineFromText";
+
+ public ST_LineFromText(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<LineString> getExpectedClass() {
+ return LineString.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MLineFromText. <br>
+ * Return an ST_MultiLineString value which is transformed from a CHARACTER
+ * LARGE OBJECT value that represents the well-known text representation of
+ * an ST_MultiLineString value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_MLineFromText extends ST_XFromText {
+
+ public static final String NAME = "ST_MLineFromText";
+
+ public ST_MLineFromText(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiLineString> getExpectedClass() {
+ return MultiLineString.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromText. <br>
+ * Return an ST_MultiPoint value which is transformed from a CHARACTER LARGE
+ * OBJECT value that represents the well-known text representation of an
+ * ST_MultiPoint value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_MPointFromText extends ST_XFromText {
+
+ public static final String NAME = "ST_MPointFromText";
+
+ public ST_MPointFromText(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiPoint> getExpectedClass() {
+ return MultiPoint.class;
+ }
+
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MPolyFromText. <br>
+ * Return an ST_MultiPolygon value which is transformed from a CHARACTER
+ * LARGE OBJECT value that represents the well-known text representation of
+ * an ST_MultiPolygon value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_MPolyFromText extends ST_XFromText {
+
+ public static final String NAME = "ST_MPolyFromText";
+
+ public ST_MPolyFromText(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiPolygon> getExpectedClass() {
+ return MultiPolygon.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_PointFromText. <br>
+ * Return an ST_Point value which is transformed from a CHARACTER LARGE
+ * OBJECT value that represents the well-known text representation of an
+ * ST_Point value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_PointFromText extends ST_XFromText {
+
+ public static final String NAME = "ST_PointFromText";
+
+ public ST_PointFromText(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Point> getExpectedClass() {
+ return Point.class;
+ }
+ }
+
+ /**
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_PolyFromText. <br>
+ * Return an ST_Polygon value which is transformed from a CHARACTER LARGE
+ * OBJECT value that represents the well-known text representation of an
+ * ST_Polygon value.
+ *
+ * @author Johann Sorel (Geomatys)
+ * @version 2.0
+ * @since 2.0
+ * @module
+ */
+ public static final class ST_PolyFromText extends ST_XFromText {
+
+ public static final String NAME = "ST_PolyFromText";
+
+ public ST_PolyFromText(Expression[] parameters) {
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Polygon> getExpectedClass() {
+ return Polygon.class;
+ }
+ }
+}
[sis] 01/02: SQL/MM : cleaning code
Posted by js...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
jsorel pushed a commit to branch feat/sqlmm
in repository https://gitbox.apache.org/repos/asf/sis.git
commit fb1c2aeb919e733e511092b5f321dcbdc6622a2f
Author: jsorel <jo...@geomatys.com>
AuthorDate: Tue Nov 26 17:20:25 2019 +0100
SQL/MM : cleaning code
---
.../filter/sqlmm/todo/AbstractGeomConstructor.java | 2 +-
.../filter/sqlmm/todo/AbstractGeomFromBinary.java | 2 +-
.../filter/sqlmm/todo/AbstractGeomFromGML.java | 2 +-
.../filter/sqlmm/todo/AbstractGeomFromText.java | 2 +-
.../sqlmm/todo/CurvePolygon_ST_ExteriorRing.java | 2 +-
.../sqlmm/todo/CurvePolygon_ST_InteriorRingN.java | 2 +-
.../todo/CurvePolygon_ST_NumInteriorRings.java | 14 ++++++++++--
.../filter/sqlmm/todo/Curve_ST_EndPoint.java | 16 ++++++++++---
.../filter/sqlmm/todo/Curve_ST_IsClosed.java | 14 ++++++++++--
.../filter/sqlmm/todo/Curve_ST_IsRing.java | 14 ++++++++++--
.../filter/sqlmm/todo/Curve_ST_Length.java | 3 ++-
.../filter/sqlmm/todo/Curve_ST_StartPoint.java | 16 ++++++++++---
.../filter/sqlmm/todo/GeomColl_ST_GeometryN.java | 26 +++++++++++++++++++---
.../sqlmm/todo/GeomColl_ST_NumGeometries.java | 14 ++++++++++--
.../filter/sqlmm/todo/Line_ST_NumPoints.java | 14 ++++++++++--
.../internal/filter/sqlmm/todo/Line_ST_PointN.java | 24 ++++++++++++++++++--
.../filter/sqlmm/todo/Point_ST_ExplicitPoint.java | 14 ++++++++++--
.../sis/internal/filter/sqlmm/todo/Point_ST_X.java | 14 ++++++++++--
.../sis/internal/filter/sqlmm/todo/Point_ST_Y.java | 14 ++++++++++--
.../sis/internal/filter/sqlmm/todo/Point_ST_Z.java | 14 ++++++++++--
.../internal/filter/sqlmm/todo/ST_AsBinary.java | 14 ++++++++++--
.../sis/internal/filter/sqlmm/todo/ST_AsGML.java | 14 ++++++++++--
.../sis/internal/filter/sqlmm/todo/ST_AsText.java | 14 ++++++++++--
.../filter/sqlmm/todo/ST_BdMPolyFromText.java | 17 +++++++++++---
.../filter/sqlmm/todo/ST_BdMPolyFromWKB.java | 16 ++++++++++---
.../filter/sqlmm/todo/ST_BdPolyFromText.java | 17 +++++++++++---
.../filter/sqlmm/todo/ST_BdPolyFromWKB.java | 17 +++++++++++---
.../internal/filter/sqlmm/todo/ST_Boundary.java | 16 ++++++++++---
.../sis/internal/filter/sqlmm/todo/ST_Buffer.java | 26 +++++++++++++++++++---
.../internal/filter/sqlmm/todo/ST_Contains.java | 9 ++++++--
.../internal/filter/sqlmm/todo/ST_ConvexHull.java | 16 ++++++++++---
.../internal/filter/sqlmm/todo/ST_CoordDim.java | 19 +++++++++++-----
.../sis/internal/filter/sqlmm/todo/ST_Crosses.java | 12 ++++++----
.../internal/filter/sqlmm/todo/ST_Difference.java | 11 ++++++---
.../internal/filter/sqlmm/todo/ST_Dimension.java | 14 ++++++++++--
.../internal/filter/sqlmm/todo/ST_Disjoint.java | 9 ++++++--
.../internal/filter/sqlmm/todo/ST_Distance.java | 9 ++++++--
.../internal/filter/sqlmm/todo/ST_Envelope.java | 16 ++++++++++---
.../sis/internal/filter/sqlmm/todo/ST_Equals.java | 9 ++++++--
.../filter/sqlmm/todo/ST_GeomCollFromGML.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_GeomCollFromText.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_GeomCollFromWKB.java | 15 ++++++++++---
.../filter/sqlmm/todo/ST_GeomCollection.java | 13 +++++++++--
.../internal/filter/sqlmm/todo/ST_GeomFromGML.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_GeomFromText.java | 13 +++++++++--
.../internal/filter/sqlmm/todo/ST_GeomFromWKB.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_GeometryType.java | 14 ++++++++++--
.../filter/sqlmm/todo/ST_Intersection.java | 11 ++++++---
.../internal/filter/sqlmm/todo/ST_Intersects.java | 9 ++++++--
.../sis/internal/filter/sqlmm/todo/ST_Is3D.java | 14 ++++++++++--
.../sis/internal/filter/sqlmm/todo/ST_IsEmpty.java | 14 ++++++++++--
.../internal/filter/sqlmm/todo/ST_IsSimple.java | 14 ++++++++++--
.../sis/internal/filter/sqlmm/todo/ST_IsValid.java | 14 ++++++++++--
.../internal/filter/sqlmm/todo/ST_LineFromGML.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_LineFromText.java | 13 +++++++++--
.../internal/filter/sqlmm/todo/ST_LineFromWKB.java | 13 +++++++++--
.../internal/filter/sqlmm/todo/ST_LineString.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_MLineFromGML.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_MLineFromText.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_MLineFromWKB.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_MPointFromGML.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_MPointFromText.java | 14 ++++++++++--
.../filter/sqlmm/todo/ST_MPointFromWKB.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_MPolyFromGML.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_MPolyFromText.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_MPolyFromWKB.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_MultiLineString.java | 13 +++++++++--
.../internal/filter/sqlmm/todo/ST_MultiPoint.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_MultiPolygon.java | 13 +++++++++--
.../internal/filter/sqlmm/todo/ST_Overlaps.java | 9 ++++++--
.../sis/internal/filter/sqlmm/todo/ST_Point.java | 21 +++++++++++++----
.../filter/sqlmm/todo/ST_PointFromGML.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_PointFromText.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_PointFromWKB.java | 13 +++++++++--
.../internal/filter/sqlmm/todo/ST_PolyFromGML.java | 13 +++++++++--
.../filter/sqlmm/todo/ST_PolyFromText.java | 13 +++++++++--
.../internal/filter/sqlmm/todo/ST_PolyFromWKB.java | 15 ++++++++++---
.../sis/internal/filter/sqlmm/todo/ST_Polygon.java | 14 ++++++++++--
.../sis/internal/filter/sqlmm/todo/ST_Relate.java | 19 ++++++++++++++--
.../sis/internal/filter/sqlmm/todo/ST_SRID.java | 14 ++++++++++--
.../filter/sqlmm/todo/ST_SymDifference.java | 9 ++++++--
.../internal/filter/sqlmm/todo/ST_ToGeomColl.java | 14 ++++++++++--
.../filter/sqlmm/todo/ST_ToLineString.java | 14 ++++++++++--
.../internal/filter/sqlmm/todo/ST_ToMultiLine.java | 14 ++++++++++--
.../filter/sqlmm/todo/ST_ToMultiPoint.java | 14 ++++++++++--
.../filter/sqlmm/todo/ST_ToMultiPolygon.java | 14 ++++++++++--
.../sis/internal/filter/sqlmm/todo/ST_ToPoint.java | 14 ++++++++++--
.../internal/filter/sqlmm/todo/ST_ToPolygon.java | 14 ++++++++++--
.../sis/internal/filter/sqlmm/todo/ST_Touches.java | 9 ++++++--
.../internal/filter/sqlmm/todo/ST_Transform.java | 23 +++++++++++++++++--
.../sis/internal/filter/sqlmm/todo/ST_Union.java | 9 ++++++--
.../sis/internal/filter/sqlmm/todo/ST_Within.java | 9 ++++++--
.../filter/sqlmm/todo/Surface_ST_Area.java | 14 ++++++++++--
.../filter/sqlmm/todo/Surface_ST_Centroid.java | 14 ++++++++++--
.../filter/sqlmm/todo/Surface_ST_Perimeter.java | 14 ++++++++++--
.../sqlmm/todo/Surface_ST_PointOnSurface.java | 14 ++++++++++--
96 files changed, 1053 insertions(+), 207 deletions(-)
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomConstructor.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomConstructor.java
index 70c8daf..2b0e111 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomConstructor.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomConstructor.java
@@ -43,7 +43,7 @@ public abstract class AbstractGeomConstructor extends AbstractSpatialFunction {
return 2;
}
- public abstract Class getExpectedClass();
+ protected abstract Class getExpectedClass();
public String getSyntax() {
return getName() + "( wkt [,srid] ) or " + getName() + "( wkb [,srid] )";
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromBinary.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromBinary.java
index 27c97b6..5de6e39 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromBinary.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromBinary.java
@@ -43,7 +43,7 @@ public abstract class AbstractGeomFromBinary extends AbstractSpatialFunction {
return 2;
}
- public abstract Class getExpectedClass();
+ protected abstract Class getExpectedClass();
public String getSyntax() {
return getName() + " ( <wkb> [,<srid>] )";
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromGML.java
index 51ba67b..690b9d1 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromGML.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromGML.java
@@ -43,7 +43,7 @@ public abstract class AbstractGeomFromGML extends AbstractSpatialFunction {
return 2;
}
- public abstract Class getExpectedClass();
+ protected abstract Class getExpectedClass();
public String getSyntax() {
return getName() + " ( <gml> [,<srid>] )";
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromText.java
index a7d4d48..17e4e07 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromText.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/AbstractGeomFromText.java
@@ -43,7 +43,7 @@ public abstract class AbstractGeomFromText extends AbstractSpatialFunction {
return 2;
}
- public abstract Class getExpectedClass();
+ protected abstract Class getExpectedClass();
public String getSyntax() {
return getName() + " ( <text> [,<srid>] )";
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/CurvePolygon_ST_ExteriorRing.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/CurvePolygon_ST_ExteriorRing.java
index ac0df49..a8022d0 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/CurvePolygon_ST_ExteriorRing.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/CurvePolygon_ST_ExteriorRing.java
@@ -22,7 +22,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_ExteriorRing. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_ExteriorRing. <br>
* Observe the ST_PrivateExteriorRing attribute of an ST_CurvePolygon value.
*
* @author Johann Sorel (Geomatys)
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/CurvePolygon_ST_InteriorRingN.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/CurvePolygon_ST_InteriorRingN.java
index 05d767f..dc34048 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/CurvePolygon_ST_InteriorRingN.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/CurvePolygon_ST_InteriorRingN.java
@@ -22,7 +22,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_InteriorRingN. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_InteriorRingN. <br>
* Return the specified element in the ST_PrivateInteriorRings attribute of an ST_CurvePolygon value.
*
* @author Johann Sorel (Geomatys)
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/CurvePolygon_ST_NumInteriorRings.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/CurvePolygon_ST_NumInteriorRings.java
index 3bf0a08..447202d 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/CurvePolygon_ST_NumInteriorRings.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/CurvePolygon_ST_NumInteriorRings.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_NumInteriorRings. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_NumInteriorRings. <br>
* Return the cardinality of the ST_PrivateInteriorRings attribute of an ST_CurvePolygon value.
*
* This class should be for all curvepolygon types, but JTS only has Polygon.
@@ -36,7 +36,17 @@ public final class CurvePolygon_ST_NumInteriorRings extends AbstractAccessorSpat
public static final String NAME = "ST_NumInteriorRings";
public CurvePolygon_ST_NumInteriorRings(Expression[] parameters) {
- super(NAME,Polygon.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Polygon> getExpectedClass() {
+ return Polygon.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_EndPoint.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_EndPoint.java
index 2edd038..e4ad389 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_EndPoint.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_EndPoint.java
@@ -22,7 +22,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_EndPoint. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_EndPoint. <br>
* Return an ST_Point value that is the end point of an ST_Curve value including existing z and m coordinate
* values in the resultant geometry.
*
@@ -36,13 +36,23 @@ public final class Curve_ST_EndPoint extends AbstractAccessorSpatialMethod<LineS
public static final String NAME = "ST_EndPoint";
public Curve_ST_EndPoint(Expression[] parameters) {
- super(NAME,LineString.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<LineString> getExpectedClass() {
+ return LineString.class;
}
@Override
public Object execute(LineString geom, Object... params) throws ParseException {
final Point pt = geom.getEndPoint();
- return new OSerializableGeometry(pt);
+ return pt;
}
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_IsClosed.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_IsClosed.java
index adc9b21..be25536 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_IsClosed.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_IsClosed.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_IsClosed. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_IsClosed. <br>
* Test if an ST_Curve value is closed, ignoring z and m coordinate values in the calculations.
*
* This class should be for all curve types, but JTS only has LineString.
@@ -36,7 +36,17 @@ public final class Curve_ST_IsClosed extends AbstractAccessorSpatialMethod<LineS
public static final String NAME = "ST_IsClosed";
public Curve_ST_IsClosed(Expression[] parameters) {
- super(NAME,LineString.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<LineString> getExpectedClass() {
+ return LineString.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_IsRing.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_IsRing.java
index 9d4a7e2..e94713f 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_IsRing.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_IsRing.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_IsRing. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_IsRing. <br>
* Test if an ST_Curve value is a ring, ignoring z and m coordinate values in the calculations.
*
* This class should be for all curve types, but JTS only has LineString.
@@ -36,7 +36,17 @@ public final class Curve_ST_IsRing extends AbstractAccessorSpatialMethod<LineStr
public static final String NAME = "ST_IsRing";
public Curve_ST_IsRing(Expression[] parameters) {
- super(NAME,LineString.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<LineString> getExpectedClass() {
+ return LineString.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_Length.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_Length.java
index de66987..8573d38 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_Length.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_Length.java
@@ -18,9 +18,10 @@ package org.apache.sis.internal.filter.sqlmm.todo;
import org.locationtech.jts.geom.Geometry;
import java.text.ParseException;
+import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Length. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Length. <br>
* Return the length measurement of an ST_Curve value, ignoring z and m coordinate values in the calculations.
*
* This class should be for all curve types, but JTS only has LineString, MultiLineString.
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_StartPoint.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_StartPoint.java
index 6262610..de83dd3 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_StartPoint.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Curve_ST_StartPoint.java
@@ -22,7 +22,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_StartPoint. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_StartPoint. <br>
* Return an ST_Point value that is the start point of an ST_Curve value including existing z and m coordinate
* values in the resultant geometry.
*
@@ -38,13 +38,23 @@ public final class Curve_ST_StartPoint extends AbstractAccessorSpatialMethod<Lin
public static final String NAME = "ST_StartPoint";
public Curve_ST_StartPoint(Expression[] parameters) {
- super(NAME,LineString.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<LineString> getExpectedClass() {
+ return LineString.class;
}
@Override
public Object execute(LineString geom, Object... params) throws ParseException {
final Point pt = geom.getStartPoint();
- return new OSerializableGeometry(pt);
+ return pt;
}
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/GeomColl_ST_GeometryN.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/GeomColl_ST_GeometryN.java
index 26c5a97..d55cc7b 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/GeomColl_ST_GeometryN.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/GeomColl_ST_GeometryN.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_GeometryN. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_GeometryN. <br>
* Return the specified ST_Geometry value in the ST_PrivateGeometries attribute of an ST_GeomCollection
* value.
*
@@ -35,7 +35,27 @@ public final class GeomColl_ST_GeometryN extends AbstractAccessorSpatialMethod<G
public static final String NAME = "ST_GeometryN";
public GeomColl_ST_GeometryN(Expression[] parameters) {
- super(NAME,2,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected int getMinParams() {
+ return 2;
+ }
+
+ @Override
+ protected int getMaxParams() {
+ return 2;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
@@ -43,7 +63,7 @@ public final class GeomColl_ST_GeometryN extends AbstractAccessorSpatialMethod<G
final int index = Integer.parseInt(params[1].toString());
final Geometry sub = geom.getGeometryN(index-1);
sub.setSRID(geom.getSRID());
- return new OSerializableGeometry(sub);
+ return sub;
}
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/GeomColl_ST_NumGeometries.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/GeomColl_ST_NumGeometries.java
index 006aa31..a1b6a38 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/GeomColl_ST_NumGeometries.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/GeomColl_ST_NumGeometries.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_NumGeometries. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_NumGeometries. <br>
* Return the cardinality of the ST_PrivateGeometries attribute of an ST_GeomCollection value.
*
* @author Johann Sorel (Geomatys)
@@ -34,7 +34,17 @@ public final class GeomColl_ST_NumGeometries extends AbstractAccessorSpatialMeth
public static final String NAME = "ST_NumGeometries";
public GeomColl_ST_NumGeometries(Expression[] parameters) {
- super(NAME, Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Line_ST_NumPoints.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Line_ST_NumPoints.java
index 46d0ace..838f96b 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Line_ST_NumPoints.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Line_ST_NumPoints.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_NumPoints. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_NumPoints. <br>
* Return the cardinality of the ST_PrivatePoints attribute of an ST_LineString value.
*
* @author Johann Sorel (Geomatys)
@@ -34,7 +34,17 @@ public final class Line_ST_NumPoints extends AbstractAccessorSpatialMethod<LineS
public static final String NAME = "ST_NumPoints";
public Line_ST_NumPoints(Expression[] parameters) {
- super(NAME,LineString.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<LineString> getExpectedClass() {
+ return LineString.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Line_ST_PointN.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Line_ST_PointN.java
index 272fb0e..7dbc784 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Line_ST_PointN.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Line_ST_PointN.java
@@ -22,7 +22,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_PointN. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_PointN. <br>
* Return the specified element in the ST_PrivatePoints attribute of an ST_LineString value.
*
* @author Johann Sorel (Geomatys)
@@ -35,7 +35,27 @@ public final class Line_ST_PointN extends AbstractAccessorSpatialMethod<LineStri
public static final String NAME = "ST_PointN";
public Line_ST_PointN(Expression[] parameters) {
- super(NAME,2,LineString.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected int getMinParams() {
+ return 2;
+ }
+
+ @Override
+ protected int getMaxParams() {
+ return 2;
+ }
+
+ @Override
+ protected Class<LineString> getExpectedClass() {
+ return LineString.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Point_ST_ExplicitPoint.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Point_ST_ExplicitPoint.java
index eba3bce..0cdb745 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Point_ST_ExplicitPoint.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Point_ST_ExplicitPoint.java
@@ -24,7 +24,7 @@ import java.util.List;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_ExplicitPoint. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_ExplicitPoint. <br>
* Return the coordinate values as a DOUBLE PRECISION LIST value.
*
* @author Johann Sorel (Geomatys)
@@ -37,7 +37,17 @@ public final class Point_ST_ExplicitPoint extends AbstractAccessorSpatialMethod<
public static final String NAME = "ST_ExplicitPoint";
public Point_ST_ExplicitPoint(Expression[] parameters) {
- super(NAME,Point.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Point> getExpectedClass() {
+ return Point.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Point_ST_X.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Point_ST_X.java
index 8ae9278..65503e5 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Point_ST_X.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Point_ST_X.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_X. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_X. <br>
* Observe the x coordinate value of an ST_Point value.
*
* @author Johann Sorel (Geomatys)
@@ -34,7 +34,17 @@ public final class Point_ST_X extends AbstractAccessorSpatialMethod<Point> {
public static final String NAME = "ST_X";
public Point_ST_X(Expression[] parameters) {
- super(NAME,Point.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Point> getExpectedClass() {
+ return Point.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Point_ST_Y.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Point_ST_Y.java
index 6bba0b8..37cdc0a 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Point_ST_Y.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Point_ST_Y.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Y. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Y. <br>
* Observe the y coordinate value of an ST_Point value.
*
* @author Johann Sorel (Geomatys)
@@ -34,7 +34,17 @@ public final class Point_ST_Y extends AbstractAccessorSpatialMethod<Point> {
public static final String NAME = "ST_Y";
public Point_ST_Y(Expression[] parameters) {
- super(NAME,Point.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Point> getExpectedClass() {
+ return Point.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Point_ST_Z.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Point_ST_Z.java
index 687283f..5f876f4 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Point_ST_Z.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Point_ST_Z.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Z. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Z. <br>
* Observe the z coordinate value of an ST_Point value.
*
* @author Johann Sorel (Geomatys)
@@ -34,7 +34,17 @@ public final class Point_ST_Z extends AbstractAccessorSpatialMethod<Point> {
public static final String NAME = "ST_Z";
public Point_ST_Z(Expression[] parameters) {
- super(NAME,Point.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Point> getExpectedClass() {
+ return Point.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_AsBinary.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_AsBinary.java
index 147dec4..1501349 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_AsBinary.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_AsBinary.java
@@ -23,7 +23,7 @@ import org.apache.sis.internal.filter.FilterGeometryUtils;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_AsBinary. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_AsBinary. <br>
* Return the well-known binary representation of an ST_Geometry value.
*
* @author Johann Sorel (Geomatys)
@@ -36,7 +36,17 @@ public final class ST_AsBinary extends AbstractAccessorSpatialMethod<Geometry> {
public static final String NAME = "ST_AsBinary";
public ST_AsBinary(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_AsGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_AsGML.java
index 5b35a4d..ad3187b 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_AsGML.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_AsGML.java
@@ -29,7 +29,7 @@ import org.opengis.filter.expression.Expression;
import org.opengis.util.FactoryException;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_AsGML. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_AsGML. <br>
* Return the GML representation of an ST_Geometry value.
*
* @author Johann Sorel (Geomatys)
@@ -42,7 +42,17 @@ public final class ST_AsGML extends AbstractAccessorSpatialMethod<Geometry> {
public static final String NAME = "ST_AsGML";
public ST_AsGML(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_AsText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_AsText.java
index 17b5bfc..60d50f1 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_AsText.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_AsText.java
@@ -23,7 +23,7 @@ import org.apache.sis.internal.filter.FilterGeometryUtils;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_AsText. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_AsText. <br>
* Return the well-known text representation of an ST_Geometry value.
*
* @author Johann Sorel (Geomatys)
@@ -36,7 +36,17 @@ public final class ST_AsText extends AbstractAccessorSpatialMethod<Geometry> {
public static final String NAME = "ST_AsText";
public ST_AsText(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdMPolyFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdMPolyFromText.java
index 37549e2..5d666ac 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdMPolyFromText.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdMPolyFromText.java
@@ -16,6 +16,7 @@
*/
package org.apache.sis.internal.filter.sqlmm.todo;
+import org.locationtech.jts.geom.Geometry;
import org.locationtech.jts.geom.LinearRing;
import org.locationtech.jts.geom.MultiLineString;
import org.locationtech.jts.geom.MultiPolygon;
@@ -23,7 +24,7 @@ import org.locationtech.jts.geom.Polygon;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_BdMPolyFromText. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_BdMPolyFromText. <br>
* Return an ST_MultiPolygon value which is transformed from a CHARACTER LARGE OBJECT value that
* represents the well-known text representation of an ST_MultiLineString value.
*
@@ -37,11 +38,21 @@ public final class ST_BdMPolyFromText extends AbstractGeomFromText{
public static final String NAME = "ST_BdMPolyFromText";
public ST_BdMPolyFromText(Expression[] parameters){
- super(NAME, MultiLineString.class);
+ super(parameters);
}
@Override
- protected OSerializableGeometry evaluateNow(Object candidate) {
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiLineString> getExpectedClass() {
+ return MultiLineString.class;
+ }
+
+ @Override
+ public Geometry evaluate(Object candidate) {
final OSerializableGeometry sergeo = super.evaluateNow(context,candidate);
final MultiLineString mls = (MultiLineString) sergeo.getGeometry();
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdMPolyFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdMPolyFromWKB.java
index baedaf7..fdc9abf 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdMPolyFromWKB.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdMPolyFromWKB.java
@@ -16,6 +16,7 @@
*/
package org.apache.sis.internal.filter.sqlmm.todo;
+import org.locationtech.jts.geom.Geometry;
import org.locationtech.jts.geom.LinearRing;
import org.locationtech.jts.geom.MultiLineString;
import org.locationtech.jts.geom.MultiPolygon;
@@ -23,7 +24,7 @@ import org.locationtech.jts.geom.Polygon;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_BdMPolyFromWKB. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_BdMPolyFromWKB. <br>
* Return an ST_MultiPolygon value which is transformed from a BINARY LARGE OBJECT value that
* represents the well-known binary representation of an ST_MultiLineString value.
*
@@ -37,12 +38,21 @@ public final class ST_BdMPolyFromWKB extends AbstractGeomFromBinary{
public static final String NAME = "ST_BdMPolyFromWKB";
public ST_BdMPolyFromWKB(Expression[] parameters){
- super(NAME, MultiLineString.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiLineString> getExpectedClass() {
+ return MultiLineString.class;
+ }
@Override
- protected OSerializableGeometry evaluate(Object candidate) {
+ public Geometry evaluate(Object candidate) {
final OSerializableGeometry sergeo = super.evaluateNow(context,candidate);
final MultiLineString mls = (MultiLineString) sergeo.getGeometry();
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdPolyFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdPolyFromText.java
index eb8765e..3422644 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdPolyFromText.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdPolyFromText.java
@@ -16,13 +16,14 @@
*/
package org.apache.sis.internal.filter.sqlmm.todo;
+import org.locationtech.jts.geom.Geometry;
import org.locationtech.jts.geom.LinearRing;
import org.locationtech.jts.geom.MultiLineString;
import org.locationtech.jts.geom.Polygon;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_BdPolyFromText. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_BdPolyFromText. <br>
* Return an ST_Polygon value which is transformed from a CHARACTER LARGE OBJECT value that
* represents the well-known text representation of an ST_MultiLineString value.
*
@@ -36,11 +37,21 @@ public final class ST_BdPolyFromText extends AbstractGeomFromText{
public static final String NAME = "ST_BdPolyFromText";
public ST_BdPolyFromText(Expression[] parameters){
- super(NAME, MultiLineString.class);
+ super(parameters);
}
@Override
- public OSerializableGeometry evaluateNow(Object candidate) {
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiLineString> getExpectedClass() {
+ return MultiLineString.class;
+ }
+
+ @Override
+ public Geometry evaluate(Object candidate) {
final OSerializableGeometry sergeo = super.evaluateNow(context,candidate);
final MultiLineString mls = (MultiLineString) sergeo.getGeometry();
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdPolyFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdPolyFromWKB.java
index 8339bc1..a20b196 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdPolyFromWKB.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_BdPolyFromWKB.java
@@ -16,13 +16,14 @@
*/
package org.apache.sis.internal.filter.sqlmm.todo;
+import org.locationtech.jts.geom.Geometry;
import org.locationtech.jts.geom.LinearRing;
import org.locationtech.jts.geom.MultiLineString;
import org.locationtech.jts.geom.Polygon;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_BdPolyFromWKB. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_BdPolyFromWKB. <br>
* Return an ST_Polygon value which is transformed from a BINARY LARGE OBJECT value that represents the
* well-known binary representation of an ST_Polygon value.
*
@@ -36,11 +37,21 @@ public final class ST_BdPolyFromWKB extends AbstractGeomFromBinary{
public static final String NAME = "ST_BdPolyFromWKB";
public ST_BdPolyFromWKB(Expression[] parameters){
- super(NAME, MultiLineString.class);
+ super(parameters);
}
@Override
- public OSerializableGeometry evaluate(Object candidate) {
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiLineString> getExpectedClass() {
+ return MultiLineString.class;
+ }
+
+ @Override
+ public Geometry evaluate(Object candidate) {
final OSerializableGeometry sergeo = super.evaluateNow(context,candidate);
final MultiLineString mls = (MultiLineString) sergeo.getGeometry();
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Boundary.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Boundary.java
index a162f22..be38e76 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Boundary.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Boundary.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Boundary. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Boundary. <br>
* Return the boundary of the ST_Geometry value, ignoring z and m coordinate values in the calculations and
* not including them in the resultant geometry.
*
@@ -35,14 +35,24 @@ public final class ST_Boundary extends AbstractAccessorSpatialMethod<Geometry> {
public static final String NAME = "ST_Boundary";
public ST_Boundary(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
public Object execute(Geometry geom, Object... params) throws ParseException {
final Geometry bound = geom.getBoundary();
bound.setSRID(geom.getSRID());
- return new OSerializableGeometry(bound);
+ return bound;
}
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Buffer.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Buffer.java
index f66f2d5..6665c7c 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Buffer.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Buffer.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Buffer. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Buffer. <br>
* Return the ST_Geometry value that represents all points whose distance from any point of an ST_Geometry
* value is less than or equal to a specified distance, ignoring z and m coordinate values in the calculations and
* not including them in the resultant geometry.
@@ -36,7 +36,27 @@ public final class ST_Buffer extends AbstractAccessorSpatialMethod<Geometry> {
public static final String NAME = "ST_Buffer";
public ST_Buffer(Expression[] parameters) {
- super(NAME,2,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected int getMinParams() {
+ return 2;
+ }
+
+ @Override
+ protected int getMaxParams() {
+ return 2;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
@@ -44,7 +64,7 @@ public final class ST_Buffer extends AbstractAccessorSpatialMethod<Geometry> {
final double distance = Double.parseDouble(params[1].toString());
final Geometry res = geom.buffer(distance);
res.setSRID(geom.getSRID());
- return new OSerializableGeometry(res);
+ return res;
}
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Contains.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Contains.java
index 724b042..2ec8139 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Contains.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Contains.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Contains. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Contains. <br>
* Test if an ST_Geometry value spatially 2D contains another ST_Geometry value, ignoring z and m coordinate
* values in the calculations.
*
@@ -35,7 +35,12 @@ public final class ST_Contains extends AbstractBinarySpatialMethod {
public static final String NAME = "ST_Contains";
public ST_Contains(Expression[] parameters) {
- super(NAME);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ConvexHull.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ConvexHull.java
index c2023bb..d45abb8 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ConvexHull.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ConvexHull.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_ConvexHull. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_ConvexHull. <br>
* Return the convex hull of the ST_Geometry value, ignoring z and m coordinate values in the calculations and
* not including them in the resultant geometry.
*
@@ -35,14 +35,24 @@ public final class ST_ConvexHull extends AbstractAccessorSpatialMethod<Geometry>
public static final String NAME = "ST_ConvexHull";
public ST_ConvexHull(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
public Object execute(Geometry geom, Object... params) throws ParseException {
final Geometry res = geom.convexHull();
res.setSRID(geom.getSRID());
- return new OSerializableGeometry(res);
+ return res;
}
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_CoordDim.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_CoordDim.java
index ff4e87c..c6f0cf7 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_CoordDim.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_CoordDim.java
@@ -22,12 +22,12 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_CoordDim. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_CoordDim. <br>
* Return the coordinate dimension of the ST_Geometry value.
*
* @author Johann Sorel (Geomatys)
* @version 2.0
- * @since 2.0
+ * @since 2.0
* @module
*/
public final class ST_CoordDim extends AbstractAccessorSpatialMethod<Geometry> {
@@ -35,16 +35,25 @@ public final class ST_CoordDim extends AbstractAccessorSpatialMethod<Geometry> {
public static final String NAME = "ST_CoordDim";
public ST_CoordDim(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
public Object execute(Geometry geom, Object... params) throws ParseException {
final Coordinate c = geom.getCoordinate();
- if(c != null){
+ if (c != null) {
return Double.isNaN(c.z) ? 2 : 3;
}
-
return null;
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Crosses.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Crosses.java
index 2fa0221..cea80ef 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Crosses.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Crosses.java
@@ -21,10 +21,9 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Crosses. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Crosses. <br>
* Test if an ST_Geometry value spatially 2D crosses another ST_Geometry value, ignoring z and m coordinate
-values in the calculations.
-
+ * values in the calculations.
*
* @author Johann Sorel (Geomatys)
* @version 2.0
@@ -36,7 +35,12 @@ public final class ST_Crosses extends AbstractBinarySpatialMethod {
public static final String NAME = "ST_Crosses";
public ST_Crosses(Expression[] parameters) {
- super(NAME);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Difference.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Difference.java
index 96d88fc..d3f774b 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Difference.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Difference.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Difference. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Difference. <br>
* Return an ST_Geometry value that represents the point set difference of two ST_Geometry values, ignoring z
* and m coordinate values in the calculations and not including them in the resultant geometry.
*
@@ -35,14 +35,19 @@ public final class ST_Difference extends AbstractBinarySpatialMethod {
public static final String NAME = "ST_Difference";
public ST_Difference(Expression[] parameters) {
- super(NAME);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
}
@Override
public Object execute(Geometry left, Geometry right, Object... params) throws ParseException {
final Geometry res = left.difference(right);
res.setSRID(left.getSRID());
- return new OSerializableGeometry(res);
+ return res;
}
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Dimension.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Dimension.java
index e8b29a4..889b8cd 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Dimension.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Dimension.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Dimension. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Dimension. <br>
* Return the dimension of the ST_Geometry value.
*
* @author Johann Sorel (Geomatys)
@@ -34,7 +34,17 @@ public final class ST_Dimension extends AbstractAccessorSpatialMethod<Geometry>
public static final String NAME = "ST_Dimension";
public ST_Dimension(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Disjoint.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Disjoint.java
index 1ee8acf..efb6e2c 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Disjoint.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Disjoint.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Disjoint. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Disjoint. <br>
* Test if an ST_Geometry value is spatially 2D disjoint from another ST_Geometry value, ignoring z and m
* coordinate values in the calculations.
*
@@ -35,7 +35,12 @@ public final class ST_Disjoint extends AbstractBinarySpatialMethod {
public static final String NAME = "ST_Disjoint";
public ST_Disjoint(Expression[] parameters) {
- super(NAME);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Distance.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Distance.java
index 09a5686..8a8ac43 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Distance.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Distance.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Distance. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Distance. <br>
* Return the distance between two geometry values, ignoring z and m coordinate values in the calculations.
*
* @author Johann Sorel (Geomatys)
@@ -34,7 +34,12 @@ public final class ST_Distance extends AbstractBinarySpatialMethod {
public static final String NAME = "ST_Distance";
public ST_Distance(Expression[] parameters) {
- super(NAME);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Envelope.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Envelope.java
index 35bb67b..25dfbd1 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Envelope.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Envelope.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Envelope. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Envelope. <br>
* Return the bounding rectangle for the ST_Geometry value, ignoring z and m coordinate values in the
* calculations and not including them in the resultant geometry.
*
@@ -35,14 +35,24 @@ public final class ST_Envelope extends AbstractAccessorSpatialMethod<Geometry> {
public static final String NAME = "ST_Envelope";
public ST_Envelope(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
public Object execute(Geometry geom, Object... params) throws ParseException {
final Geometry env = geom.getEnvelope();
env.setSRID(geom.getSRID());
- return new OSerializableGeometry(env);
+ return env;
}
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Equals.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Equals.java
index f7bd472..9226eda 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Equals.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Equals.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Equals. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Equals. <br>
* Test if an ST_Geometry value is spatially 2D equal to another ST_Geometry value, ignoring z and m
* coordinate values in the calculations.
*
@@ -35,7 +35,12 @@ public final class ST_Equals extends AbstractBinarySpatialMethod {
public static final String NAME = "ST_Equals";
public ST_Equals(Expression[] parameters) {
- super(NAME);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromGML.java
index 92c9307..3bc2d2e 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromGML.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromGML.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.GeometryCollection;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomCollFromGML. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomCollFromGML. <br>
* Return an ST_GeomCollection value which is transformed from a CHARACTER LARGE OBJECT value that
* represents the GML representationof an ST_GeomCollection value.
*
@@ -34,7 +34,16 @@ public final class ST_GeomCollFromGML extends AbstractGeomFromGML{
public static final String NAME = "ST_GeomCollFromGML";
public ST_GeomCollFromGML(Expression[] parameters){
- super(NAME, GeometryCollection.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<GeometryCollection> getExpectedClass() {
+ return GeometryCollection.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromText.java
index fd49ec4..587b6a1 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromText.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromText.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.GeometryCollection;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomCollFromText. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomCollFromText. <br>
* Return an ST_GeomCollection value which is transformed from a CHARACTER LARGE OBJECT value that
* represents the well-known text representation of an ST_GeomCollection value.
*
@@ -34,7 +34,16 @@ public final class ST_GeomCollFromText extends AbstractGeomFromText{
public static final String NAME = "ST_GeomCollFromText";
public ST_GeomCollFromText(Expression[] parameters){
- super(NAME, GeometryCollection.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<GeometryCollection> getExpectedClass() {
+ return GeometryCollection.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromWKB.java
index cf9d9d5..739feca 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromWKB.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollFromWKB.java
@@ -16,11 +16,11 @@
*/
package org.apache.sis.internal.filter.sqlmm.todo;
-import org.locationtech.jts.geom.Geometry;
+import org.locationtech.jts.geom.GeometryCollection;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomCollFromWKB. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomCollFromWKB. <br>
* Return an ST_GeomCollection value which is transformed from a BINARY LARGE OBJECT value that
* represents the well-known binary representation of an ST_GeomCollection value.
*
@@ -34,7 +34,16 @@ public final class ST_GeomCollFromWKB extends AbstractGeomFromBinary{
public static final String NAME = "ST_GeomCollFromWKB";
public ST_GeomCollFromWKB(Expression[] parameters){
- super(NAME,Geometry.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<GeometryCollection> getExpectedClass() {
+ return GeometryCollection.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollection.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollection.java
index 33405f1..1a61c87 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollection.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomCollection.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.GeometryCollection;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomCollection. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomCollection. <br>
*
* @author Johann Sorel (Geomatys)
* @version 2.0
@@ -32,7 +32,16 @@ public final class ST_GeomCollection extends AbstractGeomConstructor{
public static final String NAME = "ST_GeomCollection";
public ST_GeomCollection(Expression[] parameters){
- super(NAME, GeometryCollection.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<GeometryCollection> getExpectedClass() {
+ return GeometryCollection.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromGML.java
index 6c7e9de..5ac64bc 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromGML.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromGML.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.Geometry;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomFromGML. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomFromGML. <br>
* Return an ST_Geometry value which is transformed from a CHARACTER LARGE OBJECT value that
* represents the GML representationof an ST_Geometry.
*
@@ -34,7 +34,16 @@ public final class ST_GeomFromGML extends AbstractGeomFromGML{
public static final String NAME = "ST_GeomFromGML";
public ST_GeomFromGML(Expression[] parameters){
- super(NAME,Geometry.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromText.java
index 59dc8a6..849c5cb 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromText.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromText.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.Geometry;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomFromText. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomFromText. <br>
* Return an ST_Geometry value which is transformed from a CHARACTER LARGE OBJECT value that
* represents the well-known text representation of an ST_Geometry value.
*
@@ -34,7 +34,16 @@ public final class ST_GeomFromText extends AbstractGeomFromText{
public static final String NAME = "ST_GeomFromText";
public ST_GeomFromText(Expression[] parameters){
- super(NAME,Geometry.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromWKB.java
index 2157cd7..9574ddc 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromWKB.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeomFromWKB.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.Geometry;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomFromWKB. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_GeomFromWKB. <br>
* Return an ST_Geometry value which is transformed from a BINARY LARGE OBJECT value that represents
* the well-known binary representation of an ST_Geometry value.
*
@@ -34,7 +34,16 @@ public final class ST_GeomFromWKB extends AbstractGeomFromBinary{
public static final String NAME = "ST_GeomFromWKB";
public ST_GeomFromWKB(Expression[] parameters){
- super(NAME,Geometry.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeometryType.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeometryType.java
index dbf374c..2ff77df 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeometryType.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_GeometryType.java
@@ -31,7 +31,7 @@ import java.util.Map.Entry;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_GeometryType. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_GeometryType. <br>
* Returns the geometry type name.
*
* @author Johann Sorel (Geomatys)
@@ -56,7 +56,17 @@ public final class ST_GeometryType extends AbstractAccessorSpatialMethod<Geometr
}
public ST_GeometryType(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Intersection.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Intersection.java
index 10608d2..afabeeb 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Intersection.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Intersection.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Intersection. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Intersection. <br>
* Return an ST_Geometry value that represents the point set intersection of two ST_Geometry values, ignoring
* z and m coordinate values in the calculations and not including them in the resultant geometry.
*
@@ -35,14 +35,19 @@ public final class ST_Intersection extends AbstractBinarySpatialMethod {
public static final String NAME = "ST_Intersection";
public ST_Intersection(Expression[] parameters) {
- super(NAME);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
}
@Override
public Object execute(Geometry left, Geometry right, Object... params) throws ParseException {
final Geometry res = left.intersection(right);
res.setSRID(left.getSRID());
- return new OSerializableGeometry(res);
+ return res;
}
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Intersects.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Intersects.java
index 38bcc20..37b6506 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Intersects.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Intersects.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Intersects. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Intersects. <br>
* Test if an ST_Geometry value spatially 2D intersects another ST_Geometry value, ignoring z and m
coordinate values in the calculations.
@@ -36,7 +36,12 @@ public final class ST_Intersects extends AbstractBinarySpatialMethod {
public static final String NAME = "ST_Intersects";
public ST_Intersects(Expression[] parameters) {
- super(NAME);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Is3D.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Is3D.java
index 6b63336..0db435e 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Is3D.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Is3D.java
@@ -22,7 +22,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Is3D. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Is3D. <br>
* Test if an ST_Geometry value has z coordinate values.
*
* @author Johann Sorel (Geomatys)
@@ -35,7 +35,17 @@ public final class ST_Is3D extends AbstractAccessorSpatialMethod<Geometry> {
public static final String NAME = "ST_Is3D";
public ST_Is3D(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_IsEmpty.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_IsEmpty.java
index f4696f2..b02eec7 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_IsEmpty.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_IsEmpty.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_IsEmpty. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_IsEmpty. <br>
* Test if an ST_Geometry value corresponds to the empty set.
*
* @author Johann Sorel (Geomatys)
@@ -34,7 +34,17 @@ public final class ST_IsEmpty extends AbstractAccessorSpatialMethod<Geometry> {
public static final String NAME = "ST_IsEmpty";
public ST_IsEmpty(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_IsSimple.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_IsSimple.java
index 8f6fc68..fa8e607 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_IsSimple.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_IsSimple.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_IsSimple. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_IsSimple. <br>
* Test if an ST_Geometry value has no anomalous geometric points, such as self intersection, ignoring z
* coordinate values in the determination.
*
@@ -35,7 +35,17 @@ public final class ST_IsSimple extends AbstractAccessorSpatialMethod<Geometry> {
public static final String NAME = "ST_IsSimple";
public ST_IsSimple(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_IsValid.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_IsValid.java
index 5646d16..195b218 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_IsValid.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_IsValid.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_IsValid. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_IsValid. <br>
* Test if an ST_Geometry value is well formed.
*
* @author Johann Sorel (Geomatys)
@@ -34,7 +34,17 @@ public final class ST_IsValid extends AbstractAccessorSpatialMethod<Geometry> {
public static final String NAME = "ST_IsValid";
public ST_IsValid(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromGML.java
index 5f81128..9aa5b89 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromGML.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromGML.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.LineString;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_LineFromGML. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_LineFromGML. <br>
* Return an ST_LineString value which is transformed from a CHARACTER LARGE OBJECT value that
* represents the GML representation of an ST_LineString value.
*
@@ -34,7 +34,16 @@ public final class ST_LineFromGML extends AbstractGeomFromGML{
public static final String NAME = "ST_LineFromGML";
public ST_LineFromGML(Expression[] parameters){
- super(NAME, LineString.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<LineString> getExpectedClass() {
+ return LineString.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromText.java
index 9d5c864..0b3e09f 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromText.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromText.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.LineString;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_LineFromText. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_LineFromText. <br>
* Return an ST_LineString value which is transformed from a CHARACTER LARGE OBJECT value that
* represents the well-known text representation of an ST_LineString value.
*
@@ -34,7 +34,16 @@ public final class ST_LineFromText extends AbstractGeomFromText{
public static final String NAME = "ST_LineFromText";
public ST_LineFromText(Expression[] parameters){
- super(NAME, LineString.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<LineString> getExpectedClass() {
+ return LineString.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromWKB.java
index c503996..4d37ef0 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromWKB.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineFromWKB.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.LineString;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_LineFromWKB. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_LineFromWKB. <br>
* Return an ST_LineString value which is transformed from a BINARY LARGE OBJECT value that represents
* the well-known binary representation of an ST_LineString value.
*
@@ -34,7 +34,16 @@ public final class ST_LineFromWKB extends AbstractGeomFromBinary{
public static final String NAME = "ST_LineFromWKB";
public ST_LineFromWKB(Expression[] parameters){
- super(NAME, LineString.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<LineString> getExpectedClass() {
+ return LineString.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineString.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineString.java
index c8c0dc3..a4b18c2 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineString.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_LineString.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.LineString;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_LineString. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_LineString. <br>
*
* @author Johann Sorel (Geomatys)
* @version 2.0
@@ -32,7 +32,16 @@ public final class ST_LineString extends AbstractGeomConstructor{
public static final String NAME = "ST_LineString";
public ST_LineString(Expression[] parameters){
- super(NAME, LineString.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<LineString> getExpectedClass() {
+ return LineString.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromGML.java
index b0cee6d..eccf1fc 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromGML.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromGML.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.MultiLineString;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromGML. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromGML. <br>
* Return an ST_MultiLineString value which is transformed from a CHARACTER LARGE OBJECT value that
* represents the GML representationof an ST_MultiLineString value.
*
@@ -34,7 +34,16 @@ public final class ST_MLineFromGML extends AbstractGeomFromGML{
public static final String NAME = "ST_MLineFromGML";
public ST_MLineFromGML(Expression[] parameters){
- super(NAME, MultiLineString.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiLineString> getExpectedClass() {
+ return MultiLineString.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromText.java
index b714a75..c7d46ad 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromText.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromText.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.MultiLineString;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MLineFromText. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MLineFromText. <br>
* Return an ST_MultiLineString value which is transformed from a CHARACTER LARGE OBJECT value that
* represents the well-known text representation of an ST_MultiLineString value.
*
@@ -34,7 +34,16 @@ public final class ST_MLineFromText extends AbstractGeomFromText{
public static final String NAME = "ST_MLineFromText";
public ST_MLineFromText(Expression[] parameters){
- super(NAME, MultiLineString.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiLineString> getExpectedClass() {
+ return MultiLineString.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromWKB.java
index a021e38..412321a 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromWKB.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MLineFromWKB.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.MultiLineString;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromWKB. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromWKB. <br>
* Return an ST_MultiLineString value which is transformed from a BINARY LARGE OBJECT value that
* represents the well-known binary representation of an ST_MultiLineString value.
*
@@ -34,7 +34,16 @@ public final class ST_MLineFromWKB extends AbstractGeomFromBinary{
public static final String NAME = "ST_MLineFromWKB";
public ST_MLineFromWKB(Expression[] parameters){
- super(NAME, MultiLineString.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiLineString> getExpectedClass() {
+ return MultiLineString.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromGML.java
index 8dcc73e..3f0b242 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromGML.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromGML.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.MultiPoint;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromGML. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromGML. <br>
* Return an ST_MultiPoint value which is transformed from a CHARACTER LARGE OBJECT value that
* represents the GML representation of an ST_MultiPoint value.
*
@@ -34,7 +34,16 @@ public final class ST_MPointFromGML extends AbstractGeomFromGML{
public static final String NAME = "ST_MPointFromGML";
public ST_MPointFromGML(Expression[] parameters){
- super(NAME, MultiPoint.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiPoint> getExpectedClass() {
+ return MultiPoint.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromText.java
index f53794b..bdbe93d 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromText.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromText.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.MultiPoint;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromText. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromText. <br>
* Return an ST_MultiPoint value which is transformed from a CHARACTER LARGE OBJECT value that
* represents the well-known text representation of an ST_MultiPoint value.
*
@@ -34,7 +34,17 @@ public final class ST_MPointFromText extends AbstractGeomFromText{
public static final String NAME = "ST_MPointFromText";
public ST_MPointFromText(Expression[] parameters){
- super(NAME, MultiPoint.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiPoint> getExpectedClass() {
+ return MultiPoint.class;
}
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromWKB.java
index 75e876c..f5b2467 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromWKB.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPointFromWKB.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.MultiPoint;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromWKB. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MPointFromWKB. <br>
* Return an ST_MultiPoint value which is transformed from a BINARY LARGE OBJECT value that represents
* the well-known binary representation of an ST_MultiPoint value.
*
@@ -34,7 +34,16 @@ public final class ST_MPointFromWKB extends AbstractGeomFromBinary{
public static final String NAME = "ST_MPointFromWKB";
public ST_MPointFromWKB(Expression[] parameters){
- super(NAME, MultiPoint.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiPoint> getExpectedClass() {
+ return MultiPoint.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromGML.java
index 224c0d6..74237a0 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromGML.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromGML.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.MultiPolygon;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MPolyFromGML. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MPolyFromGML. <br>
* Return an ST_MultiPolygon value which is transformed from a CHARACTER LARGE OBJECT value that
* represents the GML representationof an ST_MultiPolygon value.
*
@@ -34,7 +34,16 @@ public final class ST_MPolyFromGML extends AbstractGeomFromGML{
public static final String NAME = "ST_MPolyFromGML";
public ST_MPolyFromGML(Expression[] parameters){
- super(NAME, MultiPolygon.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiPolygon> getExpectedClass() {
+ return MultiPolygon.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromText.java
index c2cc4b3..d093b28 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromText.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromText.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.MultiPolygon;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MPolyFromText. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MPolyFromText. <br>
* Return an ST_MultiPolygon value which is transformed from a CHARACTER LARGE OBJECT value that
* represents the well-known text representation of an ST_MultiPolygon value.
*
@@ -34,7 +34,16 @@ public final class ST_MPolyFromText extends AbstractGeomFromText{
public static final String NAME = "ST_MPolyFromText";
public ST_MPolyFromText(Expression[] parameters){
- super(NAME, MultiPolygon.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiPolygon> getExpectedClass() {
+ return MultiPolygon.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromWKB.java
index 49114f0..375673d 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromWKB.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MPolyFromWKB.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.MultiPolygon;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MPolyFromWKB. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MPolyFromWKB. <br>
* Return an ST_MultiPolygon value which is transformed from a BINARY LARGE OBJECT value that
* represents the well-known binary representation of an ST_MultiPolygon value.
*
@@ -34,7 +34,16 @@ public final class ST_MPolyFromWKB extends AbstractGeomFromBinary{
public static final String NAME = "ST_MPolyFromWKB";
public ST_MPolyFromWKB(Expression[] parameters){
- super(NAME, MultiPolygon.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiPolygon> getExpectedClass() {
+ return MultiPolygon.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MultiLineString.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MultiLineString.java
index 1a807ab..0667ccb 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MultiLineString.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MultiLineString.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.MultiLineString;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MultiLineString. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MultiLineString. <br>
*
* @author Johann Sorel (Geomatys)
* @version 2.0
@@ -32,7 +32,16 @@ public final class ST_MultiLineString extends AbstractGeomConstructor{
public static final String NAME = "ST_MultiLineString";
public ST_MultiLineString(Expression[] parameters){
- super(NAME, MultiLineString.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiLineString> getExpectedClass() {
+ return MultiLineString.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MultiPoint.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MultiPoint.java
index 9caaa9b..609b64c 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MultiPoint.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MultiPoint.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.MultiPoint;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MultiPoint. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MultiPoint. <br>
*
* @author Johann Sorel (Geomatys)
* @version 2.0
@@ -32,7 +32,16 @@ public final class ST_MultiPoint extends AbstractGeomConstructor{
public static final String NAME = "ST_MultiPoint";
public ST_MultiPoint(Expression[] parameters){
- super(NAME, MultiPoint.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiPoint> getExpectedClass() {
+ return MultiPoint.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MultiPolygon.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MultiPolygon.java
index 04794dc..3269a74 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MultiPolygon.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_MultiPolygon.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.MultiPolygon;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_MultiPolygon. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_MultiPolygon. <br>
*
* @author Johann Sorel (Geomatys)
* @version 2.0
@@ -32,7 +32,16 @@ public final class ST_MultiPolygon extends AbstractGeomConstructor{
public static final String NAME = "ST_MultiPolygon";
public ST_MultiPolygon(Expression[] parameters){
- super(NAME, MultiPolygon.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<MultiPolygon> getExpectedClass() {
+ return MultiPolygon.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Overlaps.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Overlaps.java
index 17a5c06..b01d930 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Overlaps.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Overlaps.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Overlaps. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Overlaps. <br>
* Test if an ST_Geometry value spatially 2D overlaps another ST_Geometry value, ignoring z and m coordinate
* values in the calculations.
*
@@ -35,7 +35,12 @@ public final class ST_Overlaps extends AbstractBinarySpatialMethod {
public static final String NAME = "ST_Overlaps";
public ST_Overlaps(Expression[] parameters) {
- super(NAME);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Point.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Point.java
index 3675df3..8c8233e 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Point.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Point.java
@@ -23,7 +23,7 @@ import java.math.BigDecimal;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Point. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Point. <br>
*
* @author Johann Sorel (Geomatys)
* @version 2.0
@@ -35,19 +35,32 @@ public final class ST_Point extends AbstractSpatialFunction{
public static final String NAME = "ST_Point";
public ST_Point(Expression[] parameters){
- super(NAME,1,4);
+ super(parameters);
}
@Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected int getMinParams() {
+ return 1;
+ }
+
+ @Override
+ protected int getMaxParams() {
+ return 4;
+ }
+
public String getSyntax() {
return "ST_Point( x ,y [,z] [,srid] ) "
+ "or ST_Point( wkt [,srid] ) "
+ "or ST_Point( wkb [,srid] )";
}
-
@Override
- protected Object evaluateNow(OCommandContext context, Object candidate) {
+ public Object evaluate(Object candidate) {
final int nbarg = children.size();
final Geometry geom;
if(nbarg == 1){
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromGML.java
index ff5c680..a97af22 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromGML.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromGML.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.Point;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_PointFromGML. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_PointFromGML. <br>
* Return an ST_Point value which is transformed from a CHARACTER LARGE OBJECT value that represents
* the GML representationof an ST_Point.
*
@@ -34,7 +34,16 @@ public final class ST_PointFromGML extends AbstractGeomFromGML{
public static final String NAME = "ST_PointFromGML";
public ST_PointFromGML(Expression[] parameters){
- super(NAME, Point.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Point> getExpectedClass() {
+ return Point.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromText.java
index 031b4ac..662b0ef 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromText.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromText.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.Point;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_PointFromText. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_PointFromText. <br>
* Return an ST_Point value which is transformed from a CHARACTER LARGE OBJECT value that represents
* the well-known text representation of an ST_Point value.
*
@@ -34,7 +34,16 @@ public final class ST_PointFromText extends AbstractGeomFromText{
public static final String NAME = "ST_PointFromText";
public ST_PointFromText(Expression[] parameters){
- super(NAME, Point.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Point> getExpectedClass() {
+ return Point.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromWKB.java
index 6178f71..761d5dc 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromWKB.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PointFromWKB.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.Point;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_PointFromWKB. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_PointFromWKB. <br>
* Return an ST_Point value which is transformed from a BINARY LARGE OBJECT value that represents the
* well-known binary representation of an ST_Point value.
*
@@ -34,7 +34,16 @@ public final class ST_PointFromWKB extends AbstractGeomFromBinary{
public static final String NAME = "ST_PointFromWKB";
public ST_PointFromWKB(Expression[] parameters){
- super(NAME, Point.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Point> getExpectedClass() {
+ return Point.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromGML.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromGML.java
index 18cd626..3e4bf92 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromGML.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromGML.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.Polygon;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_PolyFromGML. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_PolyFromGML. <br>
* Return an ST_Polygon value which is transformed from a CHARACTER LARGE OBJECT value that
* represents the GML representationof an ST_Polygon value.
*
@@ -34,7 +34,16 @@ public final class ST_PolyFromGML extends AbstractGeomFromGML{
public static final String NAME = "ST_PolyFromGML";
public ST_PolyFromGML(Expression[] parameters){
- super(NAME, Polygon.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Polygon> getExpectedClass() {
+ return Polygon.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromText.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromText.java
index b6a1b6d..1d81020 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromText.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromText.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.Polygon;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_PolyFromText. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_PolyFromText. <br>
* Return an ST_Polygon value which is transformed from a CHARACTER LARGE OBJECT value that
* represents the well-known text representation of an ST_Polygon value.
*
@@ -34,7 +34,16 @@ public final class ST_PolyFromText extends AbstractGeomFromText{
public static final String NAME = "ST_PolyFromText";
public ST_PolyFromText(Expression[] parameters){
- super(NAME, Polygon.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Polygon> getExpectedClass() {
+ return Polygon.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromWKB.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromWKB.java
index 2d7893b..1eb8b47 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromWKB.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_PolyFromWKB.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.Polygon;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_PolyFromWKB. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_PolyFromWKB. <br>
* Return an ST_Polygon value which is transformed from a BINARY LARGE OBJECT value that represents the
* well-known binary representation of an ST_Polygon value.
*
@@ -29,12 +29,21 @@ import org.opengis.filter.expression.Expression;
* @since 2.0
* @module
*/
-public final class ST_PolyFromWKB extends AbstractGeomFromBinary{
+public final class ST_PolyFromWKB extends AbstractGeomFromBinary {
public static final String NAME = "ST_PolyFromWKB";
public ST_PolyFromWKB(Expression[] parameters){
- super(NAME, Polygon.class);
+ super(parameters);
}
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Polygon> getExpectedClass() {
+ return Polygon.class;
+ }
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Polygon.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Polygon.java
index 5c7b31e..9102819 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Polygon.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Polygon.java
@@ -20,7 +20,7 @@ import org.locationtech.jts.geom.Polygon;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Polygon. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Polygon. <br>
*
* @author Johann Sorel (Geomatys)
* @version 2.0
@@ -32,7 +32,17 @@ public final class ST_Polygon extends AbstractGeomConstructor{
public static final String NAME = "ST_Polygon";
public ST_Polygon(Expression[] parameters){
- super(NAME, Polygon.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Polygon> getExpectedClass() {
+ return Polygon.class;
}
}
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Relate.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Relate.java
index cd159ca..e2bb2ba 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Relate.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Relate.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Relate. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Relate. <br>
* Test if an ST_Geometry value is spatially 2D related to another ST_Geometry value, ignoring z and m
* coordinate values in the calculations.
*
@@ -35,7 +35,22 @@ public final class ST_Relate extends AbstractBinarySpatialMethod {
public static final String NAME = "ST_Relate";
public ST_Relate(Expression[] parameters) {
- super(NAME,2);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected int getMinParams() {
+ return 2;
+ }
+
+ @Override
+ protected int getMaxParams() {
+ return 2;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_SRID.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_SRID.java
index 26115db..d054ebf 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_SRID.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_SRID.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_SRID. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_SRID. <br>
* Observe the spatial reference system identifier of the ST_Geometry value.
*
* @author Johann Sorel (Geomatys)
@@ -34,7 +34,17 @@ public final class ST_SRID extends AbstractAccessorSpatialMethod<Geometry> {
public static final String NAME = "ST_SRID";
public ST_SRID(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_SymDifference.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_SymDifference.java
index 95cb8eb..73d5074 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_SymDifference.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_SymDifference.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_SymDifference. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_SymDifference. <br>
* Return an ST_Geometry value that represents the point set symmetric difference of two ST_Geometry values,
* ignoring z and m coordinate values in the calculations and not including them in the resultant geometry.
*
@@ -35,7 +35,12 @@ public final class ST_SymDifference extends AbstractBinarySpatialMethod {
public static final String NAME = "ST_SymDifference";
public ST_SymDifference(Expression[] parameters) {
- super(NAME);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToGeomColl.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToGeomColl.java
index d6a2c42..4d0acfc 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToGeomColl.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToGeomColl.java
@@ -22,7 +22,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_ToGeomColl. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_ToGeomColl. <br>
* Cast an ST_Geometry value to a specific instantiable subtype of ST_Geometry.
*
* @author Johann Sorel (Geomatys)
@@ -35,7 +35,17 @@ public final class ST_ToGeomColl extends AbstractAccessorSpatialMethod<Geometry>
public static final String NAME = "ST_ToGeomColl";
public ST_ToGeomColl(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToLineString.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToLineString.java
index fd4bd49..9c1d21a 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToLineString.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToLineString.java
@@ -22,7 +22,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_ToLineString. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_ToLineString. <br>
* Cast an ST_Geometry value to a specific instantiable subtype of ST_Geometry.
*
* @author Johann Sorel (Geomatys)
@@ -35,7 +35,17 @@ public final class ST_ToLineString extends AbstractAccessorSpatialMethod<Geometr
public static final String NAME = "ST_ToLineString";
public ST_ToLineString(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToMultiLine.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToMultiLine.java
index e6c21bc..b8690e8 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToMultiLine.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToMultiLine.java
@@ -22,7 +22,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_ToMultiLine. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_ToMultiLine. <br>
* Cast an ST_Geometry value to a specific instantiable subtype of ST_Geometry.
*
* @author Johann Sorel (Geomatys)
@@ -35,7 +35,17 @@ public final class ST_ToMultiLine extends AbstractAccessorSpatialMethod<Geometry
public static final String NAME = "ST_ToMultiLine";
public ST_ToMultiLine(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToMultiPoint.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToMultiPoint.java
index 7a41e3d..022ec9a 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToMultiPoint.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToMultiPoint.java
@@ -22,7 +22,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_ToMultiPoint. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_ToMultiPoint. <br>
* Cast an ST_Geometry value to a specific instantiable subtype of ST_Geometry.
*
* @author Johann Sorel (Geomatys)
@@ -35,7 +35,17 @@ public final class ST_ToMultiPoint extends AbstractAccessorSpatialMethod<Geometr
public static final String NAME = "ST_ToMultiPoint";
public ST_ToMultiPoint(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToMultiPolygon.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToMultiPolygon.java
index 61b40bc..94eea09 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToMultiPolygon.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToMultiPolygon.java
@@ -22,7 +22,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_ToMultiPolygon. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_ToMultiPolygon. <br>
* Cast an ST_Geometry value to a specific instantiable subtype of ST_Geometry.
*
* @author Johann Sorel (Geomatys)
@@ -35,7 +35,17 @@ public final class ST_ToMultiPolygon extends AbstractAccessorSpatialMethod<Geome
public static final String NAME = "ST_ToMultiPolygon";
public ST_ToMultiPolygon(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToPoint.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToPoint.java
index d6b57cf..37b3ec2 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToPoint.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToPoint.java
@@ -22,7 +22,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_ToPoint. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_ToPoint. <br>
* Cast an ST_Geometry value to a specific instantiable subtype of ST_Geometry.
*
* @author Johann Sorel (Geomatys)
@@ -35,7 +35,17 @@ public final class ST_ToPoint extends AbstractAccessorSpatialMethod<Geometry> {
public static final String NAME = "ST_ToPoint";
public ST_ToPoint(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToPolygon.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToPolygon.java
index 886bb9b..69e4ae3 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToPolygon.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_ToPolygon.java
@@ -22,7 +22,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_ToPolygon. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_ToPolygon. <br>
* Cast an ST_Geometry value to a specific instantiable subtype of ST_Geometry.
*
* @author Johann Sorel (Geomatys)
@@ -35,7 +35,17 @@ public final class ST_ToPolygon extends AbstractAccessorSpatialMethod<Geometry>
public static final String NAME = "ST_ToPolygon";
public ST_ToPolygon(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Touches.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Touches.java
index 78e3a65..bfe48b6 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Touches.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Touches.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_touches. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_touches. <br>
* Test if an ST_Geometry value spatially 2D touches another ST_Geometry value, ignoring z and m coordinate
* values in the calculations.
*
@@ -35,7 +35,12 @@ public final class ST_Touches extends AbstractBinarySpatialMethod {
public static final String NAME = "ST_Touches";
public ST_Touches(Expression[] parameters) {
- super(NAME);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Transform.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Transform.java
index 019461d..c1b5624 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Transform.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Transform.java
@@ -25,7 +25,7 @@ import org.opengis.referencing.operation.TransformException;
import org.opengis.util.FactoryException;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Transform. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Transform. <br>
* Return an ST_Geometry value transformed to the specified spatial reference system, considering z and m
* coordinate values in the calculations and including them in the resultant geometry.
*
@@ -39,10 +39,29 @@ public final class ST_Transform extends AbstractAccessorSpatialMethod<Geometry>
public static final String NAME = "ST_Transform";
public ST_Transform(Expression[] parameters) {
- super(NAME,2,Geometry.class);
+ super(parameters);
}
@Override
+ protected int getMinParams() {
+ return 2;
+ }
+
+ @Override
+ protected int getMaxParams() {
+ return 2;
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
+ }
+ @Override
public Object execute(Geometry geom, Object... params) throws ParseException {
final int targetSRID = Integer.parseInt(params[1].toString());
//TODO should use local database EPSG factory
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Union.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Union.java
index 69fdfd0..fe40494 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Union.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Union.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Union. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Union. <br>
* Return an ST_Geometry value that represents the point set union of two ST_Geometry values, ignoring z and
* m coordinate values in the calculations and not including them in the resultant geometry.
*
@@ -35,7 +35,12 @@ public final class ST_Union extends AbstractBinarySpatialMethod {
public static final String NAME = "ST_Union";
public ST_Union(Expression[] parameters) {
- super(NAME);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Within.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Within.java
index 0eb75ee..8dd0737 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Within.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/ST_Within.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Within. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Within. <br>
* Test if an ST_Geometry value is spatially 2D within another ST_Geometry value, ignoring z and m coordinate
* values in the calculations.
*
@@ -35,7 +35,12 @@ public final class ST_Within extends AbstractBinarySpatialMethod {
public static final String NAME = "ST_Within";
public ST_Within(Expression[] parameters) {
- super(NAME);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Surface_ST_Area.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Surface_ST_Area.java
index abfcaac..7830971 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Surface_ST_Area.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Surface_ST_Area.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Area. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Area. <br>
* Return the area measurement of an ST_Surface value, ignoring z and m coordinate values in the calculations.
*
* This class should be for all surface types, but JTS only has Polygon and MultiPolygon.
@@ -36,7 +36,17 @@ public final class Surface_ST_Area extends AbstractAccessorSpatialMethod<Geometr
public static final String NAME = "ST_Area";
public Surface_ST_Area(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Surface_ST_Centroid.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Surface_ST_Centroid.java
index 466fd52..122855e 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Surface_ST_Centroid.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Surface_ST_Centroid.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Centroid. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Centroid. <br>
* Return the 2D ST_Point value that is the mathematical centroid of the ST_Surface value, ignoring z and m
* coordinate values in the calculations and not including them in the resultant geometry.
*
@@ -37,7 +37,17 @@ public final class Surface_ST_Centroid extends AbstractAccessorSpatialMethod<Geo
public static final String NAME = "ST_Centroid";
public Surface_ST_Centroid(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Surface_ST_Perimeter.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Surface_ST_Perimeter.java
index 00c1f24..7331be9 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Surface_ST_Perimeter.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Surface_ST_Perimeter.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_Perimeter. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_Perimeter. <br>
* Return the length measurement of the boundary of an ST_Surface value, ignoring z and m coordinate values
* in the calculations.
*
@@ -37,7 +37,17 @@ public final class Surface_ST_Perimeter extends AbstractAccessorSpatialMethod<Ge
public static final String NAME = "ST_Perimeter";
public Surface_ST_Perimeter(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override
diff --git a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Surface_ST_PointOnSurface.java b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Surface_ST_PointOnSurface.java
index 9392227..76ba16b 100644
--- a/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Surface_ST_PointOnSurface.java
+++ b/core/sis-feature/src/main/java/org/apache/sis/internal/filter/sqlmm/todo/Surface_ST_PointOnSurface.java
@@ -21,7 +21,7 @@ import java.text.ParseException;
import org.opengis.filter.expression.Expression;
/**
- * SQL/MM, ISO/IEC 13249-3:2011, ST_PointOnSurface. <br/>
+ * SQL/MM, ISO/IEC 13249-3:2011, ST_PointOnSurface. <br>
* Return an ST_Point value guaranteed to spatially intersect the ST_Surface value, ignoring z and m coordinate
* values in the calculations and not including them in the resultant geometry.
*
@@ -37,7 +37,17 @@ public final class Surface_ST_PointOnSurface extends AbstractAccessorSpatialMeth
public static final String NAME = "ST_PointOnSurface";
public Surface_ST_PointOnSurface(Expression[] parameters) {
- super(NAME,Geometry.class);
+ super(parameters);
+ }
+
+ @Override
+ public String getName() {
+ return NAME;
+ }
+
+ @Override
+ protected Class<Geometry> getExpectedClass() {
+ return Geometry.class;
}
@Override