diff options
author | Nik Everett <nik9000@gmail.com> | 2016-04-18 14:13:29 -0400 |
---|---|---|
committer | Nik Everett <nik9000@gmail.com> | 2016-04-19 11:38:16 -0400 |
commit | c982216dbe63e8948c53a281cf43c282a313935c (patch) | |
tree | e1fe3adae011d76cf8d7a9a842f98075b158b14e /core/src/main/java/org/elasticsearch/search/aggregations/bucket/range | |
parent | 133cec602cf0943f66d28d1cb9ad8b7c7e3464f9 (diff) |
Remove PROTOTYPEs from Ranges
Relates to #17085
Diffstat (limited to 'core/src/main/java/org/elasticsearch/search/aggregations/bucket/range')
6 files changed, 42 insertions, 54 deletions
diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeAggregator.java b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeAggregator.java index 45bfefff2c..eeb37dfa99 100644 --- a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeAggregator.java +++ b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeAggregator.java @@ -58,8 +58,6 @@ public class RangeAggregator extends BucketsAggregator { public static final ParseField KEYED_FIELD = new ParseField("keyed"); public static class Range implements Writeable<Range>, ToXContent { - - public static final Range PROTOTYPE = new Range(null, null, null, null, null); public static final ParseField KEY_FIELD = new ParseField("key"); public static final ParseField FROM_FIELD = new ParseField("from"); public static final ParseField TO_FIELD = new ParseField("to"); @@ -78,6 +76,27 @@ public class RangeAggregator extends BucketsAggregator { this(key, null, from, null, to); } + /** + * Read from a stream. + */ + public Range(StreamInput in) throws IOException { + key = in.readOptionalString(); + fromAsStr = in.readOptionalString(); + toAsStr = in.readOptionalString(); + from = in.readDouble(); + to = in.readDouble(); + } + + @Override + public void writeTo(StreamOutput out) throws IOException { + out.writeOptionalString(key); + out.writeOptionalString(fromAsStr); + out.writeOptionalString(toAsStr); + out.writeDouble(from); + out.writeDouble(to); + } + + protected Range(String key, Double from, String fromAsStr, Double to, String toAsStr) { this.key = key; this.from = from == null ? Double.NEGATIVE_INFINITY : from; @@ -108,27 +127,7 @@ public class RangeAggregator extends BucketsAggregator { return new Range(key, from, fromAsStr, to, toAsStr); } - @Override - public Range readFrom(StreamInput in) throws IOException { - String key = in.readOptionalString(); - String fromAsStr = in.readOptionalString(); - String toAsStr = in.readOptionalString(); - double from = in.readDouble(); - double to = in.readDouble(); - return new Range(key, from, fromAsStr, to, toAsStr); - } - - @Override - public void writeTo(StreamOutput out) throws IOException { - out.writeOptionalString(key); - out.writeOptionalString(fromAsStr); - out.writeOptionalString(toAsStr); - out.writeDouble(from); - out.writeDouble(to); - } - - public Range fromXContent(XContentParser parser, ParseFieldMatcher parseFieldMatcher) throws IOException { - + public static Range fromXContent(XContentParser parser, ParseFieldMatcher parseFieldMatcher) throws IOException { XContentParser.Token token; String currentFieldName = null; double from = Double.NEGATIVE_INFINITY; diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeAggregatorBuilder.java b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeAggregatorBuilder.java index 5241243e3a..8347625b09 100644 --- a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeAggregatorBuilder.java +++ b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeAggregatorBuilder.java @@ -42,7 +42,7 @@ public class RangeAggregatorBuilder extends AbstractRangeBuilder<RangeAggregator * Read from a stream. */ public RangeAggregatorBuilder(StreamInput in) throws IOException { - super(in, InternalRange.FACTORY, Range.PROTOTYPE::readFrom); + super(in, InternalRange.FACTORY, Range::new); } /** diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeParser.java b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeParser.java index 841edba36a..8a441f2f3a 100644 --- a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeParser.java +++ b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/RangeParser.java @@ -88,6 +88,6 @@ public class RangeParser extends NumericValuesSourceParser { } protected Range parseRange(XContentParser parser, ParseFieldMatcher parseFieldMatcher) throws IOException { - return Range.PROTOTYPE.fromXContent(parser, parseFieldMatcher); + return Range.fromXContent(parser, parseFieldMatcher); } } diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/date/DateRangeAggregatorBuilder.java b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/date/DateRangeAggregatorBuilder.java index 94fdeb7bf4..9c28461df6 100644 --- a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/date/DateRangeAggregatorBuilder.java +++ b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/date/DateRangeAggregatorBuilder.java @@ -45,7 +45,7 @@ public class DateRangeAggregatorBuilder extends AbstractRangeBuilder<DateRangeAg * Read from a stream. */ public DateRangeAggregatorBuilder(StreamInput in) throws IOException { - super(in, InternalDateRange.FACTORY, Range.PROTOTYPE::readFrom); + super(in, InternalDateRange.FACTORY, Range::new); } @Override diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/ipv4/IPv4RangeAggregatorBuilder.java b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/ipv4/IPv4RangeAggregatorBuilder.java index 80989d5930..6bafa6d566 100644 --- a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/ipv4/IPv4RangeAggregatorBuilder.java +++ b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/ipv4/IPv4RangeAggregatorBuilder.java @@ -51,7 +51,7 @@ public class IPv4RangeAggregatorBuilder extends AbstractRangeBuilder<IPv4RangeAg * Read from a stream. */ public IPv4RangeAggregatorBuilder(StreamInput in) throws IOException { - super(in, InternalIPv4Range.FACTORY, Range.PROTOTYPE::readFrom); + super(in, InternalIPv4Range.FACTORY, Range::new); } @Override @@ -140,8 +140,6 @@ public class IPv4RangeAggregatorBuilder extends AbstractRangeBuilder<IPv4RangeAg } public static class Range extends RangeAggregator.Range { - - static final Range PROTOTYPE = new Range(null, null, null, null, null, null); static final ParseField MASK_FIELD = new ParseField("mask"); private final String cidr; @@ -163,6 +161,20 @@ public class IPv4RangeAggregatorBuilder extends AbstractRangeBuilder<IPv4RangeAg this.cidr = cidr; } + /** + * Read from a stream. + */ + public Range(StreamInput in) throws IOException { + super(in); + cidr = in.readOptionalString(); + } + + @Override + public void writeTo(StreamOutput out) throws IOException { + super.writeTo(out); + out.writeOptionalString(cidr); + } + public String mask() { return cidr; } @@ -190,9 +202,7 @@ public class IPv4RangeAggregatorBuilder extends AbstractRangeBuilder<IPv4RangeAg return new Range(key, from, to); } - @Override - public Range fromXContent(XContentParser parser, ParseFieldMatcher parseFieldMatcher) throws IOException { - + public static Range fromXContent(XContentParser parser, ParseFieldMatcher parseFieldMatcher) throws IOException { XContentParser.Token token; String currentFieldName = null; double from = Double.NEGATIVE_INFINITY; @@ -252,27 +262,6 @@ public class IPv4RangeAggregatorBuilder extends AbstractRangeBuilder<IPv4RangeAg } @Override - public Range readFrom(StreamInput in) throws IOException { - String key = in.readOptionalString(); - String fromAsStr = in.readOptionalString(); - String toAsStr = in.readOptionalString(); - double from = in.readDouble(); - double to = in.readDouble(); - String mask = in.readOptionalString(); - return new Range(key, from, fromAsStr, to, toAsStr, mask); - } - - @Override - public void writeTo(StreamOutput out) throws IOException { - out.writeOptionalString(key); - out.writeOptionalString(fromAsStr); - out.writeOptionalString(toAsStr); - out.writeDouble(from); - out.writeDouble(to); - out.writeOptionalString(cidr); - } - - @Override public int hashCode() { return Objects.hash(super.hashCode(), cidr); } diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/ipv4/IpRangeParser.java b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/ipv4/IpRangeParser.java index 1f6fea5553..901300c3bf 100644 --- a/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/ipv4/IpRangeParser.java +++ b/core/src/main/java/org/elasticsearch/search/aggregations/bucket/range/ipv4/IpRangeParser.java @@ -42,7 +42,7 @@ public class IpRangeParser extends RangeParser { @Override protected Range parseRange(XContentParser parser, ParseFieldMatcher parseFieldMatcher) throws IOException { - return IPv4RangeAggregatorBuilder.Range.PROTOTYPE.fromXContent(parser, parseFieldMatcher); + return IPv4RangeAggregatorBuilder.Range.fromXContent(parser, parseFieldMatcher); } @Override |