1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| @NoArgsConstructor @Data @JsonTypeInfo(use = JsonTypeInfo.Id.NAME, include = JsonTypeInfo.As.PROPERTY,property = "type") @JsonSubTypes(value = { @JsonSubTypes.Type(value = GeoPoint.class, name = "Point"), @JsonSubTypes.Type(value = GeoPoint.class, name = "PointZ"), @JsonSubTypes.Type(value = GeoLineString.class, name = "LineString"), @JsonSubTypes.Type(value = GeoLineString.class, name = "LineStringZ"), @JsonSubTypes.Type(value = GeoPolygon.class, name = "Polygon"), @JsonSubTypes.Type(value = GeoPolygon.class, name = "PolygonZ"), @JsonSubTypes.Type(value = GeoMultiPoint.class, name = "MultiPoint"), @JsonSubTypes.Type(value = GeoMultiPoint.class, name = "MultiPointZ"), @JsonSubTypes.Type(value = GeoMultiLineString.class, name = "MultiLineString"), @JsonSubTypes.Type(value = GeoMultiLineString.class, name = "MultiLineStringZ"), @JsonSubTypes.Type(value = GeoMultiPolygon.class, name = "MultiPolygon"), @JsonSubTypes.Type(value = GeoMultiPolygon.class, name = "MultiPolygonZ"), @JsonSubTypes.Type(value = GeoGeometryCollection.class, name = "GeometryCollection"), @JsonSubTypes.Type(value = GeoGeometryCollection.class, name = "GeometryCollectionZ"), }) @JsonInclude(JsonInclude.Include.NON_EMPTY) public abstract class GeoGeometry {
private String type;
public String toString(){ return JacksonUtil.toJsonString(this); } }
|