[jOOQ/jOOQ#982] Add support for GIS extensions

- Added Oracle support for:
  - ST_AsText
  - ST_Contains
  - ST_Equals
  - ST_ExteriorRing
  - ST_GeometryType
  - ST_InteriorRingN
  - ST_Intersection
  - ST_Intersects
  - ST_Length
  - ST_NumGeometries
  - ST_NumInteriorRingN
  - ST_Overlaps
  - ST_Touches
  - ST_Union
- Added support for ST_Difference
This commit is contained in:
Lukas Eder 2021-11-16 17:37:16 +01:00
parent 7ffd5ee356
commit 08839094f7
19 changed files with 371 additions and 5 deletions

View File

@ -21627,6 +21627,61 @@ public class DSL {

View File

@ -431,6 +431,7 @@ final class Names {
static final Name N_ST_CENTROID = unquotedName("st_centroid");
static final Name N_ST_CONTAINS = unquotedName("st_contains");
static final Name N_ST_CROSSES = unquotedName("st_crosses");
static final Name N_ST_DIFFERENCE = unquotedName("st_difference");
static final Name N_ST_DISJOINT = unquotedName("st_disjoint");
static final Name N_ST_DISTANCE = unquotedName("st_distance");
static final Name N_ST_ENDPOINT = unquotedName("st_endpoint");

View File

@ -330,6 +330,7 @@ import static org.jooq.impl.DSL.square;
// ...
// ...
// ...
// ...
import static org.jooq.impl.DSL.stddevPop;
import static org.jooq.impl.DSL.stddevSamp;
import static org.jooq.impl.DSL.sum;
@ -6206,7 +6207,7 @@ final class DefaultParseContext extends AbstractScope implements ParseContext {
break;
case 'S':
if (parseFunctionNameIf("ST_CONTAINS") && requireProEdition()) {
if (parseFunctionNameIf("ST_CONTAINS", "SDO_CONTAINS") && requireProEdition()) {
@ -6221,7 +6222,7 @@ final class DefaultParseContext extends AbstractScope implements ParseContext {
}
else if (parseFunctionNameIf("ST_EQUALS") && requireProEdition()) {
else if (parseFunctionNameIf("ST_EQUALS", "SDO_EQUAL") && requireProEdition()) {
@ -6241,12 +6242,12 @@ final class DefaultParseContext extends AbstractScope implements ParseContext {
}
else if (parseFunctionNameIf("ST_OVERLAPS") && requireProEdition()) {
else if (parseFunctionNameIf("ST_OVERLAPS", "SDO_OVERLAPS") && requireProEdition()) {
}
else if (parseFunctionNameIf("ST_TOUCHES") && requireProEdition()) {
else if (parseFunctionNameIf("ST_TOUCHES", "SDO_TOUCH") && requireProEdition()) {
@ -7801,6 +7802,10 @@ final class DefaultParseContext extends AbstractScope implements ParseContext {
@ -8396,6 +8401,16 @@ final class DefaultParseContext extends AbstractScope implements ParseContext {
}
else if (parseFunctionNameIf("ST_DIFFERENCE") && requireProEdition()) {
}
else if (parseFunctionNameIf("SDO_GEOM.SDO_DIFFERENCE") && requireProEdition()) {
}
else if (parseFunctionNameIf("ST_DISTANCE") && requireProEdition()) {
@ -8441,18 +8456,28 @@ final class DefaultParseContext extends AbstractScope implements ParseContext {
}
else if (parseFunctionNameIf("SDO_GEOM.SDO_INTERSECTION") && requireProEdition()) {
}
else if (parseFunctionNameIf("ST_LENGTH") && requireProEdition()) {
}
else if (parseFunctionNameIf("SDO_GEOM.SDO_LENGTH") && requireProEdition()) {
}
else if (parseFunctionNameIf("ST_NUMINTERIORRING", "ST_NUMINTERIORRINGS") && requireProEdition()) {
}
else if (parseFunctionNameIf("ST_NUMGEOMETRIES") && requireProEdition()) {
else if (parseFunctionNameIf("ST_NUMGEOMETRIES", "SDO_UTIL.GETNUMELEM") && requireProEdition()) {
@ -8476,6 +8501,11 @@ final class DefaultParseContext extends AbstractScope implements ParseContext {
}
else if (parseFunctionNameIf("SDO_GEOM.SDO_UNION") && requireProEdition()) {
}
else if (parseFunctionNameIf("ST_X") && requireProEdition()) {

View File

@ -5486,6 +5486,24 @@ public final class QOM {

View File

@ -166,6 +166,10 @@ package org.jooq.impl;

View File

@ -180,6 +180,10 @@ package org.jooq.impl;

View File

@ -0,0 +1,195 @@
/*
* Licensed 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.
*
* Other licenses:
* -----------------------------------------------------------------------------
* Commercial licenses for this work are available. These replace the above
* ASL 2.0 and offer limited warranties, support, maintenance, and commercial
* database integrations.
*
* For more information, please visit: http://www.jooq.org/licenses
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
package org.jooq.impl;

View File

@ -180,6 +180,10 @@ package org.jooq.impl;

View File

@ -166,6 +166,10 @@ package org.jooq.impl;

View File

@ -155,6 +155,21 @@ package org.jooq.impl;

View File

@ -184,6 +184,10 @@ package org.jooq.impl;

View File

@ -184,6 +184,10 @@ package org.jooq.impl;

View File

@ -180,6 +180,10 @@ package org.jooq.impl;

View File

@ -166,6 +166,10 @@ package org.jooq.impl;

View File

@ -166,6 +166,10 @@ package org.jooq.impl;

View File

@ -166,6 +166,10 @@ package org.jooq.impl;

View File

@ -180,6 +180,10 @@ package org.jooq.impl;

View File

@ -180,6 +180,10 @@ package org.jooq.impl;

View File

@ -191,6 +191,10 @@ package org.jooq.impl;