|| parameterValues.get(parameterValues.size() - 1).startsWith(getSrsNamePrefix())) { hasSrid = true; srid = SosHelper.parseSrsName(parameterValues.get(parameterValues.size() - 1));
|| parameterValues.get(parameterValues.size() - 1).startsWith(getSrsNamePrefix())) { hasSrid = true; srid = SosHelper.parseSrsName(parameterValues.get(parameterValues.size() - 1));
private Geometry getGeometry4BBOX(EnvelopeDocument xbBbox) throws OwsExceptionReport { EnvelopeType xbEnvelope = xbBbox.getEnvelope(); // parse srid; if not set, throw exception! int srid = SosHelper.parseSrsName(xbEnvelope.getSrsName()); String lower = xbEnvelope.getLowerCorner().getStringValue(); String upper = xbEnvelope.getUpperCorner().getStringValue(); String geomWKT = String.format("MULTIPOINT(%s, %s)", lower, upper); return JTSHelper.createGeometryFromWKT(geomWKT, srid).getEnvelope(); }
private Object parsePointType(PointType xbPointType) throws OwsExceptionReport { String geomWKT = null; int srid = -1; if (xbPointType.getSrsName() != null) { srid = SosHelper.parseSrsName(xbPointType.getSrsName()); } if (xbPointType.getPos() != null) { DirectPositionType xbPos = xbPointType.getPos(); if (srid == -1 && xbPos.getSrsName() != null) { srid = SosHelper.parseSrsName(xbPos.getSrsName()); } String directPosition = getString4Pos(xbPos); geomWKT = JTSHelper.createWKTPointFromCoordinateString(directPosition); } else if (xbPointType.getCoordinates() != null) { CoordinatesType xbCoords = xbPointType.getCoordinates(); String directPosition = getString4Coordinates(xbCoords); geomWKT = JTSHelper.createWKTPointFromCoordinateString(directPosition); } else { throw new NoApplicableCodeException().withMessage("For geometry type 'gml:Point' only elements " + "'gml:pos' and 'gml:coordinates' are allowed"); } checkSrid(srid); if (srid == -1) { throw new NoApplicableCodeException().withMessage("No SrsName ist specified for geometry!"); } return JTSHelper.createGeometryFromWKT(geomWKT, srid); }