364{
365 json_object *
type = NULL;
366 const char *name;
367
368 if (!geojson)
369 {
370 lwerror(
"invalid GeoJSON representation");
371 return NULL;
372 }
373
375 if (!type)
376 {
377 lwerror(
"unknown GeoJSON type");
378 return NULL;
379 }
380
381 name = json_object_get_string(type);
382
383 if (strcasecmp(name, "Point") == 0)
385
386 if (strcasecmp(name, "LineString") == 0)
388
389 if (strcasecmp(name, "Polygon") == 0)
391
392 if (strcasecmp(name, "MultiPoint") == 0)
394
395 if (strcasecmp(name, "MultiLineString") == 0)
397
398 if (strcasecmp(name, "MultiPolygon") == 0)
400
401 if (strcasecmp(name, "GeometryCollection") == 0)
403
404 lwerror(
"invalid GeoJson representation");
405 return NULL;
406}
void void lwerror(const char *fmt,...) __attribute__((format(printf
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)