diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonGeometryCollection.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonGeometryCollection.java index 74f36e319..650f5a006 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonGeometryCollection.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonGeometryCollection.java @@ -34,7 +34,7 @@ public class GeoJsonGeometryCollection implements GeoJson>> private static final String TYPE = "GeometryCollection"; - private final List> geometries = new ArrayList>(); + private final List> geometries; /** * Creates a new {@link GeoJsonGeometryCollection} for the given {@link GeoJson} instances. @@ -45,7 +45,7 @@ public class GeoJsonGeometryCollection implements GeoJson>> Assert.notNull(geometries, "Geometries must not be null"); - this.geometries.addAll(geometries); + this.geometries = new ArrayList<>(geometries); } @Override diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonMultiLineString.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonMultiLineString.java index 833a1dd9f..8aedfc699 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonMultiLineString.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonMultiLineString.java @@ -35,7 +35,7 @@ public class GeoJsonMultiLineString implements GeoJson coordinates = new ArrayList(); + private final List coordinates; /** * Creates new {@link GeoJsonMultiLineString} for the given {@link Point}s. @@ -46,6 +46,7 @@ public class GeoJsonMultiLineString implements GeoJson(lines.length); for (List line : lines) { this.coordinates.add(new GeoJsonLineString(line)); } @@ -60,7 +61,7 @@ public class GeoJsonMultiLineString implements GeoJson(lines); } @Override diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonMultiPoint.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonMultiPoint.java index 9b3be2d7f..21e1f32ba 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonMultiPoint.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonMultiPoint.java @@ -49,8 +49,7 @@ public class GeoJsonMultiPoint implements GeoJson> { Assert.notNull(point, "Point must not be null"); - this.points = new ArrayList<>(); - this.points.add(point); + this.points = List.of(point); } /** diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonMultiPolygon.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonMultiPolygon.java index a7e6306b4..04d26255b 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonMultiPolygon.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonMultiPolygon.java @@ -33,7 +33,7 @@ public class GeoJsonMultiPolygon implements GeoJson> { private static final String TYPE = "MultiPolygon"; - private List coordinates = new ArrayList(); + private final List coordinates; /** * Creates a new {@link GeoJsonMultiPolygon} for the given {@link GeoJsonPolygon}s. @@ -44,7 +44,7 @@ public class GeoJsonMultiPolygon implements GeoJson> { Assert.notNull(polygons, "Polygons for MultiPolygon must not be null"); - this.coordinates.addAll(polygons); + this.coordinates = new ArrayList<>(polygons); } @Override diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonPolygon.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonPolygon.java index f5d52232d..e49b3e91f 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonPolygon.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/geo/GeoJsonPolygon.java @@ -42,7 +42,7 @@ public class GeoJsonPolygon extends Polygon implements GeoJson coordinates = new ArrayList(); + private final List coordinates; /** * Creates new {@link GeoJsonPolygon} from the given {@link Point}s. @@ -65,6 +65,8 @@ public class GeoJsonPolygon extends Polygon implements GeoJson points) { super(points); + + this.coordinates = new ArrayList<>(1); this.coordinates.add(new GeoJsonLineString(points)); }