code: private Geometry parseGeometry(JsonParser jp, String geometryType) throws IOException, SQLException {        
          if (geometryType.equalsIgnoreCase(GeoJsonField.POINT)) {
              return parsePoint(jp);
          } else if (geometryType.equalsIgnoreCase(GeoJsonField.MULTIPOINT)) {
              return parseMultiPoint(jp);
          } else if (geometryType.equalsIgnoreCase(GeoJsonField.LINESTRING)) {
              return parseLinestring(jp);
          } else if (geometryType.equalsIgnoreCase(GeoJsonField.MULTILINESTRING)) {
              return parseMultiLinestring(jp);
          } else if (geometryType.equalsIgnoreCase(GeoJsonField.POLYGON)) {
              return parsePolygon(jp);
          } else if (geometryType.equalsIgnoreCase(GeoJsonField.MULTIPOLYGON)) {
              return parseMultiPolygon(jp);
          } else if (geometryType.equalsIgnoreCase(GeoJsonField.GEOMETRYCOLLECTION)) {
              return parseGeometryCollection(jp);
          } else {
              throw new SQLException("Unsupported geometry : " + geometryType);
          }
      }
docs: Parses a GeoJSON geometry and returns its JTS representation.
  
  Syntax:
  
  "geometry":{"type": "Point", "coordinates": [102.0,0.5]}
  
  @param jp
  @throws IOException
  @return Geometry