diff --git a/src/main/java/org/springframework/data/elasticsearch/core/geo/GeoJson.java b/src/main/java/org/springframework/data/elasticsearch/core/geo/GeoJson.java index 20c312303..02494d190 100644 --- a/src/main/java/org/springframework/data/elasticsearch/core/geo/GeoJson.java +++ b/src/main/java/org/springframework/data/elasticsearch/core/geo/GeoJson.java @@ -21,7 +21,7 @@ /** * Interface definition for structures defined in GeoJSON - * format. copied from Spring Data Mongodb + * format. copied from Spring Data Mongodb * * @author Christoph Strobl * @since 1.7 diff --git a/src/main/java/org/springframework/data/elasticsearch/core/geo/GeoJsonLineString.java b/src/main/java/org/springframework/data/elasticsearch/core/geo/GeoJsonLineString.java index 5c848e90b..bea76baf6 100644 --- a/src/main/java/org/springframework/data/elasticsearch/core/geo/GeoJsonLineString.java +++ b/src/main/java/org/springframework/data/elasticsearch/core/geo/GeoJsonLineString.java @@ -69,7 +69,7 @@ public static GeoJsonLineString of(Point first, Point second, Point... others) { Assert.notNull(second, "Second point must not be null!"); Assert.notNull(others, "Additional points must not be null!"); - List points = new ArrayList<>(); + List points = new ArrayList<>(2 + others.length); points.add(first); points.add(second); points.addAll(Arrays.asList(others)); @@ -103,7 +103,7 @@ public static GeoJsonLineString of(GeoPoint first, GeoPoint second, GeoPoint... Assert.notNull(second, "Second point must not be null!"); Assert.notNull(others, "Additional points must not be null!"); - List points = new ArrayList<>(); + List points = new ArrayList<>(2 + others.length); points.add(GeoPoint.toPoint(first)); points.add(GeoPoint.toPoint(second)); points.addAll(Arrays.stream(others).map(GeoPoint::toPoint).collect(Collectors.toList())); diff --git a/src/main/java/org/springframework/data/elasticsearch/core/geo/GeoJsonMultiPoint.java b/src/main/java/org/springframework/data/elasticsearch/core/geo/GeoJsonMultiPoint.java index d81e30f52..410149b1c 100644 --- a/src/main/java/org/springframework/data/elasticsearch/core/geo/GeoJsonMultiPoint.java +++ b/src/main/java/org/springframework/data/elasticsearch/core/geo/GeoJsonMultiPoint.java @@ -69,7 +69,7 @@ public static GeoJsonMultiPoint of(Point first, Point second, Point... others) { Assert.notNull(second, "Second point must not be null!"); Assert.notNull(others, "Additional points must not be null!"); - List points = new ArrayList<>(); + List points = new ArrayList<>(2 + others.length); points.add(first); points.add(second); points.addAll(Arrays.asList(others)); @@ -103,7 +103,7 @@ public static GeoJsonMultiPoint of(GeoPoint first, GeoPoint second, GeoPoint... Assert.notNull(second, "Second point must not be null!"); Assert.notNull(others, "Additional points must not be null!"); - List points = new ArrayList<>(); + List points = new ArrayList<>(2 + others.length); points.add(GeoPoint.toPoint(first)); points.add(GeoPoint.toPoint(second)); points.addAll(Arrays.stream(others).map(GeoPoint::toPoint).collect(Collectors.toList())); diff --git a/src/main/java/org/springframework/data/elasticsearch/core/geo/GeoJsonPolygon.java b/src/main/java/org/springframework/data/elasticsearch/core/geo/GeoJsonPolygon.java index ffc613b30..2b8a6d879 100644 --- a/src/main/java/org/springframework/data/elasticsearch/core/geo/GeoJsonPolygon.java +++ b/src/main/java/org/springframework/data/elasticsearch/core/geo/GeoJsonPolygon.java @@ -189,7 +189,13 @@ public List getCoordinates() { @SafeVarargs private static List asList(T first, T second, T third, T fourth, T... others) { - ArrayList result = new ArrayList<>(3 + others.length); + Assert.notNull(first, "First element must not be null!"); + Assert.notNull(second, "Second element must not be null!"); + Assert.notNull(third, "Third element must not be null!"); + Assert.notNull(fourth, "Fourth element must not be null!"); + Assert.notNull(others, "Additional elements must not be null!"); + + ArrayList result = new ArrayList<>(4 + others.length); result.add(first); result.add(second);