From 0d745c4dc0dc3ed7e3f57554ac0533349f033b72 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christoph=20B=C3=BCscher?= Date: Thu, 10 Oct 2019 11:36:20 +0200 Subject: [PATCH] Add builder for distance_feature to QueryBuilders The QueryBuilders convenience class is currently missing a shortcut to construct a DistanceFeatureQueryBuilder, which is added here. Closes #47767 --- .../org/elasticsearch/index/query/QueryBuilders.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/server/src/main/java/org/elasticsearch/index/query/QueryBuilders.java b/server/src/main/java/org/elasticsearch/index/query/QueryBuilders.java index 3cd6641dbb38a..ce97a595c89b4 100644 --- a/server/src/main/java/org/elasticsearch/index/query/QueryBuilders.java +++ b/server/src/main/java/org/elasticsearch/index/query/QueryBuilders.java @@ -25,6 +25,7 @@ import org.elasticsearch.common.geo.ShapeRelation; import org.elasticsearch.common.geo.builders.ShapeBuilder; import org.elasticsearch.geometry.Geometry; +import org.elasticsearch.index.query.DistanceFeatureQueryBuilder.Origin; import org.elasticsearch.index.query.MoreLikeThisQueryBuilder.Item; import org.elasticsearch.index.query.functionscore.FunctionScoreQueryBuilder; import org.elasticsearch.index.query.functionscore.ScoreFunctionBuilder; @@ -100,6 +101,16 @@ public static DisMaxQueryBuilder disMaxQuery() { return new DisMaxQueryBuilder(); } + /** + * A query to boost scores based on their proximity to the given origin for date, date_nanos and geo_point field types. + * @param name The field name + * @param origin The origin of the distance calculation. Can be a long, string or {@link GeoPoint}, depending on field type. + * @param pivot The distance from the origin at which relevance scores receive half of the boost value. + */ + public static DistanceFeatureQueryBuilder distanceFeatureQuery(String name, Origin origin, String pivot) { + return new DistanceFeatureQueryBuilder(name, origin, pivot); + } + /** * Constructs a query that will match only specific ids within all types. */