diff options
author | Christoph Büscher <christoph@elastic.co> | 2017-07-03 17:30:40 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-07-03 17:30:40 +0200 |
commit | f576c987ce2615f77a8de75741b0f5448229805f (patch) | |
tree | 11f9e39ce1ad847b65c8c423d99d7c46d8fd7cca /core/src/main/java/org/elasticsearch/search/aggregations/bucket/range | |
parent | 0e2cfc66bb8ad091d3cf5ade2833f9688af1240c (diff) |
Remove QueryParseContext (#25486)
QueryParseContext is currently only used as a wrapper for an XContentParser, so
this change removes it entirely and changes the appropriate APIs that use it so
far to only accept a parser instead.
Diffstat (limited to 'core/src/main/java/org/elasticsearch/search/aggregations/bucket/range')
4 files changed, 21 insertions, 25 deletions
diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeAggregationBuilder.java b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeAggregationBuilder.java index 105dbbc545..aaa2b857ec 100644 --- a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeAggregationBuilder.java +++ b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeAggregationBuilder.java @@ -22,7 +22,6 @@ package org.elasticsearch.search.aggregations.bucket.range; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.xcontent.ObjectParser; import org.elasticsearch.common.xcontent.XContentParser; -import org.elasticsearch.index.query.QueryParseContext; import org.elasticsearch.search.aggregations.AggregationBuilder; import org.elasticsearch.search.aggregations.AggregatorFactories.Builder; import org.elasticsearch.search.aggregations.AggregatorFactory; @@ -37,7 +36,7 @@ import java.io.IOException; public class RangeAggregationBuilder extends AbstractRangeBuilder<RangeAggregationBuilder, Range> { public static final String NAME = "range"; - private static final ObjectParser<RangeAggregationBuilder, QueryParseContext> PARSER; + private static final ObjectParser<RangeAggregationBuilder, Void> PARSER; static { PARSER = new ObjectParser<>(RangeAggregationBuilder.NAME); ValuesSourceParserHelper.declareNumericFields(PARSER, true, true, false); @@ -47,14 +46,14 @@ public class RangeAggregationBuilder extends AbstractRangeBuilder<RangeAggregati for (Range range : ranges) { agg.addRange(range); } - }, RangeAggregationBuilder::parseRange, RangeAggregator.RANGES_FIELD); + }, (p, c) -> RangeAggregationBuilder.parseRange(p), RangeAggregator.RANGES_FIELD); } - public static AggregationBuilder parse(String aggregationName, QueryParseContext context) throws IOException { - return PARSER.parse(context.parser(), new RangeAggregationBuilder(aggregationName), context); + public static AggregationBuilder parse(String aggregationName, XContentParser parser) throws IOException { + return PARSER.parse(parser, new RangeAggregationBuilder(aggregationName), null); } - private static Range parseRange(XContentParser parser, QueryParseContext context) throws IOException { + private static Range parseRange(XContentParser parser) throws IOException { return Range.fromXContent(parser); } diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/date/DateRangeAggregationBuilder.java b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/date/DateRangeAggregationBuilder.java index 2c686fbb97..10612fd5e2 100644 --- a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/date/DateRangeAggregationBuilder.java +++ b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/date/DateRangeAggregationBuilder.java @@ -22,7 +22,6 @@ package org.elasticsearch.search.aggregations.bucket.range.date; import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.xcontent.ObjectParser; import org.elasticsearch.common.xcontent.XContentParser; -import org.elasticsearch.index.query.QueryParseContext; import org.elasticsearch.search.aggregations.AggregationBuilder; import org.elasticsearch.search.aggregations.AggregatorFactories.Builder; import org.elasticsearch.search.aggregations.AggregatorFactory; @@ -40,7 +39,7 @@ import java.io.IOException; public class DateRangeAggregationBuilder extends AbstractRangeBuilder<DateRangeAggregationBuilder, RangeAggregator.Range> { public static final String NAME = "date_range"; - private static final ObjectParser<DateRangeAggregationBuilder, QueryParseContext> PARSER; + private static final ObjectParser<DateRangeAggregationBuilder, Void> PARSER; static { PARSER = new ObjectParser<>(DateRangeAggregationBuilder.NAME); ValuesSourceParserHelper.declareNumericFields(PARSER, true, true, true); @@ -50,14 +49,14 @@ public class DateRangeAggregationBuilder extends AbstractRangeBuilder<DateRangeA for (Range range : ranges) { agg.addRange(range); } - }, DateRangeAggregationBuilder::parseRange, RangeAggregator.RANGES_FIELD); + }, (p, c) -> DateRangeAggregationBuilder.parseRange(p), RangeAggregator.RANGES_FIELD); } - public static AggregationBuilder parse(String aggregationName, QueryParseContext context) throws IOException { - return PARSER.parse(context.parser(), new DateRangeAggregationBuilder(aggregationName), context); + public static AggregationBuilder parse(String aggregationName, XContentParser parser) throws IOException { + return PARSER.parse(parser, new DateRangeAggregationBuilder(aggregationName), null); } - private static Range parseRange(XContentParser parser, QueryParseContext context) throws IOException { + private static Range parseRange(XContentParser parser) throws IOException { return Range.fromXContent(parser); } diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/geodistance/GeoDistanceAggregationBuilder.java b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/geodistance/GeoDistanceAggregationBuilder.java index 1484fae8d4..99faf543c2 100644 --- a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/geodistance/GeoDistanceAggregationBuilder.java +++ b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/geodistance/GeoDistanceAggregationBuilder.java @@ -30,7 +30,6 @@ import org.elasticsearch.common.xcontent.ObjectParser; import org.elasticsearch.common.xcontent.XContentBuilder; import org.elasticsearch.common.xcontent.XContentParser; import org.elasticsearch.common.xcontent.XContentParser.Token; -import org.elasticsearch.index.query.QueryParseContext; import org.elasticsearch.search.aggregations.AggregationBuilder; import org.elasticsearch.search.aggregations.AggregatorFactories.Builder; import org.elasticsearch.search.aggregations.AggregatorFactory; @@ -54,7 +53,7 @@ public class GeoDistanceAggregationBuilder extends ValuesSourceAggregationBuilde static final ParseField UNIT_FIELD = new ParseField("unit"); static final ParseField DISTANCE_TYPE_FIELD = new ParseField("distance_type"); - private static final ObjectParser<GeoDistanceAggregationBuilder, QueryParseContext> PARSER; + private static final ObjectParser<GeoDistanceAggregationBuilder, Void> PARSER; static { PARSER = new ObjectParser<>(GeoDistanceAggregationBuilder.NAME); ValuesSourceParserHelper.declareGeoFields(PARSER, true, false); @@ -65,7 +64,7 @@ public class GeoDistanceAggregationBuilder extends ValuesSourceAggregationBuilde for (Range range : ranges) { agg.addRange(range); } - }, GeoDistanceAggregationBuilder::parseRange, RangeAggregator.RANGES_FIELD); + }, (p, c) -> GeoDistanceAggregationBuilder.parseRange(p), RangeAggregator.RANGES_FIELD); PARSER.declareField(GeoDistanceAggregationBuilder::unit, p -> DistanceUnit.fromString(p.text()), UNIT_FIELD, ObjectParser.ValueType.STRING); @@ -77,8 +76,8 @@ public class GeoDistanceAggregationBuilder extends ValuesSourceAggregationBuilde ORIGIN_FIELD, ObjectParser.ValueType.OBJECT_ARRAY_OR_STRING); } - public static AggregationBuilder parse(String aggregationName, QueryParseContext context) throws IOException { - GeoDistanceAggregationBuilder builder = PARSER.parse(context.parser(), new GeoDistanceAggregationBuilder(aggregationName), context); + public static AggregationBuilder parse(String aggregationName, XContentParser parser) throws IOException { + GeoDistanceAggregationBuilder builder = PARSER.parse(parser, new GeoDistanceAggregationBuilder(aggregationName), null); if (builder.origin() == null) { throw new IllegalArgumentException("Aggregation [" + aggregationName + "] must define an [origin]."); } @@ -116,7 +115,7 @@ public class GeoDistanceAggregationBuilder extends ValuesSourceAggregationBuilde } } - private static GeoPoint parseGeoPoint(XContentParser parser, QueryParseContext context) throws IOException { + private static GeoPoint parseGeoPoint(XContentParser parser) throws IOException { Token token = parser.currentToken(); if (token == XContentParser.Token.VALUE_STRING) { GeoPoint point = new GeoPoint(); @@ -164,7 +163,7 @@ public class GeoDistanceAggregationBuilder extends ValuesSourceAggregationBuilde throw new IllegalArgumentException("Unexpected token [" + token + "] while parsing geo point"); } - private static Range parseRange(XContentParser parser, QueryParseContext context) throws IOException { + private static Range parseRange(XContentParser parser) throws IOException { String fromAsStr = null; String toAsStr = null; double from = 0.0; diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/ip/IpRangeAggregationBuilder.java b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/ip/IpRangeAggregationBuilder.java index c530ecbfa9..99cc79f666 100644 --- a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/ip/IpRangeAggregationBuilder.java +++ b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/ip/IpRangeAggregationBuilder.java @@ -30,7 +30,6 @@ import org.elasticsearch.common.xcontent.ToXContent; import org.elasticsearch.common.xcontent.XContentBuilder; import org.elasticsearch.common.xcontent.XContentParser; import org.elasticsearch.common.xcontent.XContentParser.Token; -import org.elasticsearch.index.query.QueryParseContext; import org.elasticsearch.script.Script; import org.elasticsearch.search.aggregations.AggregationBuilder; import org.elasticsearch.search.aggregations.AggregatorFactories.Builder; @@ -61,7 +60,7 @@ public final class IpRangeAggregationBuilder public static final String NAME = "ip_range"; private static final ParseField MASK_FIELD = new ParseField("mask"); - private static final ObjectParser<IpRangeAggregationBuilder, QueryParseContext> PARSER; + private static final ObjectParser<IpRangeAggregationBuilder, Void> PARSER; static { PARSER = new ObjectParser<>(IpRangeAggregationBuilder.NAME); ValuesSourceParserHelper.declareBytesFields(PARSER, false, false); @@ -70,14 +69,14 @@ public final class IpRangeAggregationBuilder PARSER.declareObjectArray((agg, ranges) -> { for (Range range : ranges) agg.addRange(range); - }, IpRangeAggregationBuilder::parseRange, RangeAggregator.RANGES_FIELD); + }, (p, c) -> IpRangeAggregationBuilder.parseRange(p), RangeAggregator.RANGES_FIELD); } - public static AggregationBuilder parse(String aggregationName, QueryParseContext context) throws IOException { - return PARSER.parse(context.parser(), new IpRangeAggregationBuilder(aggregationName), context); + public static AggregationBuilder parse(String aggregationName, XContentParser parser) throws IOException { + return PARSER.parse(parser, new IpRangeAggregationBuilder(aggregationName), null); } - private static Range parseRange(XContentParser parser, QueryParseContext context) throws IOException { + private static Range parseRange(XContentParser parser) throws IOException { String key = null; String from = null; String to = null; |