Expected behavior
I have a use case where I want to join based on geodesic area overlap of 90% or more and I would like to define my own judgment.
In class org.datasyslab.geospark.spatialOperator.JoinQuery,
Add as below to allow users to specify their own operator for join and generating matching pairs.
public static final class JoinParams<U extends Object, T extends Object>
{
public final boolean useIndex;
public final boolean considerBoundaryIntersection;
public final boolean allowDuplicates;
public final IndexType indexType;
public final JoinBuildSide joinBuildSide;
public final FlatMapFunction2<Iterator, Iterator, Pair<U, T>> customJudgement;
}
and allow user to use it with
public static <U extends Geometry, T extends Geometry> JavaPairRDD<U, T> spatialJoin(
SpatialRDD leftRDD,
SpatialRDD rightRDD,
JoinParams joinParams) {
....
}
Actual behavior
JudgementBase is private and user does not have a way to specify their own judgement to use for spatial joins.
Steps to reproduce the problem
N/A
Settings
GeoSpark version = 1.2.3.1
Apache Spark version = 2.4.1
JRE version = 1.8?
API type = Scala or Java? Java
Expected behavior
I have a use case where I want to join based on geodesic area overlap of 90% or more and I would like to define my own judgment.
In class org.datasyslab.geospark.spatialOperator.JoinQuery,
Add as below to allow users to specify their own operator for join and generating matching pairs.
public static final class JoinParams<U extends Object, T extends Object>
{
public final boolean useIndex;
public final boolean considerBoundaryIntersection;
public final boolean allowDuplicates;
public final IndexType indexType;
public final JoinBuildSide joinBuildSide;
public final FlatMapFunction2<Iterator, Iterator, Pair<U, T>> customJudgement;
}
and allow user to use it with
public static <U extends Geometry, T extends Geometry> JavaPairRDD<U, T> spatialJoin(
SpatialRDD leftRDD,
SpatialRDD rightRDD,
JoinParams joinParams) {
....
}
Actual behavior
JudgementBase is private and user does not have a way to specify their own judgement to use for spatial joins.
Steps to reproduce the problem
N/A
Settings
GeoSpark version = 1.2.3.1
Apache Spark version = 2.4.1
JRE version = 1.8?
API type = Scala or Java? Java