Skip to content

Commit

Permalink
Merge pull request #11137 from jpountz/enhancement/geo_queries
Browse files Browse the repository at this point in the history
Query DSL: Make geo filters queries.
  • Loading branch information
jpountz committed May 13, 2015
2 parents 869baee + f22935b commit b64e54c
Show file tree
Hide file tree
Showing 13 changed files with 326 additions and 769 deletions.
216 changes: 0 additions & 216 deletions src/main/java/org/elasticsearch/common/lucene/docset/AndDocIdSet.java

This file was deleted.

Expand Up @@ -29,8 +29,8 @@
import org.elasticsearch.index.mapper.FieldMapper;
import org.elasticsearch.index.mapper.MapperService;
import org.elasticsearch.index.mapper.geo.GeoPointFieldMapper;
import org.elasticsearch.index.search.geo.InMemoryGeoBoundingBoxFilter;
import org.elasticsearch.index.search.geo.IndexedGeoBoundingBoxFilter;
import org.elasticsearch.index.search.geo.InMemoryGeoBoundingBoxQuery;
import org.elasticsearch.index.search.geo.IndexedGeoBoundingBoxQuery;

import java.io.IOException;

Expand Down Expand Up @@ -173,10 +173,10 @@ public Query parse(QueryParseContext parseContext) throws IOException, QueryPars

Query filter;
if ("indexed".equals(type)) {
filter = IndexedGeoBoundingBoxFilter.create(topLeft, bottomRight, geoMapper);
filter = IndexedGeoBoundingBoxQuery.create(topLeft, bottomRight, geoMapper);
} else if ("memory".equals(type)) {
IndexGeoPointFieldData indexFieldData = parseContext.getForField(mapper);
filter = new InMemoryGeoBoundingBoxFilter(topLeft, bottomRight, indexFieldData);
filter = new InMemoryGeoBoundingBoxQuery(topLeft, bottomRight, indexFieldData);
} else {
throw new QueryParsingException(parseContext, "geo bounding box type [" + type
+ "] not supported, either 'indexed' or 'memory' are allowed");
Expand Down
Expand Up @@ -31,7 +31,7 @@
import org.elasticsearch.index.mapper.FieldMapper;
import org.elasticsearch.index.mapper.MapperService;
import org.elasticsearch.index.mapper.geo.GeoPointFieldMapper;
import org.elasticsearch.index.search.geo.GeoDistanceFilter;
import org.elasticsearch.index.search.geo.GeoDistanceRangeQuery;

import java.io.IOException;

Expand Down Expand Up @@ -160,7 +160,7 @@ public Query parse(QueryParseContext parseContext) throws IOException, QueryPars


IndexGeoPointFieldData indexFieldData = parseContext.getForField(mapper);
Query query = new GeoDistanceFilter(point.lat(), point.lon(), distance, geoDistance, indexFieldData, geoMapper, optimizeBbox);
Query query = new GeoDistanceRangeQuery(point, null, distance, true, false, geoDistance, geoMapper, indexFieldData, optimizeBbox);
if (queryName != null) {
parseContext.addNamedQuery(queryName, query);
}
Expand Down
Expand Up @@ -31,7 +31,7 @@
import org.elasticsearch.index.mapper.FieldMapper;
import org.elasticsearch.index.mapper.MapperService;
import org.elasticsearch.index.mapper.geo.GeoPointFieldMapper;
import org.elasticsearch.index.search.geo.GeoDistanceRangeFilter;
import org.elasticsearch.index.search.geo.GeoDistanceRangeQuery;

import java.io.IOException;

Expand Down Expand Up @@ -199,7 +199,7 @@ public Query parse(QueryParseContext parseContext) throws IOException, QueryPars
GeoPointFieldMapper geoMapper = ((GeoPointFieldMapper) mapper);

IndexGeoPointFieldData indexFieldData = parseContext.getForField(mapper);
Query query = new GeoDistanceRangeFilter(point, from, to, includeLower, includeUpper, geoDistance, geoMapper, indexFieldData, optimizeBbox);
Query query = new GeoDistanceRangeQuery(point, from, to, includeLower, includeUpper, geoDistance, geoMapper, indexFieldData, optimizeBbox);
if (queryName != null) {
parseContext.addNamedQuery(queryName, query);
}
Expand Down
Expand Up @@ -31,7 +31,7 @@
import org.elasticsearch.index.mapper.FieldMapper;
import org.elasticsearch.index.mapper.MapperService;
import org.elasticsearch.index.mapper.geo.GeoPointFieldMapper;
import org.elasticsearch.index.search.geo.GeoPolygonFilter;
import org.elasticsearch.index.search.geo.GeoPolygonQuery;

import java.io.IOException;
import java.util.List;
Expand Down Expand Up @@ -147,7 +147,7 @@ public Query parse(QueryParseContext parseContext) throws IOException, QueryPars
}

IndexGeoPointFieldData indexFieldData = parseContext.getForField(mapper);
Query query = new GeoPolygonFilter(indexFieldData, shell.toArray(new GeoPoint[shell.size()]));
Query query = new GeoPolygonQuery(indexFieldData, shell.toArray(new GeoPoint[shell.size()]));
if (queryName != null) {
parseContext.addNamedQuery(queryName, query);
}
Expand Down

0 comments on commit b64e54c

Please sign in to comment.