You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sedona.apache.org by zo...@apache.org on 2023/04/17 15:30:53 UTC
[sedona] 01/01: move formatutils to common, move sql functions dependency
This is an automated email from the ASF dual-hosted git repository.
zongsizhang pushed a commit to branch fix/move-formatmapper-from-core-to-common
in repository https://gitbox.apache.org/repos/asf/sedona.git
commit 270fca2203abfd908c19f3e63697041cc4812044
Author: zongsi.zhang <kr...@gmail.com>
AuthorDate: Mon Apr 17 23:30:34 2023 +0800
move formatutils to common, move sql functions dependency
---
R/R/dependencies.R | 4 +--
.../org/apache/sedona/common/Constructors.java | 22 +++++++++++++
.../sedona/common}/enums/FileDataSplitter.java | 2 +-
.../apache/sedona/common}/enums/GeometryType.java | 2 +-
.../apache/sedona/common/utils}/FormatUtils.java | 12 ++++---
.../sedona/core/formatMapper/FormatMapper.java | 5 +--
.../sedona/core/formatMapper/GeoJsonReader.java | 2 +-
.../core/formatMapper/LineStringFormatMapper.java | 4 +--
.../core/formatMapper/PointFormatMapper.java | 4 +--
.../core/formatMapper/PolygonFormatMapper.java | 4 +--
.../core/formatMapper/RectangleFormatMapper.java | 4 +--
.../apache/sedona/core/formatMapper/WkbReader.java | 2 +-
.../apache/sedona/core/formatMapper/WktReader.java | 2 +-
.../showcase/EarthdataMapperRunnableExample.java | 2 +-
.../org/apache/sedona/core/showcase/Example.java | 2 +-
.../sedona/core/spatialRDD/LineStringRDD.java | 2 +-
.../apache/sedona/core/spatialRDD/PointRDD.java | 2 +-
.../apache/sedona/core/spatialRDD/PolygonRDD.java | 2 +-
.../sedona/core/spatialRDD/RectangleRDD.java | 2 +-
.../ScalaEarthdataMapperRunnableExample.scala | 3 +-
.../apache/sedona/core/showcase/ScalaExample.scala | 3 +-
.../apache/sedona/core/io/EarthdataHDFTest.java | 3 +-
.../sedona/core/spatialOperator/JoinTestBase.java | 2 +-
.../core/spatialOperator/LineStringKnnTest.java | 2 +-
.../core/spatialOperator/LineStringRangeTest.java | 2 +-
.../sedona/core/spatialOperator/PointKnnTest.java | 2 +-
.../core/spatialOperator/PointRangeTest.java | 2 +-
.../core/spatialOperator/PolygonKnnTest.java | 2 +-
.../core/spatialOperator/PolygonRangeTest.java | 2 +-
.../core/spatialOperator/RectangleKnnTest.java | 2 +-
.../core/spatialOperator/RectangleRangeTest.java | 2 +-
.../sedona/core/spatialRDD/PolygonRDDTest.java | 2 +-
.../sedona/core/spatialRDD/SpatialRDDTestBase.java | 2 +-
.../core/spatialRDD/SpatialRDDWriterTest.java | 2 +-
.../sedona/core/utils/CRSTransformationTest.java | 2 +-
.../scala/org/apache/sedona/core/scalaTest.scala | 3 +-
docs/tutorial/flink/sql.md | 8 ++---
.../sedona/flink/expressions/Constructors.java | 6 ++--
.../sql/sedona_sql/expressions/Constructors.scala | 37 +++++++---------------
.../org/apache/sedona/sql/adapterTestScala.scala | 3 +-
.../org/apache/sedona/viz/showcase/Example.java | 2 +-
.../apache/sedona/viz/showcase/ScalaExample.scala | 3 +-
.../java/org/apache/sedona/viz/NYCTripTest.java | 2 +-
.../java/org/apache/sedona/viz/VizTestBase.java | 2 +-
.../org/apache/sedona/viz/rdd/scalaTest.scala | 3 +-
45 files changed, 100 insertions(+), 85 deletions(-)
diff --git a/R/R/dependencies.R b/R/R/dependencies.R
index dcd76cff..bead3f09 100644
--- a/R/R/dependencies.R
+++ b/R/R/dependencies.R
@@ -84,7 +84,7 @@ sedona_initialize_spark_connection <- function(sc) {
"semicolon"
)) {
sc$state$enums$delimiter[[x]] <- invoke_static(
- sc, "org.apache.sedona.core.enums.FileDataSplitter", toupper(x)
+ sc, "org.apache.sedona.common.enums.FileDataSplitter", toupper(x)
)
}
for (x in c(
@@ -99,7 +99,7 @@ sedona_initialize_spark_connection <- function(sc) {
"rectangle"
)) {
sc$state$enums$geometry_type[[x]] <- invoke_static(
- sc, "org.apache.sedona.core.enums.GeometryType", toupper(x)
+ sc, "org.apache.sedona.common.enums.GeometryType", toupper(x)
)
}
for (x in c("quadtree", "rtree")) {
diff --git a/common/src/main/java/org/apache/sedona/common/Constructors.java b/common/src/main/java/org/apache/sedona/common/Constructors.java
index e5384471..4cc5c48e 100644
--- a/common/src/main/java/org/apache/sedona/common/Constructors.java
+++ b/common/src/main/java/org/apache/sedona/common/Constructors.java
@@ -13,6 +13,9 @@
*/
package org.apache.sedona.common;
+import org.apache.sedona.common.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.GeometryType;
+import org.apache.sedona.common.utils.FormatUtils;
import org.locationtech.jts.geom.Coordinate;
import org.locationtech.jts.geom.Geometry;
import org.locationtech.jts.geom.GeometryFactory;
@@ -78,4 +81,23 @@ public class Constructors {
GeometryFactory geometryFactory = new GeometryFactory(new PrecisionModel(), srid);
return geometryFactory.createPoint(new Coordinate(x, y, z));
}
+
+ public static Geometry geomFromText(String geomString, String geomFormat, GeometryType geometryType) {
+ FileDataSplitter fileDataSplitter = FileDataSplitter.getFileDataSplitter(geomFormat);
+ FormatUtils<Geometry> formatMapper = new FormatUtils<>(fileDataSplitter, false, geometryType);
+ try {
+ return formatMapper.readGeometry(geomString);
+ } catch (ParseException e) {
+ throw new RuntimeException(e);
+ }
+ }
+
+ public static Geometry geomFromText(String geomString, FileDataSplitter fileDataSplitter) {
+ FormatUtils<Geometry> formatMapper = new FormatUtils<>(fileDataSplitter, false);
+ try {
+ return formatMapper.readGeometry(geomString);
+ } catch (ParseException e) {
+ throw new RuntimeException(e);
+ }
+ }
}
diff --git a/core/src/main/java/org/apache/sedona/core/enums/FileDataSplitter.java b/common/src/main/java/org/apache/sedona/common/enums/FileDataSplitter.java
similarity index 98%
rename from core/src/main/java/org/apache/sedona/core/enums/FileDataSplitter.java
rename to common/src/main/java/org/apache/sedona/common/enums/FileDataSplitter.java
index 73c8706f..9eb84994 100755
--- a/core/src/main/java/org/apache/sedona/core/enums/FileDataSplitter.java
+++ b/common/src/main/java/org/apache/sedona/common/enums/FileDataSplitter.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.sedona.core.enums;
+package org.apache.sedona.common.enums;
import java.io.Serializable;
import java.util.HashMap;
diff --git a/core/src/main/java/org/apache/sedona/core/enums/GeometryType.java b/common/src/main/java/org/apache/sedona/common/enums/GeometryType.java
similarity index 97%
rename from core/src/main/java/org/apache/sedona/core/enums/GeometryType.java
rename to common/src/main/java/org/apache/sedona/common/enums/GeometryType.java
index 20d0152f..ba2fe97c 100755
--- a/core/src/main/java/org/apache/sedona/core/enums/GeometryType.java
+++ b/common/src/main/java/org/apache/sedona/common/enums/GeometryType.java
@@ -17,7 +17,7 @@
* under the License.
*/
-package org.apache.sedona.core.enums;
+package org.apache.sedona.common.enums;
import java.io.Serializable;
diff --git a/core/src/main/java/org/apache/sedona/core/formatMapper/FormatUtils.java b/common/src/main/java/org/apache/sedona/common/utils/FormatUtils.java
similarity index 97%
rename from core/src/main/java/org/apache/sedona/core/formatMapper/FormatUtils.java
rename to common/src/main/java/org/apache/sedona/common/utils/FormatUtils.java
index 0b0aca57..53f56836 100644
--- a/core/src/main/java/org/apache/sedona/core/formatMapper/FormatUtils.java
+++ b/common/src/main/java/org/apache/sedona/common/utils/FormatUtils.java
@@ -11,16 +11,18 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.sedona.core.formatMapper;
+package org.apache.sedona.common.utils;
-import org.apache.log4j.Logger;
-import org.apache.sedona.core.enums.FileDataSplitter;
-import org.apache.sedona.core.enums.GeometryType;
+
+import org.apache.sedona.common.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.GeometryType;
import org.locationtech.jts.geom.*;
import org.locationtech.jts.io.ParseException;
import org.locationtech.jts.io.WKBReader;
import org.locationtech.jts.io.WKTReader;
import org.locationtech.jts.operation.valid.IsValidOp;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.wololo.geojson.Feature;
import org.wololo.geojson.GeoJSONFactory;
import org.wololo.jts2geojson.GeoJSONReader;
@@ -34,7 +36,7 @@ import java.util.*;
* This format mapper is isolated on purpose for the sake of sharing across Spark and Flink
*/
public class FormatUtils<T extends Geometry> implements Serializable {
- final static Logger logger = Logger.getLogger(FormatUtils.class);
+ final static Logger logger = LoggerFactory.getLogger(FormatUtils.class);
/**
* The start offset.
*/
diff --git a/core/src/main/java/org/apache/sedona/core/formatMapper/FormatMapper.java b/core/src/main/java/org/apache/sedona/core/formatMapper/FormatMapper.java
index 2a6c1516..1ca5fa59 100644
--- a/core/src/main/java/org/apache/sedona/core/formatMapper/FormatMapper.java
+++ b/core/src/main/java/org/apache/sedona/core/formatMapper/FormatMapper.java
@@ -19,8 +19,9 @@
package org.apache.sedona.core.formatMapper;
-import org.apache.sedona.core.enums.FileDataSplitter;
-import org.apache.sedona.core.enums.GeometryType;
+import org.apache.sedona.common.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.GeometryType;
+import org.apache.sedona.common.utils.FormatUtils;
import org.apache.spark.api.java.function.FlatMapFunction;
import org.locationtech.jts.geom.Geometry;
diff --git a/core/src/main/java/org/apache/sedona/core/formatMapper/GeoJsonReader.java b/core/src/main/java/org/apache/sedona/core/formatMapper/GeoJsonReader.java
index d4653027..c3166f15 100644
--- a/core/src/main/java/org/apache/sedona/core/formatMapper/GeoJsonReader.java
+++ b/core/src/main/java/org/apache/sedona/core/formatMapper/GeoJsonReader.java
@@ -19,7 +19,7 @@
package org.apache.sedona.core.formatMapper;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.spatialRDD.SpatialRDD;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;
diff --git a/core/src/main/java/org/apache/sedona/core/formatMapper/LineStringFormatMapper.java b/core/src/main/java/org/apache/sedona/core/formatMapper/LineStringFormatMapper.java
index d1711fb8..d8736925 100644
--- a/core/src/main/java/org/apache/sedona/core/formatMapper/LineStringFormatMapper.java
+++ b/core/src/main/java/org/apache/sedona/core/formatMapper/LineStringFormatMapper.java
@@ -19,8 +19,8 @@
package org.apache.sedona.core.formatMapper;
-import org.apache.sedona.core.enums.FileDataSplitter;
-import org.apache.sedona.core.enums.GeometryType;
+import org.apache.sedona.common.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.GeometryType;
public class LineStringFormatMapper
extends FormatMapper
diff --git a/core/src/main/java/org/apache/sedona/core/formatMapper/PointFormatMapper.java b/core/src/main/java/org/apache/sedona/core/formatMapper/PointFormatMapper.java
index c9b74ea9..c8548fc4 100644
--- a/core/src/main/java/org/apache/sedona/core/formatMapper/PointFormatMapper.java
+++ b/core/src/main/java/org/apache/sedona/core/formatMapper/PointFormatMapper.java
@@ -19,8 +19,8 @@
package org.apache.sedona.core.formatMapper;
-import org.apache.sedona.core.enums.FileDataSplitter;
-import org.apache.sedona.core.enums.GeometryType;
+import org.apache.sedona.common.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.GeometryType;
public class PointFormatMapper
extends FormatMapper
diff --git a/core/src/main/java/org/apache/sedona/core/formatMapper/PolygonFormatMapper.java b/core/src/main/java/org/apache/sedona/core/formatMapper/PolygonFormatMapper.java
index d442a77c..f9fea172 100644
--- a/core/src/main/java/org/apache/sedona/core/formatMapper/PolygonFormatMapper.java
+++ b/core/src/main/java/org/apache/sedona/core/formatMapper/PolygonFormatMapper.java
@@ -19,8 +19,8 @@
package org.apache.sedona.core.formatMapper;
-import org.apache.sedona.core.enums.FileDataSplitter;
-import org.apache.sedona.core.enums.GeometryType;
+import org.apache.sedona.common.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.GeometryType;
public class PolygonFormatMapper
extends FormatMapper
diff --git a/core/src/main/java/org/apache/sedona/core/formatMapper/RectangleFormatMapper.java b/core/src/main/java/org/apache/sedona/core/formatMapper/RectangleFormatMapper.java
index e9352652..4884aa60 100644
--- a/core/src/main/java/org/apache/sedona/core/formatMapper/RectangleFormatMapper.java
+++ b/core/src/main/java/org/apache/sedona/core/formatMapper/RectangleFormatMapper.java
@@ -19,8 +19,8 @@
package org.apache.sedona.core.formatMapper;
-import org.apache.sedona.core.enums.FileDataSplitter;
-import org.apache.sedona.core.enums.GeometryType;
+import org.apache.sedona.common.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.GeometryType;
public class RectangleFormatMapper
extends FormatMapper
diff --git a/core/src/main/java/org/apache/sedona/core/formatMapper/WkbReader.java b/core/src/main/java/org/apache/sedona/core/formatMapper/WkbReader.java
index f7912b7e..a0cc9ed5 100644
--- a/core/src/main/java/org/apache/sedona/core/formatMapper/WkbReader.java
+++ b/core/src/main/java/org/apache/sedona/core/formatMapper/WkbReader.java
@@ -19,7 +19,7 @@
package org.apache.sedona.core.formatMapper;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.spatialRDD.SpatialRDD;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;
diff --git a/core/src/main/java/org/apache/sedona/core/formatMapper/WktReader.java b/core/src/main/java/org/apache/sedona/core/formatMapper/WktReader.java
index 86b0c98b..051b02e0 100644
--- a/core/src/main/java/org/apache/sedona/core/formatMapper/WktReader.java
+++ b/core/src/main/java/org/apache/sedona/core/formatMapper/WktReader.java
@@ -19,7 +19,7 @@
package org.apache.sedona.core.formatMapper;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.spatialRDD.SpatialRDD;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;
diff --git a/core/src/main/java/org/apache/sedona/core/showcase/EarthdataMapperRunnableExample.java b/core/src/main/java/org/apache/sedona/core/showcase/EarthdataMapperRunnableExample.java
index ed86b1f6..a8ba812e 100644
--- a/core/src/main/java/org/apache/sedona/core/showcase/EarthdataMapperRunnableExample.java
+++ b/core/src/main/java/org/apache/sedona/core/showcase/EarthdataMapperRunnableExample.java
@@ -21,7 +21,7 @@ package org.apache.sedona.core.showcase;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.enums.IndexType;
import org.apache.sedona.core.formatMapper.EarthdataHDFPointMapper;
import org.apache.sedona.core.serde.SedonaKryoRegistrator;
diff --git a/core/src/main/java/org/apache/sedona/core/showcase/Example.java b/core/src/main/java/org/apache/sedona/core/showcase/Example.java
index 358fe743..f1bf7dd9 100644
--- a/core/src/main/java/org/apache/sedona/core/showcase/Example.java
+++ b/core/src/main/java/org/apache/sedona/core/showcase/Example.java
@@ -21,7 +21,7 @@ package org.apache.sedona.core.showcase;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.enums.GridType;
import org.apache.sedona.core.enums.IndexType;
import org.apache.sedona.core.formatMapper.shapefileParser.ShapefileRDD;
diff --git a/core/src/main/java/org/apache/sedona/core/spatialRDD/LineStringRDD.java b/core/src/main/java/org/apache/sedona/core/spatialRDD/LineStringRDD.java
index 25bc7b1e..48650ad2 100644
--- a/core/src/main/java/org/apache/sedona/core/spatialRDD/LineStringRDD.java
+++ b/core/src/main/java/org/apache/sedona/core/spatialRDD/LineStringRDD.java
@@ -19,7 +19,7 @@
package org.apache.sedona.core.spatialRDD;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.formatMapper.FormatMapper;
import org.apache.sedona.core.formatMapper.LineStringFormatMapper;
import org.apache.spark.api.java.JavaRDD;
diff --git a/core/src/main/java/org/apache/sedona/core/spatialRDD/PointRDD.java b/core/src/main/java/org/apache/sedona/core/spatialRDD/PointRDD.java
index c4409b59..ca4c560c 100644
--- a/core/src/main/java/org/apache/sedona/core/spatialRDD/PointRDD.java
+++ b/core/src/main/java/org/apache/sedona/core/spatialRDD/PointRDD.java
@@ -19,7 +19,7 @@
package org.apache.sedona.core.spatialRDD;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.formatMapper.FormatMapper;
import org.apache.sedona.core.formatMapper.PointFormatMapper;
import org.apache.spark.api.java.JavaRDD;
diff --git a/core/src/main/java/org/apache/sedona/core/spatialRDD/PolygonRDD.java b/core/src/main/java/org/apache/sedona/core/spatialRDD/PolygonRDD.java
index 1df75635..c85c510c 100644
--- a/core/src/main/java/org/apache/sedona/core/spatialRDD/PolygonRDD.java
+++ b/core/src/main/java/org/apache/sedona/core/spatialRDD/PolygonRDD.java
@@ -19,7 +19,7 @@
package org.apache.sedona.core.spatialRDD;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.formatMapper.FormatMapper;
import org.apache.sedona.core.formatMapper.PolygonFormatMapper;
import org.apache.spark.api.java.JavaRDD;
diff --git a/core/src/main/java/org/apache/sedona/core/spatialRDD/RectangleRDD.java b/core/src/main/java/org/apache/sedona/core/spatialRDD/RectangleRDD.java
index 6b03ff4c..2e247a37 100644
--- a/core/src/main/java/org/apache/sedona/core/spatialRDD/RectangleRDD.java
+++ b/core/src/main/java/org/apache/sedona/core/spatialRDD/RectangleRDD.java
@@ -19,7 +19,7 @@
package org.apache.sedona.core.spatialRDD;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.formatMapper.RectangleFormatMapper;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;
diff --git a/core/src/main/scala/org/apache/sedona/core/showcase/ScalaEarthdataMapperRunnableExample.scala b/core/src/main/scala/org/apache/sedona/core/showcase/ScalaEarthdataMapperRunnableExample.scala
index 64b70239..c1f8f249 100644
--- a/core/src/main/scala/org/apache/sedona/core/showcase/ScalaEarthdataMapperRunnableExample.scala
+++ b/core/src/main/scala/org/apache/sedona/core/showcase/ScalaEarthdataMapperRunnableExample.scala
@@ -20,7 +20,8 @@
package org.apache.sedona.core.showcase
import org.apache.log4j.{Level, Logger}
-import org.apache.sedona.core.enums.{FileDataSplitter, IndexType}
+import org.apache.sedona.common.enums.FileDataSplitter
+import org.apache.sedona.core.enums.IndexType
import org.apache.sedona.core.formatMapper.EarthdataHDFPointMapper
import org.apache.sedona.core.spatialOperator.RangeQuery
import org.apache.sedona.core.spatialOperator.SpatialPredicate
diff --git a/core/src/main/scala/org/apache/sedona/core/showcase/ScalaExample.scala b/core/src/main/scala/org/apache/sedona/core/showcase/ScalaExample.scala
index 9a5dde5a..ee730fa5 100644
--- a/core/src/main/scala/org/apache/sedona/core/showcase/ScalaExample.scala
+++ b/core/src/main/scala/org/apache/sedona/core/showcase/ScalaExample.scala
@@ -20,7 +20,8 @@
package org.apache.sedona.core.showcase
import org.apache.log4j.{Level, Logger}
-import org.apache.sedona.core.enums.{FileDataSplitter, GridType, IndexType}
+import org.apache.sedona.common.enums.FileDataSplitter
+import org.apache.sedona.core.enums.{GridType, IndexType}
import org.apache.sedona.core.formatMapper.shapefileParser.ShapefileRDD
import org.apache.sedona.core.serde.SedonaKryoRegistrator
import org.apache.sedona.core.spatialOperator.SpatialPredicate
diff --git a/core/src/test/java/org/apache/sedona/core/io/EarthdataHDFTest.java b/core/src/test/java/org/apache/sedona/core/io/EarthdataHDFTest.java
index 4debeef1..b0d7c36e 100644
--- a/core/src/test/java/org/apache/sedona/core/io/EarthdataHDFTest.java
+++ b/core/src/test/java/org/apache/sedona/core/io/EarthdataHDFTest.java
@@ -20,7 +20,7 @@ package org.apache.sedona.core.io;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.enums.IndexType;
import org.apache.sedona.core.formatMapper.EarthdataHDFPointMapper;
import org.apache.sedona.core.spatialOperator.RangeQuery;
@@ -31,7 +31,6 @@ import org.apache.spark.storage.StorageLevel;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Ignore;
-import org.junit.Test;
import org.locationtech.jts.geom.Envelope;
// TODO: Auto-generated Javadoc
diff --git a/core/src/test/java/org/apache/sedona/core/spatialOperator/JoinTestBase.java b/core/src/test/java/org/apache/sedona/core/spatialOperator/JoinTestBase.java
index 53173ebe..2f9dd551 100644
--- a/core/src/test/java/org/apache/sedona/core/spatialOperator/JoinTestBase.java
+++ b/core/src/test/java/org/apache/sedona/core/spatialOperator/JoinTestBase.java
@@ -19,7 +19,7 @@
package org.apache.sedona.core.spatialOperator;
import org.apache.sedona.core.TestBase;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.enums.GridType;
import org.apache.sedona.core.enums.IndexType;
import org.apache.sedona.core.spatialRDD.LineStringRDD;
diff --git a/core/src/test/java/org/apache/sedona/core/spatialOperator/LineStringKnnTest.java b/core/src/test/java/org/apache/sedona/core/spatialOperator/LineStringKnnTest.java
index 01cc9c65..155d17d6 100644
--- a/core/src/test/java/org/apache/sedona/core/spatialOperator/LineStringKnnTest.java
+++ b/core/src/test/java/org/apache/sedona/core/spatialOperator/LineStringKnnTest.java
@@ -20,7 +20,7 @@ package org.apache.sedona.core.spatialOperator;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.enums.IndexType;
import org.apache.sedona.core.spatialRDD.LineStringRDD;
import org.apache.spark.SparkConf;
diff --git a/core/src/test/java/org/apache/sedona/core/spatialOperator/LineStringRangeTest.java b/core/src/test/java/org/apache/sedona/core/spatialOperator/LineStringRangeTest.java
index 1cb3ca98..8f74e6c3 100644
--- a/core/src/test/java/org/apache/sedona/core/spatialOperator/LineStringRangeTest.java
+++ b/core/src/test/java/org/apache/sedona/core/spatialOperator/LineStringRangeTest.java
@@ -20,7 +20,7 @@ package org.apache.sedona.core.spatialOperator;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.enums.IndexType;
import org.apache.sedona.core.spatialRDD.LineStringRDD;
import org.apache.sedona.core.spatialRDD.LineStringRDDTest;
diff --git a/core/src/test/java/org/apache/sedona/core/spatialOperator/PointKnnTest.java b/core/src/test/java/org/apache/sedona/core/spatialOperator/PointKnnTest.java
index 1f15c541..1af99ad3 100644
--- a/core/src/test/java/org/apache/sedona/core/spatialOperator/PointKnnTest.java
+++ b/core/src/test/java/org/apache/sedona/core/spatialOperator/PointKnnTest.java
@@ -20,7 +20,7 @@ package org.apache.sedona.core.spatialOperator;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.enums.IndexType;
import org.apache.sedona.core.knnJudgement.GeometryDistanceComparator;
import org.apache.sedona.core.spatialRDD.PointRDD;
diff --git a/core/src/test/java/org/apache/sedona/core/spatialOperator/PointRangeTest.java b/core/src/test/java/org/apache/sedona/core/spatialOperator/PointRangeTest.java
index 78d4eb6d..93aa7de3 100644
--- a/core/src/test/java/org/apache/sedona/core/spatialOperator/PointRangeTest.java
+++ b/core/src/test/java/org/apache/sedona/core/spatialOperator/PointRangeTest.java
@@ -20,7 +20,7 @@ package org.apache.sedona.core.spatialOperator;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.enums.IndexType;
import org.apache.sedona.core.spatialRDD.PointRDD;
import org.apache.spark.SparkConf;
diff --git a/core/src/test/java/org/apache/sedona/core/spatialOperator/PolygonKnnTest.java b/core/src/test/java/org/apache/sedona/core/spatialOperator/PolygonKnnTest.java
index c222aaa8..0d6e7b91 100644
--- a/core/src/test/java/org/apache/sedona/core/spatialOperator/PolygonKnnTest.java
+++ b/core/src/test/java/org/apache/sedona/core/spatialOperator/PolygonKnnTest.java
@@ -20,7 +20,7 @@ package org.apache.sedona.core.spatialOperator;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.enums.IndexType;
import org.apache.sedona.core.knnJudgement.GeometryDistanceComparator;
import org.apache.sedona.core.spatialRDD.PolygonRDD;
diff --git a/core/src/test/java/org/apache/sedona/core/spatialOperator/PolygonRangeTest.java b/core/src/test/java/org/apache/sedona/core/spatialOperator/PolygonRangeTest.java
index dc599759..f526d417 100644
--- a/core/src/test/java/org/apache/sedona/core/spatialOperator/PolygonRangeTest.java
+++ b/core/src/test/java/org/apache/sedona/core/spatialOperator/PolygonRangeTest.java
@@ -20,7 +20,7 @@ package org.apache.sedona.core.spatialOperator;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.enums.IndexType;
import org.apache.sedona.core.spatialRDD.PolygonRDD;
import org.apache.spark.SparkConf;
diff --git a/core/src/test/java/org/apache/sedona/core/spatialOperator/RectangleKnnTest.java b/core/src/test/java/org/apache/sedona/core/spatialOperator/RectangleKnnTest.java
index f7a86ca5..7f5184e2 100644
--- a/core/src/test/java/org/apache/sedona/core/spatialOperator/RectangleKnnTest.java
+++ b/core/src/test/java/org/apache/sedona/core/spatialOperator/RectangleKnnTest.java
@@ -20,7 +20,7 @@ package org.apache.sedona.core.spatialOperator;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.enums.IndexType;
import org.apache.sedona.core.knnJudgement.GeometryDistanceComparator;
import org.apache.sedona.core.spatialRDD.RectangleRDD;
diff --git a/core/src/test/java/org/apache/sedona/core/spatialOperator/RectangleRangeTest.java b/core/src/test/java/org/apache/sedona/core/spatialOperator/RectangleRangeTest.java
index 794d1436..d5fbe7ac 100644
--- a/core/src/test/java/org/apache/sedona/core/spatialOperator/RectangleRangeTest.java
+++ b/core/src/test/java/org/apache/sedona/core/spatialOperator/RectangleRangeTest.java
@@ -20,7 +20,7 @@ package org.apache.sedona.core.spatialOperator;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.enums.IndexType;
import org.apache.sedona.core.rangeJudgement.RangeFilter;
import org.apache.sedona.core.rangeJudgement.RangeFilterUsingIndex;
diff --git a/core/src/test/java/org/apache/sedona/core/spatialRDD/PolygonRDDTest.java b/core/src/test/java/org/apache/sedona/core/spatialRDD/PolygonRDDTest.java
index dfae6cc5..49b0d397 100644
--- a/core/src/test/java/org/apache/sedona/core/spatialRDD/PolygonRDDTest.java
+++ b/core/src/test/java/org/apache/sedona/core/spatialRDD/PolygonRDDTest.java
@@ -18,7 +18,7 @@
*/
package org.apache.sedona.core.spatialRDD;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.enums.IndexType;
import org.apache.spark.storage.StorageLevel;
import org.junit.AfterClass;
diff --git a/core/src/test/java/org/apache/sedona/core/spatialRDD/SpatialRDDTestBase.java b/core/src/test/java/org/apache/sedona/core/spatialRDD/SpatialRDDTestBase.java
index c0f5b3a8..a37ae247 100644
--- a/core/src/test/java/org/apache/sedona/core/spatialRDD/SpatialRDDTestBase.java
+++ b/core/src/test/java/org/apache/sedona/core/spatialRDD/SpatialRDDTestBase.java
@@ -19,7 +19,7 @@
package org.apache.sedona.core.spatialRDD;
import org.apache.sedona.core.TestBase;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.enums.GridType;
import org.apache.sedona.core.enums.IndexType;
import org.locationtech.jts.geom.Envelope;
diff --git a/core/src/test/java/org/apache/sedona/core/spatialRDD/SpatialRDDWriterTest.java b/core/src/test/java/org/apache/sedona/core/spatialRDD/SpatialRDDWriterTest.java
index 0e22c3f7..123f9e9f 100644
--- a/core/src/test/java/org/apache/sedona/core/spatialRDD/SpatialRDDWriterTest.java
+++ b/core/src/test/java/org/apache/sedona/core/spatialRDD/SpatialRDDWriterTest.java
@@ -22,7 +22,7 @@ package org.apache.sedona.core.spatialRDD;
import org.apache.commons.io.FileUtils;
import org.apache.commons.lang.NullArgumentException;
import org.apache.sedona.common.utils.GeomUtils;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.spark.storage.StorageLevel;
import org.junit.AfterClass;
import org.junit.BeforeClass;
diff --git a/core/src/test/java/org/apache/sedona/core/utils/CRSTransformationTest.java b/core/src/test/java/org/apache/sedona/core/utils/CRSTransformationTest.java
index 6044e35e..398c73aa 100644
--- a/core/src/test/java/org/apache/sedona/core/utils/CRSTransformationTest.java
+++ b/core/src/test/java/org/apache/sedona/core/utils/CRSTransformationTest.java
@@ -20,7 +20,7 @@ package org.apache.sedona.core.utils;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.enums.GridType;
import org.apache.sedona.core.enums.IndexType;
import org.apache.sedona.core.knnJudgement.GeometryDistanceComparator;
diff --git a/core/src/test/scala/org/apache/sedona/core/scalaTest.scala b/core/src/test/scala/org/apache/sedona/core/scalaTest.scala
index 18206adc..78492bb2 100644
--- a/core/src/test/scala/org/apache/sedona/core/scalaTest.scala
+++ b/core/src/test/scala/org/apache/sedona/core/scalaTest.scala
@@ -19,7 +19,8 @@
package org.apache.sedona.core
-import org.apache.sedona.core.enums.{FileDataSplitter, GridType, IndexType, JoinBuildSide}
+import org.apache.sedona.common.enums.FileDataSplitter
+import org.apache.sedona.core.enums.{GridType, IndexType, JoinBuildSide}
import org.apache.sedona.core.formatMapper.EarthdataHDFPointMapper
import org.apache.sedona.core.spatialOperator.JoinQuery.JoinParams
import org.apache.sedona.core.spatialOperator.SpatialPredicate
diff --git a/docs/tutorial/flink/sql.md b/docs/tutorial/flink/sql.md
index 720d1aca..d4fc21fe 100644
--- a/docs/tutorial/flink/sql.md
+++ b/docs/tutorial/flink/sql.md
@@ -396,7 +396,7 @@ The output will be
* Create a Geometry from a WKT string
```java
-import org.apache.sedona.core.formatMapper.FormatUtils;
+import org.apache.sedona.common.utils.FormatUtils;
import org.locationtech.jts.geom.Geometry;
DataStream<Geometry> geometries = text.map(new MapFunction<String, Geometry>() {
@@ -412,7 +412,7 @@ DataStream<Geometry> geometries = text.map(new MapFunction<String, Geometry>() {
* Create a Point from a String `1.1, 2.2`. Use `,` as the delimiter.
```java
-import org.apache.sedona.core.formatMapper.FormatUtils;
+import org.apache.sedona.common.utils.FormatUtils;
import org.locationtech.jts.geom.Geometry;
DataStream<Geometry> geometries = text.map(new MapFunction<String, Geometry>() {
@@ -428,7 +428,7 @@ DataStream<Geometry> geometries = text.map(new MapFunction<String, Geometry>() {
* Create a Polygon from a String `1.1, 1.1, 10.1, 10.1`. This is a rectangle with (1.1, 1.1) and (10.1, 10.1) as their min/max corners.
```java
-import org.apache.sedona.core.formatMapper.FormatUtils;
+import org.apache.sedona.common.utils.FormatUtils;
import org.locationtech.jts.geom.GeometryFactory;
import org.locationtech.jts.geom.Geometry;
@@ -455,7 +455,7 @@ DataStream<Geometry> geometries = text.map(new MapFunction<String, Geometry>() {
Put a geometry in a Flink Row to a `geomStream`. Note that you can put other attributes in Row as well. This example uses a constant value `myName` for all geometries.
```java
-import org.apache.sedona.core.formatMapper.FormatUtils;
+import org.apache.sedona.common.utils.FormatUtils;
import org.locationtech.jts.geom.Geometry;
import org.apache.flink.types.Row;
diff --git a/flink/src/main/java/org/apache/sedona/flink/expressions/Constructors.java b/flink/src/main/java/org/apache/sedona/flink/expressions/Constructors.java
index d6583ed8..08cc0ed9 100644
--- a/flink/src/main/java/org/apache/sedona/flink/expressions/Constructors.java
+++ b/flink/src/main/java/org/apache/sedona/flink/expressions/Constructors.java
@@ -15,9 +15,9 @@ package org.apache.sedona.flink.expressions;
import org.apache.flink.table.annotation.DataTypeHint;
import org.apache.flink.table.functions.ScalarFunction;
-import org.apache.sedona.core.enums.FileDataSplitter;
-import org.apache.sedona.core.enums.GeometryType;
-import org.apache.sedona.core.formatMapper.FormatUtils;
+import org.apache.sedona.common.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.GeometryType;
+import org.apache.sedona.common.utils.FormatUtils;
import org.apache.spark.sql.sedona_sql.expressions.geohash.GeoHashDecoder;
import org.locationtech.jts.geom.Coordinate;
import org.locationtech.jts.geom.Geometry;
diff --git a/sql/src/main/scala/org/apache/spark/sql/sedona_sql/expressions/Constructors.scala b/sql/src/main/scala/org/apache/spark/sql/sedona_sql/expressions/Constructors.scala
index 3505899f..30c1f447 100644
--- a/sql/src/main/scala/org/apache/spark/sql/sedona_sql/expressions/Constructors.scala
+++ b/sql/src/main/scala/org/apache/spark/sql/sedona_sql/expressions/Constructors.scala
@@ -18,25 +18,22 @@
*/
package org.apache.spark.sql.sedona_sql.expressions
-import org.apache.sedona.core.enums.{FileDataSplitter, GeometryType}
+import org.apache.sedona.common.Constructors
+import org.apache.sedona.common.enums.{FileDataSplitter, GeometryType}
import org.apache.sedona.core.formatMapper.FormatMapper
import org.apache.sedona.sql.utils.GeometrySerializer
import org.apache.spark.sql.catalyst.InternalRow
-import org.apache.spark.sql.catalyst.expressions.Expression
+import org.apache.spark.sql.catalyst.expressions.{Expression, ImplicitCastInputTypes}
import org.apache.spark.sql.catalyst.expressions.codegen.CodegenFallback
-import org.apache.spark.sql.catalyst.util.GenericArrayData
import org.apache.spark.sql.sedona_sql.UDT.GeometryUDT
import org.apache.spark.sql.sedona_sql.expressions.geohash.GeoHashDecoder
import org.apache.spark.sql.sedona_sql.expressions.implicits.GeometryEnhancer
-import org.apache.spark.sql.types.{AbstractDataType, DataType, DoubleType, IntegerType, StringType, TypeCollection}
+import org.apache.spark.sql.types._
import org.apache.spark.unsafe.types.UTF8String
import org.locationtech.jts.geom.{Coordinate, GeometryFactory}
import org.locationtech.jts.io.WKBReader
import org.locationtech.jts.io.gml2.GMLReader
import org.locationtech.jts.io.kml.KMLReader
-import org.apache.spark.sql.catalyst.expressions.ImplicitCastInputTypes
-import org.apache.sedona.common.Constructors
-import org.apache.spark.sql.types.BinaryType
/**
* Return a point from a string. The string must be plain string and each coordinate must be separated by a delimiter.
@@ -54,9 +51,7 @@ case class ST_PointFromText(inputExpressions: Seq[Expression])
override def eval(inputRow: InternalRow): Any = {
val geomString = inputExpressions(0).eval(inputRow).asInstanceOf[UTF8String].toString
val geomFormat = inputExpressions(1).eval(inputRow).asInstanceOf[UTF8String].toString
- var fileDataSplitter = FileDataSplitter.getFileDataSplitter(geomFormat)
- var formatMapper = new FormatMapper(fileDataSplitter, false, GeometryType.POINT)
- var geometry = formatMapper.readGeometry(geomString)
+ val geometry = Constructors.geomFromText(geomString, geomFormat, GeometryType.POINT)
GeometrySerializer.serialize(geometry)
}
@@ -87,9 +82,7 @@ case class ST_PolygonFromText(inputExpressions: Seq[Expression])
val geomString = inputExpressions(0).eval(inputRow).asInstanceOf[UTF8String].toString
val geomFormat = inputExpressions(1).eval(inputRow).asInstanceOf[UTF8String].toString
- var fileDataSplitter = FileDataSplitter.getFileDataSplitter(geomFormat)
- var formatMapper = new FormatMapper(fileDataSplitter, false, GeometryType.POLYGON)
- var geometry = formatMapper.readGeometry(geomString)
+ var geometry = Constructors.geomFromText(geomString, geomFormat, GeometryType.POLYGON)
GeometrySerializer.serialize(geometry)
}
@@ -119,9 +112,8 @@ case class ST_LineFromText(inputExpressions: Seq[Expression])
override def eval(inputRow: InternalRow): Any = {
val lineString = inputExpressions(0).eval(inputRow).asInstanceOf[UTF8String].toString
- var fileDataSplitter = FileDataSplitter.WKT
- var formatMapper = new FormatMapper(fileDataSplitter, false)
- var geometry = formatMapper.readGeometry(lineString)
+ val fileDataSplitter = FileDataSplitter.WKT
+ val geometry = Constructors.geomFromText(lineString, fileDataSplitter)
if(geometry.getGeometryType.contains("LineString")) {
GeometrySerializer.serialize(geometry)
} else {
@@ -156,9 +148,7 @@ case class ST_LineStringFromText(inputExpressions: Seq[Expression])
val geomString = inputExpressions(0).eval(inputRow).asInstanceOf[UTF8String].toString
val geomFormat = inputExpressions(1).eval(inputRow).asInstanceOf[UTF8String].toString
- var fileDataSplitter = FileDataSplitter.getFileDataSplitter(geomFormat)
- var formatMapper = new FormatMapper(fileDataSplitter, false, GeometryType.LINESTRING)
- var geometry = formatMapper.readGeometry(geomString)
+ val geometry = Constructors.geomFromText(geomString, geomFormat, GeometryType.LINESTRING)
GeometrySerializer.serialize(geometry)
}
@@ -219,9 +209,7 @@ case class ST_GeomFromWKB(inputExpressions: Seq[Expression])
(inputExpressions.head.eval(inputRow)) match {
case (geomString: UTF8String) => {
// Parse UTF-8 encoded wkb string
- val fileDataSplitter = FileDataSplitter.WKB
- val formatMapper = new FormatMapper(fileDataSplitter, false)
- formatMapper.readGeometry(geomString.toString).toGenericArrayData
+ Constructors.geomFromText(geomString.toString, FileDataSplitter.WKB).toGenericArrayData
}
case (wkb: Array[Byte]) => {
// convert raw wkb byte array to geometry
@@ -257,10 +245,7 @@ case class ST_GeomFromGeoJSON(inputExpressions: Seq[Expression])
override def eval(inputRow: InternalRow): Any = {
val geomString = inputExpressions.head.eval(inputRow).asInstanceOf[UTF8String].toString
-
- var fileDataSplitter = FileDataSplitter.GEOJSON
- var formatMapper = new FormatMapper(fileDataSplitter, false)
- var geometry = formatMapper.readGeometry(geomString)
+ val geometry = Constructors.geomFromText(geomString, FileDataSplitter.GEOJSON)
// If the user specify a bunch of attributes to go with each geometry, we need to store all of them in this geometry
if (inputExpressions.length > 1) {
geometry.setUserData(generateUserData(minInputLength, inputExpressions, inputRow))
diff --git a/sql/src/test/scala/org/apache/sedona/sql/adapterTestScala.scala b/sql/src/test/scala/org/apache/sedona/sql/adapterTestScala.scala
index 9f236812..2fb58a82 100644
--- a/sql/src/test/scala/org/apache/sedona/sql/adapterTestScala.scala
+++ b/sql/src/test/scala/org/apache/sedona/sql/adapterTestScala.scala
@@ -19,7 +19,8 @@
package org.apache.sedona.sql
-import org.apache.sedona.core.enums.{FileDataSplitter, GridType, IndexType}
+import org.apache.sedona.common.enums.FileDataSplitter
+import org.apache.sedona.core.enums.{GridType, IndexType}
import org.apache.sedona.core.formatMapper.EarthdataHDFPointMapper
import org.apache.sedona.core.formatMapper.shapefileParser.ShapefileReader
import org.apache.sedona.core.spatialOperator.JoinQuery
diff --git a/viz/src/main/java/org/apache/sedona/viz/showcase/Example.java b/viz/src/main/java/org/apache/sedona/viz/showcase/Example.java
index a228efb1..990129cc 100644
--- a/viz/src/main/java/org/apache/sedona/viz/showcase/Example.java
+++ b/viz/src/main/java/org/apache/sedona/viz/showcase/Example.java
@@ -20,7 +20,7 @@ package org.apache.sedona.viz.showcase;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.enums.GridType;
import org.apache.sedona.core.enums.IndexType;
import org.apache.sedona.core.formatMapper.EarthdataHDFPointMapper;
diff --git a/viz/src/main/scala/org/apache/sedona/viz/showcase/ScalaExample.scala b/viz/src/main/scala/org/apache/sedona/viz/showcase/ScalaExample.scala
index 7365e47f..f159474f 100644
--- a/viz/src/main/scala/org/apache/sedona/viz/showcase/ScalaExample.scala
+++ b/viz/src/main/scala/org/apache/sedona/viz/showcase/ScalaExample.scala
@@ -23,7 +23,8 @@ import java.io.FileInputStream
import java.util.Properties
import org.apache.log4j.{Level, Logger}
-import org.apache.sedona.core.enums.{FileDataSplitter, GridType, IndexType}
+import org.apache.sedona.common.enums.FileDataSplitter
+import org.apache.sedona.core.enums.{GridType, IndexType}
import org.apache.sedona.core.formatMapper.EarthdataHDFPointMapper
import org.apache.sedona.core.spatialOperator.JoinQuery
import org.apache.sedona.core.spatialRDD.{PointRDD, PolygonRDD, RectangleRDD}
diff --git a/viz/src/test/java/org/apache/sedona/viz/NYCTripTest.java b/viz/src/test/java/org/apache/sedona/viz/NYCTripTest.java
index 46136af7..78e33e37 100644
--- a/viz/src/test/java/org/apache/sedona/viz/NYCTripTest.java
+++ b/viz/src/test/java/org/apache/sedona/viz/NYCTripTest.java
@@ -18,7 +18,7 @@
*/
package org.apache.sedona.viz;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.core.spatialRDD.PointRDD;
import org.apache.sedona.viz.core.ImageGenerator;
import org.apache.sedona.viz.extension.visualizationEffect.HeatMap;
diff --git a/viz/src/test/java/org/apache/sedona/viz/VizTestBase.java b/viz/src/test/java/org/apache/sedona/viz/VizTestBase.java
index d8253a5d..2a96610d 100644
--- a/viz/src/test/java/org/apache/sedona/viz/VizTestBase.java
+++ b/viz/src/test/java/org/apache/sedona/viz/VizTestBase.java
@@ -18,7 +18,7 @@
*/
package org.apache.sedona.viz;
-import org.apache.sedona.core.enums.FileDataSplitter;
+import org.apache.sedona.common.enums.FileDataSplitter;
import org.apache.sedona.viz.core.Serde.SedonaVizKryoRegistrator;
import org.locationtech.jts.geom.Envelope;
import org.apache.log4j.Level;
diff --git a/viz/src/test/scala/org/apache/sedona/viz/rdd/scalaTest.scala b/viz/src/test/scala/org/apache/sedona/viz/rdd/scalaTest.scala
index 3abdf94c..12d248bb 100644
--- a/viz/src/test/scala/org/apache/sedona/viz/rdd/scalaTest.scala
+++ b/viz/src/test/scala/org/apache/sedona/viz/rdd/scalaTest.scala
@@ -24,7 +24,8 @@ import java.util.Properties
import org.locationtech.jts.geom.Envelope
import org.apache.log4j.{Level, Logger}
-import org.apache.sedona.core.enums.{FileDataSplitter, GridType, IndexType}
+import org.apache.sedona.common.enums.FileDataSplitter
+import org.apache.sedona.core.enums.{GridType, IndexType}
import org.apache.sedona.core.formatMapper.EarthdataHDFPointMapper
import org.apache.sedona.core.spatialOperator.JoinQuery
import org.apache.sedona.core.spatialRDD.{PointRDD, PolygonRDD, RectangleRDD}