362{
363 json_object *
type = NULL;
364 const char *name;
365
366 if (!geojson)
367 {
368 lwerror(
"invalid GeoJSON representation");
369 return NULL;
370 }
371
373 if (!type)
374 {
375 lwerror(
"unknown GeoJSON type");
376 return NULL;
377 }
378
379 name = json_object_get_string(type);
380
381 if (strcasecmp(name, "Point") == 0)
383
384 if (strcasecmp(name, "LineString") == 0)
386
387 if (strcasecmp(name, "Polygon") == 0)
389
390 if (strcasecmp(name, "MultiPoint") == 0)
392
393 if (strcasecmp(name, "MultiLineString") == 0)
395
396 if (strcasecmp(name, "MultiPolygon") == 0)
398
399 if (strcasecmp(name, "GeometryCollection") == 0)
401
402 lwerror(
"invalid GeoJson representation");
403 return NULL;
404}
void lwerror(const char *fmt,...)
Write a notice out to the error handler.
static LWGEOM * parse_geojson_multipoint(json_object *geojson, int *hasz)
static LWGEOM * parse_geojson_multipolygon(json_object *geojson, int *hasz)
static LWGEOM * parse_geojson_linestring(json_object *geojson, int *hasz)
static LWGEOM * parse_geojson_geometrycollection(json_object *geojson, int *hasz)
static json_object * findMemberByName(json_object *poObj, const char *pszName)
static LWGEOM * parse_geojson_point(json_object *geojson, int *hasz)
static LWGEOM * parse_geojson_polygon(json_object *geojson, int *hasz)
static LWGEOM * parse_geojson_multilinestring(json_object *geojson, int *hasz)