From cc40f20544020c67c2fe3cb1d26d73af708392ac Mon Sep 17 00:00:00 2001 From: Simon Willnauer Date: Thu, 8 Oct 2015 12:33:14 +0200 Subject: [PATCH] Remove unnecessary Writeable implementation from GeoPoint GeoPoint now has native support in StreamOutput/StreamInput impementing Writable is not necessary. This also adds tests for XContentBuilder rendering GeoPoint --- .../elasticsearch/common/geo/GeoPoint.java | 28 +------------------ .../query/GeoBoundingBoxQueryBuilder.java | 8 +++--- .../index/query/GeoDistanceQueryBuilder.java | 4 +-- .../query/GeoDistanceRangeQueryBuilder.java | 4 +-- .../index/query/GeoPolygonQueryBuilder.java | 4 +-- .../builder/XContentBuilderTests.java | 13 +++++++++ 6 files changed, 24 insertions(+), 37 deletions(-) diff --git a/core/src/main/java/org/elasticsearch/common/geo/GeoPoint.java b/core/src/main/java/org/elasticsearch/common/geo/GeoPoint.java index c50b85a835c..0bc9455bea3 100644 --- a/core/src/main/java/org/elasticsearch/common/geo/GeoPoint.java +++ b/core/src/main/java/org/elasticsearch/common/geo/GeoPoint.java @@ -19,12 +19,6 @@ package org.elasticsearch.common.geo; -import org.elasticsearch.common.io.stream.StreamInput; -import org.elasticsearch.common.io.stream.StreamOutput; -import org.elasticsearch.common.io.stream.Writeable; - -import java.io.IOException; - import org.apache.lucene.util.BitUtil; import org.apache.lucene.util.XGeoHashUtils; import org.apache.lucene.util.XGeoUtils; @@ -32,15 +26,12 @@ import org.apache.lucene.util.XGeoUtils; /** * */ -public final class GeoPoint implements Writeable { +public final class GeoPoint { private double lat; private double lon; private final static double TOLERANCE = XGeoUtils.TOLERANCE; - // for serialization purposes - private static final GeoPoint PROTOTYPE = new GeoPoint(Double.NaN, Double.NaN); - public GeoPoint() { } @@ -179,21 +170,4 @@ public final class GeoPoint implements Writeable { public static GeoPoint fromIndexLong(long indexLong) { return new GeoPoint().resetFromIndexHash(indexLong); } - - @Override - public GeoPoint readFrom(StreamInput in) throws IOException { - double lat = in.readDouble(); - double lon = in.readDouble(); - return new GeoPoint(lat, lon); - } - - public static GeoPoint readGeoPointFrom(StreamInput in) throws IOException { - return PROTOTYPE.readFrom(in); - } - - @Override - public void writeTo(StreamOutput out) throws IOException { - out.writeDouble(lat); - out.writeDouble(lon); - } } diff --git a/core/src/main/java/org/elasticsearch/index/query/GeoBoundingBoxQueryBuilder.java b/core/src/main/java/org/elasticsearch/index/query/GeoBoundingBoxQueryBuilder.java index 4ad63ebc1fc..59d20cef611 100644 --- a/core/src/main/java/org/elasticsearch/index/query/GeoBoundingBoxQueryBuilder.java +++ b/core/src/main/java/org/elasticsearch/index/query/GeoBoundingBoxQueryBuilder.java @@ -314,8 +314,8 @@ public class GeoBoundingBoxQueryBuilder extends AbstractQueryBuilder shell = new ArrayList<>(); int size = in.readVInt(); for (int i = 0; i < size; i++) { - shell.add(GeoPoint.readGeoPointFrom(in)); + shell.add(in.readGeoPoint()); } GeoPolygonQueryBuilder builder = new GeoPolygonQueryBuilder(fieldName, shell); builder.validationMethod = GeoValidationMethod.readGeoValidationMethodFrom(in); @@ -176,7 +176,7 @@ public class GeoPolygonQueryBuilder extends AbstractQueryBuilder