Browse Source

Geo: Switch generated GeoJson type names to camel case (#50285) (#50400)

Switches generated GeoJson type names to camel case
to conform to the standard.

Closes #49568
Igor Motov 5 years ago
parent
commit
7f81467378

+ 1 - 1
docs/reference/ingest/processors/circle.asciidoc

@@ -128,7 +128,7 @@ The response from the above index request:
           [30.000365257263184, 10.0]
         ]
       ],
-      "type": "polygon"
+      "type": "Polygon"
     }
   }
 }

+ 9 - 9
server/src/main/java/org/elasticsearch/common/geo/GeoJson.java

@@ -382,17 +382,17 @@ public final class GeoJson {
         return geometry.visit(new GeometryVisitor<>() {
             @Override
             public String visit(Circle circle) {
-                return "circle";
+                return "Circle";
             }
 
             @Override
             public String visit(GeometryCollection<?> collection) {
-                return "geometrycollection";
+                return "GeometryCollection";
             }
 
             @Override
             public String visit(Line line) {
-                return "linestring";
+                return "LineString";
             }
 
             @Override
@@ -402,32 +402,32 @@ public final class GeoJson {
 
             @Override
             public String visit(MultiLine multiLine) {
-                return "multilinestring";
+                return "MultiLineString";
             }
 
             @Override
             public String visit(MultiPoint multiPoint) {
-                return "multipoint";
+                return "MultiPoint";
             }
 
             @Override
             public String visit(MultiPolygon multiPolygon) {
-                return "multipolygon";
+                return "MultiPolygon";
             }
 
             @Override
             public String visit(Point point) {
-                return "point";
+                return "Point";
             }
 
             @Override
             public String visit(Polygon polygon) {
-                return "polygon";
+                return "Polygon";
             }
 
             @Override
             public String visit(Rectangle rectangle) {
-                return "envelope";
+                return "Envelope";
             }
         });
     }

+ 2 - 2
server/src/test/java/org/elasticsearch/common/geo/GeometryParserTests.java

@@ -51,7 +51,7 @@ public class GeometryParserTests extends ESTestCase {
             assertEquals(new Point(100, 0), format.fromXContent(parser));
             XContentBuilder newGeoJson = XContentFactory.jsonBuilder();
             format.toXContent(new Point(100, 10), newGeoJson, ToXContent.EMPTY_PARAMS);
-            assertEquals("{\"type\":\"point\",\"coordinates\":[100.0,10.0]}", Strings.toString(newGeoJson));
+            assertEquals("{\"type\":\"Point\",\"coordinates\":[100.0,10.0]}", Strings.toString(newGeoJson));
         }
 
         XContentBuilder pointGeoJsonWithZ = XContentFactory.jsonBuilder()
@@ -148,7 +148,7 @@ public class GeometryParserTests extends ESTestCase {
             // if we serialize non-null value - it should be serialized as geojson
             format.toXContent(new Point(100, 10), newGeoJson, ToXContent.EMPTY_PARAMS);
             newGeoJson.endObject();
-            assertEquals("{\"val\":{\"type\":\"point\",\"coordinates\":[100.0,10.0]}}", Strings.toString(newGeoJson));
+            assertEquals("{\"val\":{\"type\":\"Point\",\"coordinates\":[100.0,10.0]}}", Strings.toString(newGeoJson));
 
             newGeoJson = XContentFactory.jsonBuilder().startObject().field("val");
             format.toXContent(null, newGeoJson, ToXContent.EMPTY_PARAMS);

+ 1 - 1
server/src/test/java/org/elasticsearch/index/query/GeoShapeQueryBuilderTests.java

@@ -204,7 +204,7 @@ public class GeoShapeQueryBuilderTests extends AbstractQueryTestCase<GeoShapeQue
                 "  \"geo_shape\" : {\n" +
                 "    \"location\" : {\n" +
                 "      \"shape\" : {\n" +
-                "        \"type\" : \"envelope\",\n" +
+                "        \"type\" : \"Envelope\",\n" +
                 "        \"coordinates\" : [ [ 13.0, 53.0 ], [ 14.0, 52.0 ] ]\n" +
                 "      },\n" +
                 "      \"relation\" : \"intersects\"\n" +

+ 1 - 1
x-pack/plugin/spatial/src/test/java/org/elasticsearch/xpack/spatial/index/query/ShapeQueryBuilderTests.java

@@ -179,7 +179,7 @@ public class ShapeQueryBuilderTests extends AbstractQueryTestCase<ShapeQueryBuil
                 "  }\n" +
                 "}";
         ShapeQueryBuilder parsed = (ShapeQueryBuilder) parseQuery(json);
-        checkGeneratedJson(json, parsed);
+        checkGeneratedJson(json.replaceAll("envelope", "Envelope"), parsed);
         assertEquals(json, 42.0, parsed.boost(), 0.0001);
     }