mirror of https://github.com/apache/lucene.git
LUCENE-7015: Refactor spatial module to spatial-extras
Refactors non GeoPoint* classes from existing spatial module to a new spatial-extras module. dev-tools, build, and project files are updated to include new spatial-extras module.
This commit is contained in:
parent
a9aec24236
commit
89db4950b9
|
@ -31,6 +31,7 @@
|
|||
<buildFile url="file://$PROJECT_DIR$/lucene/replicator/build.xml" />
|
||||
<buildFile url="file://$PROJECT_DIR$/lucene/sandbox/build.xml" />
|
||||
<buildFile url="file://$PROJECT_DIR$/lucene/spatial/build.xml" />
|
||||
<buildFile url="file://$PROJECT_DIR$/lucene/spatial-extras/build.xml" />
|
||||
<buildFile url="file://$PROJECT_DIR$/lucene/suggest/build.xml" />
|
||||
<buildFile url="file://$PROJECT_DIR$/lucene/test-framework/build.xml" />
|
||||
<buildFile url="file://$PROJECT_DIR$/lucene/tools/build.xml" />
|
||||
|
|
|
@ -36,6 +36,7 @@
|
|||
<module group="Lucene/Other" filepath="$PROJECT_DIR$/lucene/replicator/replicator.iml" />
|
||||
<module group="Lucene/Other" filepath="$PROJECT_DIR$/lucene/sandbox/sandbox.iml" />
|
||||
<module group="Lucene/Other" filepath="$PROJECT_DIR$/lucene/spatial/spatial.iml" />
|
||||
<module group="Lucene/Other" filepath="$PROJECT_DIR$/lucene/spatial-extras/spatial-extras.iml" />
|
||||
<module group="Lucene/Other" filepath="$PROJECT_DIR$/lucene/spatial3d/spatial3d.iml" />
|
||||
<module group="Lucene/Other" filepath="$PROJECT_DIR$/lucene/suggest/suggest.iml" />
|
||||
<module group="Lucene/Other" filepath="$PROJECT_DIR$/lucene/tools/tools.iml" />
|
||||
|
|
|
@ -204,6 +204,14 @@
|
|||
<option name="TEST_SEARCH_SCOPE"><value defaultName="singleModule" /></option>
|
||||
<patterns><pattern testClass=".*\.Test[^.]*|.*\.[^.]*Test" /></patterns>
|
||||
</configuration>
|
||||
<configuration default="false" name="Module spatial-extras" type="JUnit" factoryName="JUnit">
|
||||
<module name="spatial-extras" />
|
||||
<option name="TEST_OBJECT" value="pattern" />
|
||||
<option name="WORKING_DIRECTORY" value="file://$PROJECT_DIR$/idea-build/lucene/spatial-extras" />
|
||||
<option name="VM_PARAMETERS" value="-ea -DtempDir=temp" />
|
||||
<option name="TEST_SEARCH_SCOPE"><value defaultName="singleModule" /></option>
|
||||
<patterns><pattern testClass=".*\.Test[^.]*|.*\.[^.]*Test" /></patterns>
|
||||
</configuration>
|
||||
<configuration default="false" name="Module spatial3d" type="JUnit" factoryName="JUnit">
|
||||
<module name="spatial3d" />
|
||||
<option name="TEST_OBJECT" value="pattern" />
|
||||
|
@ -333,7 +341,7 @@
|
|||
<patterns><pattern testClass=".*\.Test[^.]*|.*\.[^.]*Test" /></patterns>
|
||||
</configuration>
|
||||
|
||||
<list size="40">
|
||||
<list size="41">
|
||||
<item index="0" class="java.lang.String" itemvalue="JUnit.Lucene core" />
|
||||
<item index="1" class="java.lang.String" itemvalue="JUnit.Module analyzers-common" />
|
||||
<item index="2" class="java.lang.String" itemvalue="JUnit.Module analyzers-icu" />
|
||||
|
@ -359,21 +367,22 @@
|
|||
<item index="22" class="java.lang.String" itemvalue="JUnit.Module replicator" />
|
||||
<item index="23" class="java.lang.String" itemvalue="JUnit.Module sandbox" />
|
||||
<item index="24" class="java.lang.String" itemvalue="JUnit.Module spatial" />
|
||||
<item index="25" class="java.lang.String" itemvalue="JUnit.Module spatial3d" />
|
||||
<item index="26" class="java.lang.String" itemvalue="JUnit.Module suggest" />
|
||||
<item index="27" class="java.lang.String" itemvalue="JUnit.Solr core" />
|
||||
<item index="28" class="java.lang.String" itemvalue="JUnit.Solr analysis-extras contrib" />
|
||||
<item index="29" class="java.lang.String" itemvalue="JUnit.Solr clustering contrib" />
|
||||
<item index="30" class="java.lang.String" itemvalue="JUnit.Solr dataimporthandler contrib" />
|
||||
<item index="31" class="java.lang.String" itemvalue="JUnit.Solr dataimporthandler-extras contrib" />
|
||||
<item index="32" class="java.lang.String" itemvalue="JUnit.Solr extraction contrib" />
|
||||
<item index="33" class="java.lang.String" itemvalue="JUnit.Solr map-reduce contrib" />
|
||||
<item index="34" class="java.lang.String" itemvalue="JUnit.Solr morphlines-cell contrib" />
|
||||
<item index="35" class="java.lang.String" itemvalue="JUnit.Solr morphlines-core contrib" />
|
||||
<item index="36" class="java.lang.String" itemvalue="JUnit.Solr langid contrib" />
|
||||
<item index="37" class="java.lang.String" itemvalue="JUnit.Solr uima contrib" />
|
||||
<item index="38" class="java.lang.String" itemvalue="JUnit.Solr velocity contrib" />
|
||||
<item index="39" class="java.lang.String" itemvalue="JUnit.Solrj" />
|
||||
<item index="25" class="java.lang.String" itemvalue="JUnit.Module spatial-extras" />
|
||||
<item index="26" class="java.lang.String" itemvalue="JUnit.Module spatial3d" />
|
||||
<item index="27" class="java.lang.String" itemvalue="JUnit.Module suggest" />
|
||||
<item index="28" class="java.lang.String" itemvalue="JUnit.Solr core" />
|
||||
<item index="29" class="java.lang.String" itemvalue="JUnit.Solr analysis-extras contrib" />
|
||||
<item index="30" class="java.lang.String" itemvalue="JUnit.Solr clustering contrib" />
|
||||
<item index="31" class="java.lang.String" itemvalue="JUnit.Solr dataimporthandler contrib" />
|
||||
<item index="32" class="java.lang.String" itemvalue="JUnit.Solr dataimporthandler-extras contrib" />
|
||||
<item index="33" class="java.lang.String" itemvalue="JUnit.Solr extraction contrib" />
|
||||
<item index="34" class="java.lang.String" itemvalue="JUnit.Solr map-reduce contrib" />
|
||||
<item index="35" class="java.lang.String" itemvalue="JUnit.Solr morphlines-cell contrib" />
|
||||
<item index="36" class="java.lang.String" itemvalue="JUnit.Solr morphlines-core contrib" />
|
||||
<item index="37" class="java.lang.String" itemvalue="JUnit.Solr langid contrib" />
|
||||
<item index="38" class="java.lang.String" itemvalue="JUnit.Solr uima contrib" />
|
||||
<item index="39" class="java.lang.String" itemvalue="JUnit.Solr velocity contrib" />
|
||||
<item index="40" class="java.lang.String" itemvalue="JUnit.Solrj" />
|
||||
</list>
|
||||
</component>
|
||||
</project>
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
<orderEntry type="library" scope="TEST" name="JUnit" level="project" />
|
||||
<orderEntry type="module" scope="TEST" module-name="lucene-test-framework" />
|
||||
<orderEntry type="module" scope="TEST" module-name="benchmark-conf" />
|
||||
<orderEntry type="module" module-name="spatial" />
|
||||
<orderEntry type="module" module-name="spatial-extras" />
|
||||
<orderEntry type="module" module-name="facet" />
|
||||
<orderEntry type="module" module-name="highlighter" />
|
||||
<orderEntry type="module" module-name="icu" />
|
||||
|
|
|
@ -0,0 +1,32 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="false">
|
||||
<output url="file://$MODULE_DIR$/../../idea-build/lucene/spatial-extras/classes/java" />
|
||||
<output-test url="file://$MODULE_DIR$/../../idea-build/lucene/spatial-extras/classes/test" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/java" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test-files" type="java-test-resource" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module-library" exported="">
|
||||
<library>
|
||||
<CLASSES>
|
||||
<root url="file://$MODULE_DIR$/lib" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
<jarDirectory url="file://$MODULE_DIR$/lib" recursive="false" />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="library" scope="TEST" name="JUnit" level="project" />
|
||||
<orderEntry type="module" scope="TEST" module-name="lucene-test-framework" />
|
||||
<orderEntry type="module" module-name="lucene-core" />
|
||||
<orderEntry type="module" module-name="queries" />
|
||||
<orderEntry type="module" module-name="misc" />
|
||||
<orderEntry type="module" module-name="spatial3d" />
|
||||
<orderEntry type="module" module-name="analysis-common" scope="TEST"/>
|
||||
</component>
|
||||
</module>
|
|
@ -7,27 +7,12 @@
|
|||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/java" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test-files" type="java-test-resource" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="module-library" exported="">
|
||||
<library>
|
||||
<CLASSES>
|
||||
<root url="file://$MODULE_DIR$/lib" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
<jarDirectory url="file://$MODULE_DIR$/lib" recursive="false" />
|
||||
</library>
|
||||
</orderEntry>
|
||||
<orderEntry type="library" scope="TEST" name="JUnit" level="project" />
|
||||
<orderEntry type="module" scope="TEST" module-name="lucene-test-framework" />
|
||||
<orderEntry type="module" module-name="lucene-core" />
|
||||
<orderEntry type="module" module-name="queries" />
|
||||
<orderEntry type="module" module-name="misc" />
|
||||
<orderEntry type="module" module-name="spatial3d" />
|
||||
<orderEntry type="module" module-name="analysis-common" scope="TEST"/>
|
||||
</component>
|
||||
</module>
|
||||
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
<orderEntry type="library" name="Solr example library" level="project" />
|
||||
<orderEntry type="module" module-name="solrj" />
|
||||
<orderEntry type="module" module-name="kuromoji" />
|
||||
<orderEntry type="module" module-name="spatial" />
|
||||
<orderEntry type="module" module-name="spatial-extras" />
|
||||
<orderEntry type="module" module-name="grouping" />
|
||||
<orderEntry type="module" module-name="highlighter" />
|
||||
<orderEntry type="module" module-name="icu" />
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
<orderEntry type="module" scope="TEST" module-name="queryparser" />
|
||||
<orderEntry type="module" scope="TEST" module-name="queries" />
|
||||
<orderEntry type="module" scope="TEST" module-name="suggest" />
|
||||
<orderEntry type="module" scope="TEST" module-name="spatial" />
|
||||
<orderEntry type="module" scope="TEST" module-name="spatial-extras" />
|
||||
<orderEntry type="module" scope="TEST" module-name="misc" />
|
||||
<orderEntry type="module" scope="TEST" module-name="join" />
|
||||
<orderEntry type="module" scope="TEST" module-name="expressions" />
|
||||
|
|
|
@ -60,6 +60,7 @@
|
|||
<module>replicator</module>
|
||||
<module>sandbox</module>
|
||||
<module>spatial</module>
|
||||
<module>spatial-extras</module>
|
||||
<module>spatial3d</module>
|
||||
<module>suggest</module>
|
||||
</modules>
|
||||
|
|
|
@ -0,0 +1,62 @@
|
|||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||
<!--
|
||||
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.
|
||||
-->
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>org.apache.lucene</groupId>
|
||||
<artifactId>lucene-parent</artifactId>
|
||||
<version>@version@</version>
|
||||
<relativePath>../pom.xml</relativePath>
|
||||
</parent>
|
||||
<groupId>org.apache.lucene</groupId>
|
||||
<artifactId>lucene-spatial-extras</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<name>Lucene Spatial Extras</name>
|
||||
<description>
|
||||
Advanced Spatial Shape Strategies for Apache Lucene
|
||||
</description>
|
||||
<properties>
|
||||
<module-directory>lucene/spatial-extras</module-directory>
|
||||
<relative-top-level>../../..</relative-top-level>
|
||||
<module-path>${relative-top-level}/${module-directory}</module-path>
|
||||
</properties>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<!-- lucene-test-framework dependency must be declared before lucene-core -->
|
||||
<groupId>org.apache.lucene</groupId>
|
||||
<artifactId>lucene-test-framework</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
@lucene-spatial-extras.internal.dependencies@
|
||||
@lucene-spatial-extras.external.dependencies@
|
||||
@lucene-spatial-extras.internal.test.dependencies@
|
||||
@lucene-spatial-extras.external.test.dependencies@
|
||||
</dependencies>
|
||||
<build>
|
||||
<sourceDirectory>${module-path}/src/java</sourceDirectory>
|
||||
<testSourceDirectory>${module-path}/src/test</testSourceDirectory>
|
||||
<testResources>
|
||||
<testResource>
|
||||
<directory>${module-path}/src/test-files</directory>
|
||||
</testResource>
|
||||
</testResources>
|
||||
</build>
|
||||
</project>
|
|
@ -31,7 +31,7 @@
|
|||
<packaging>jar</packaging>
|
||||
<name>Lucene Spatial</name>
|
||||
<description>
|
||||
Spatial Strategies for Apache Lucene
|
||||
Geospatial Indexing and Query for Apache Lucene
|
||||
</description>
|
||||
<properties>
|
||||
<module-directory>lucene/spatial</module-directory>
|
||||
|
|
|
@ -643,7 +643,7 @@ def verifyUnpacked(java, project, artifact, unpackPath, gitRevision, version, te
|
|||
|
||||
if project == 'lucene':
|
||||
# TODO: clean this up to not be a list of modules that we must maintain
|
||||
extras = ('analysis', 'backward-codecs', 'benchmark', 'classification', 'codecs', 'core', 'demo', 'docs', 'expressions', 'facet', 'grouping', 'highlighter', 'join', 'memory', 'misc', 'queries', 'queryparser', 'replicator', 'sandbox', 'spatial', 'spatial3d', 'suggest', 'test-framework', 'licenses')
|
||||
extras = ('analysis', 'backward-codecs', 'benchmark', 'classification', 'codecs', 'core', 'demo', 'docs', 'expressions', 'facet', 'grouping', 'highlighter', 'join', 'memory', 'misc', 'queries', 'queryparser', 'replicator', 'sandbox', 'spatial', 'spatial-extras', 'spatial3d', 'suggest', 'test-framework', 'licenses')
|
||||
if isSrc:
|
||||
extras += ('build.xml', 'common-build.xml', 'module-build.xml', 'ivy-settings.xml', 'ivy-versions.properties', 'ivy-ignore-conflicts.properties', 'version.properties', 'tools', 'site')
|
||||
else:
|
||||
|
|
|
@ -171,7 +171,7 @@
|
|||
<pathelement path="${analyzers-common.jar}"/>
|
||||
<pathelement path="${queryparser.jar}"/>
|
||||
<pathelement path="${facet.jar}"/>
|
||||
<pathelement path="${spatial.jar}"/>
|
||||
<pathelement path="${spatial-extras.jar}"/>
|
||||
<pathelement path="${queries.jar}"/>
|
||||
<pathelement path="${codecs.jar}"/>
|
||||
<pathelement path="${join.jar}"/>
|
||||
|
@ -185,7 +185,7 @@
|
|||
</path>
|
||||
|
||||
<target name="javadocs" depends="javadocs-memory,javadocs-highlighter,javadocs-analyzers-common,
|
||||
javadocs-queryparser,javadocs-facet,javadocs-spatial,compile-core,check-javadocs-uptodate"
|
||||
javadocs-queryparser,javadocs-facet,javadocs-spatial-extras,compile-core,check-javadocs-uptodate"
|
||||
unless="javadocs-uptodate-${name}">
|
||||
<invoke-module-javadoc>
|
||||
<links>
|
||||
|
@ -194,7 +194,7 @@
|
|||
<link href="../analyzers-common"/>
|
||||
<link href="../queryparser"/>
|
||||
<link href="../facet"/>
|
||||
<link href="../spatial"/>
|
||||
<link href="../spatial-extras"/>
|
||||
</links>
|
||||
</invoke-module-javadoc>
|
||||
</target>
|
||||
|
@ -277,7 +277,7 @@
|
|||
<echo>Benchmark output in JIRA table format is in file: ${shingle.jira.output.file}</echo>
|
||||
</target>
|
||||
|
||||
<target name="init" depends="module-build.init,jar-memory,jar-highlighter,jar-analyzers-common,jar-queryparser,jar-facet,jar-spatial,jar-codecs,jar-join"/>
|
||||
<target name="init" depends="module-build.init,jar-memory,jar-highlighter,jar-analyzers-common,jar-queryparser,jar-facet,jar-spatial-extras,jar-codecs,jar-join"/>
|
||||
|
||||
<target name="compile-test" depends="copy-alg-files-for-testing,module-build.compile-test"/>
|
||||
<target name="copy-alg-files-for-testing" description="copy .alg files as resources for testing">
|
||||
|
|
|
@ -179,7 +179,8 @@
|
|||
<!-- queries: problems -->
|
||||
<!-- queryparser: problems -->
|
||||
<!-- sandbox: problems -->
|
||||
<!-- spatial: problems -->
|
||||
<check-missing-javadocs dir="build/docs/spatial" level="method"/>
|
||||
<!-- spatial-extras: problems -->
|
||||
<check-missing-javadocs dir="build/docs/suggest" level="method"/>
|
||||
<!-- test-framework: problems -->
|
||||
|
||||
|
|
|
@ -640,6 +640,28 @@
|
|||
<property name="spatial-javadocs.uptodate" value="true"/>
|
||||
</target>
|
||||
|
||||
<property name="spatial-extras.jar" value="${common.dir}/build/spatial-extras/lucene-spatial-extras-${version}.jar"/>
|
||||
<target name="check-spatial-extras-uptodate" unless="spatial-extras.uptodate">
|
||||
<module-uptodate name="spatial-extras" jarfile="${spatial-extras.jar}" property="spatial-extras.uptodate"/>
|
||||
</target>
|
||||
<target name="jar-spatial-extras" unless="spatial-extras.uptodate" depends="check-spatial-extras-uptodate">
|
||||
<ant dir="${common.dir}/spatial-extras" target="jar-core" inheritAll="false">
|
||||
<propertyset refid="uptodate.and.compiled.properties"/>
|
||||
</ant>
|
||||
<property name="spatial-extras.uptodate" value="true"/>
|
||||
</target>
|
||||
|
||||
<property name="spatial-extras-javadoc.jar" value="${common.dir}/build/spatial-extras/lucene-spatial-extras-${version}-javadoc.jar"/>
|
||||
<target name="check-spatial-extras-javadocs-uptodate" unless="spatial-extras-javadocs.uptodate">
|
||||
<module-uptodate name="spatial-extras" jarfile="${spatial-extras-javadoc.jar}" property="spatial-extras-javadocs.uptodate"/>
|
||||
</target>
|
||||
<target name="javadocs-spatial-extras" unless="spatial-extras-javadocs.uptodate" depends="check-spatial-extras-javadocs-uptodate">
|
||||
<ant dir="${common.dir}/spatial-extras" target="javadocs" inheritAll="false">
|
||||
<propertyset refid="uptodate.and.compiled.properties"/>
|
||||
</ant>
|
||||
<property name="spatial-extras-javadocs.uptodate" value="true"/>
|
||||
</target>
|
||||
|
||||
<property name="suggest.jar" value="${common.dir}/build/suggest/lucene-suggest-${version}.jar"/>
|
||||
<target name="check-suggest-uptodate" unless="suggest.uptodate">
|
||||
<module-uptodate name="suggest" jarfile="${suggest.jar}" property="suggest.uptodate"/>
|
||||
|
|
|
@ -0,0 +1,57 @@
|
|||
<?xml version="1.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.
|
||||
-->
|
||||
<project name="spatial-extras" default="default">
|
||||
<description>
|
||||
Geospatial search
|
||||
</description>
|
||||
|
||||
<import file="../module-build.xml"/>
|
||||
|
||||
<path id="spatialjar">
|
||||
<fileset dir="lib"/>
|
||||
</path>
|
||||
|
||||
<path id="classpath">
|
||||
<path refid="base.classpath"/>
|
||||
<path refid="spatialjar"/>
|
||||
<pathelement path="${queries.jar}" />
|
||||
<pathelement path="${misc.jar}" />
|
||||
<pathelement path="${spatial3d.jar}" />
|
||||
</path>
|
||||
|
||||
<path id="test.classpath">
|
||||
<path refid="test.base.classpath" />
|
||||
<path refid="spatialjar"/>
|
||||
<pathelement path="src/test-files" />
|
||||
</path>
|
||||
|
||||
<target name="compile-core" depends="jar-queries,jar-misc,jar-spatial3d,common.compile-core" />
|
||||
|
||||
<target name="javadocs" depends="javadocs-queries,javadocs-misc,javadocs-spatial3d,compile-core,check-javadocs-uptodate"
|
||||
unless="javadocs-uptodate-${name}">
|
||||
<invoke-module-javadoc>
|
||||
<links>
|
||||
<link href="../queries"/>
|
||||
<link href="../misc"/>
|
||||
<link href="../spatial3d"/>
|
||||
</links>
|
||||
</invoke-module-javadoc>
|
||||
</target>
|
||||
</project>
|
|
@ -0,0 +1,36 @@
|
|||
<!--
|
||||
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.
|
||||
-->
|
||||
<ivy-module version="2.0" xmlns:maven="http://ant.apache.org/ivy/maven">
|
||||
<info organisation="org.apache.lucene" module="spatial-extras"/>
|
||||
<configurations defaultconfmapping="compile->master;test->master">
|
||||
<conf name="compile" transitive="false"/>
|
||||
<conf name="test" transitive="false"/>
|
||||
</configurations>
|
||||
<dependencies>
|
||||
<dependency org="com.spatial4j" name="spatial4j" rev="${/com.spatial4j/spatial4j}" conf="compile"/>
|
||||
|
||||
<dependency org="com.spatial4j" name="spatial4j" rev="${/com.spatial4j/spatial4j}" conf="test">
|
||||
<artifact name="spatial4j" type="test" ext="jar" maven:classifier="tests" />
|
||||
</dependency>
|
||||
|
||||
<dependency org="org.slf4j" name="slf4j-api" rev="${/org.slf4j/slf4j-api}" conf="test"/>
|
||||
|
||||
<exclude org="*" ext="*" matcher="regexp" type="${ivy.exclude.types}"/>
|
||||
</dependencies>
|
||||
</ivy-module>
|
|
@ -586,6 +586,3 @@ public class BBoxStrategy extends SpatialStrategy {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -14,8 +14,8 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/**
|
||||
|
||||
/**
|
||||
* Bounding Box Spatial Strategy
|
||||
* <p>
|
||||
* Index a shape extent using 4 numeric fields and a flag to say if it crosses the dateline
|
|
@ -30,7 +30,6 @@ import org.apache.lucene.search.Query;
|
|||
import org.apache.lucene.search.Scorer;
|
||||
import org.apache.lucene.search.TwoPhaseIterator;
|
||||
import org.apache.lucene.search.Weight;
|
||||
import org.apache.lucene.util.Bits;
|
||||
|
||||
/**
|
||||
* A Query that considers an "indexQuery" to have approximate results, and a follow-on
|
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Lucene advanced spatial search
|
||||
*/
|
||||
package org.apache.lucene.spatial;
|
|
@ -115,7 +115,7 @@ public class PrefixTreeFacetCounter {
|
|||
//AbstractVisitingPrefixTreeFilter is a Lucene Filter. We don't need a filter; we use it for its great prefix-tree
|
||||
// traversal code. TODO consider refactoring if/when it makes sense (more use cases than this)
|
||||
new AbstractVisitingPrefixTreeQuery(queryShape, strategy.getFieldName(), tree, facetLevel, scanLevel) {
|
||||
|
||||
|
||||
@Override
|
||||
public String toString(String field) {
|
||||
return "anonPrefixTreeQuery";//un-used
|
|
@ -190,7 +190,3 @@ public class RecursivePrefixTreeStrategy extends PrefixTreeStrategy {
|
|||
throw new UnsupportedSpatialOperation(op);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
|
@ -31,7 +31,6 @@ import org.apache.lucene.spatial.prefix.tree.Cell;
|
|||
import org.apache.lucene.spatial.prefix.tree.CellIterator;
|
||||
import org.apache.lucene.spatial.prefix.tree.SpatialPrefixTree;
|
||||
import org.apache.lucene.util.BitDocIdSet;
|
||||
import org.apache.lucene.util.Bits;
|
||||
import org.apache.lucene.util.FixedBitSet;
|
||||
|
||||
/**
|
||||
|
@ -89,7 +88,7 @@ public class WithinPrefixTreeQuery extends AbstractVisitingPrefixTreeQuery {
|
|||
result = 31 * result + (bufferedQueryShape != null ? bufferedQueryShape.hashCode() : 0);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public String toString(String field) {
|
||||
return getClass().getSimpleName() + "(" +
|
|
@ -14,8 +14,8 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/**
|
||||
|
||||
/**
|
||||
* Prefix Tree Strategy.
|
||||
*/
|
||||
package org.apache.lucene.spatial.prefix;
|
|
@ -14,8 +14,8 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/**
|
||||
|
||||
/**
|
||||
* This package is about SpatialPrefixTree and any supporting classes.
|
||||
* A SpatialPrefixTree supports spatial indexing by index-time tokens
|
||||
* where adding characters to a string gives greater resolution.
|
|
@ -14,8 +14,8 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/**
|
||||
|
||||
/**
|
||||
* Spatial Query options useful for client side requests
|
||||
*/
|
||||
package org.apache.lucene.spatial.query;
|
|
@ -171,7 +171,7 @@ public class SerializedDVStrategy extends SpatialStrategy {
|
|||
public int hashCode() {
|
||||
return super.hashCode() + 31 * predicateValueSource.hashCode();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public String toString(String field) {
|
||||
return "PredicateValueSourceQuery(" +
|
|
@ -14,8 +14,8 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/**
|
||||
|
||||
/**
|
||||
* Strategies that serialize the shape (non-indexed).
|
||||
*/
|
||||
package org.apache.lucene.spatial.serialized;
|
|
@ -50,7 +50,7 @@ public class Geo3dShape implements Shape {
|
|||
public Geo3dShape(final GeoShape shape, final SpatialContext ctx) {
|
||||
this(PlanetModel.SPHERE, shape, ctx);
|
||||
}
|
||||
|
||||
|
||||
public Geo3dShape(final PlanetModel planetModel, final GeoShape shape, final SpatialContext ctx) {
|
||||
if (!ctx.isGeo()) {
|
||||
throw new IllegalArgumentException("SpatialContext.isGeo() must be true");
|
||||
|
@ -106,7 +106,7 @@ public class Geo3dShape implements Shape {
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public Rectangle getBoundingBox() {
|
||||
Rectangle bbox = this.boundingBox;//volatile read once
|
|
@ -0,0 +1,21 @@
|
|||
/*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
/**
|
||||
* Advanced spatial utilities.
|
||||
*/
|
||||
package org.apache.lucene.spatial.util;
|
|
@ -176,7 +176,3 @@ public class PointVectorStrategy extends SpatialStrategy {
|
|||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
|
@ -14,8 +14,8 @@
|
|||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
/**
|
||||
|
||||
/**
|
||||
* Spatial strategy that uses two fields.
|
||||
*/
|
||||
package org.apache.lucene.spatial.vector;
|
|
@ -0,0 +1,67 @@
|
|||
<!--
|
||||
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.
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<title>Apache Lucene Spatial-Extras Module</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<h1>The Spatial-Extras Module for Apache Lucene</h1>
|
||||
|
||||
<p>
|
||||
The spatial-extras module, new to Lucene 6.5, is the new home for the original
|
||||
lucene <a href="../spatial/overview-summary.html">spatial</a> module.
|
||||
The principle interface to this module is a {@link org.apache.lucene.spatial.SpatialStrategy}
|
||||
which encapsulates an approach to indexing and searching
|
||||
based on shapes. Different Strategies have different features and
|
||||
performance profiles, which are documented at each Strategy implementation
|
||||
class level.
|
||||
</p>
|
||||
<p>
|
||||
For some sample code showing how to use the API, see
|
||||
SpatialExample.java in the tests.
|
||||
</p>
|
||||
<p>
|
||||
The spatial-extras module uses
|
||||
<a href="https://github.com/spatial4j/spatial4j">Spatial4j</a>
|
||||
heavily. Spatial4j is an ASL licensed library with these capabilities:
|
||||
<ul>
|
||||
<li>Provides shape implementations, namely point, rectangle,
|
||||
and circle. Both geospatial contexts and plain 2D Euclidean/Cartesian contexts
|
||||
are supported.
|
||||
With an additional dependency, it adds polygon and other geometry shape
|
||||
support via integration with
|
||||
<a href="http://sourceforge.net/projects/jts-topo-suite/">JTS Topology Suite</a>.
|
||||
This includes dateline wrap support.</li>
|
||||
<li>Shape parsing and serialization, including
|
||||
<a href="http://en.wikipedia.org/wiki/Well-known_text">Well-Known Text (WKT)</a>
|
||||
(via JTS).</li>
|
||||
<li>Distance and other spatial related math calculations.</li>
|
||||
</ul>
|
||||
</p>
|
||||
<p>
|
||||
Historical note: The new spatial-extras module was once known as
|
||||
Lucene Spatial Playground (LSP) as an external project. In ~March 2012, LSP
|
||||
split into the spatial module as part of Lucene and Spatial4j externally. A
|
||||
large chunk of the LSP implementation originated as SOLR-2155 which uses
|
||||
trie/prefix-tree algorithms with a geohash encoding. That approach is
|
||||
implemented in {@link org.apache.lucene.spatial.prefix.RecursivePrefixTreeStrategy}
|
||||
today.
|
||||
</p>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,4 +1,4 @@
|
|||
#id name shape
|
||||
#id name shape
|
||||
FLK Falkland Is. ENVELOPE(-61.148055, -57.733200, -51.249455, -52.343055)
|
||||
GUF French Guiana ENVELOPE(-54.603782, -51.648055, 5.755418, 2.113473)
|
||||
GUY Guyana ENVELOPE(-61.389727, -56.470636, 8.535273, 1.186873)
|
File diff suppressed because one or more lines are too long
|
@ -1,5 +1,4 @@
|
|||
#id name shape
|
||||
#id name shape
|
||||
C5 CenterAt5 ENVELOPE(-5, 5, 5, -5)
|
||||
C10 CenterAt10 ENVELOPE(-10, 10, 10, -10)
|
||||
NW15 NorthWest ENVELOPE(15, 20, 20, 15)
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
#id name shape
|
||||
#id name shape
|
||||
HI Hawaii ENVELOPE(-160.242406, -154.791096, 22.229120, 18.921786)
|
||||
WA Washington ENVELOPE(-124.732769, -116.919132, 48.999931, 45.543092)
|
||||
MT Montana ENVELOPE(-116.063531, -104.043072, 49.000026, 44.353639)
|
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
|
@ -67,7 +67,7 @@ public abstract class SpatialTestCase extends LuceneTestCase {
|
|||
protected SpatialContext ctx;//subclass must initialize
|
||||
|
||||
protected Map<String,Type> uninvertMap = new HashMap<>();
|
||||
|
||||
|
||||
@Override
|
||||
public void setUp() throws Exception {
|
||||
super.setUp();
|
||||
|
@ -271,11 +271,10 @@ public abstract class SpatialTestCase extends LuceneTestCase {
|
|||
public String getId() {
|
||||
return document.get("id");
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "["+score+"="+document+"]";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue