public GetFeatureInfoResponse getFeatureInfo( GetFeatureInfo request ) throws OWSExceptionReport, XMLStreamException, IOException { Map<String, String> kvp = buildGetFeatureInfoKvpMap( request ); if ( request.getOverriddenParameters() != null ) { for ( Entry<String, String> e : request.getOverriddenParameters().entrySet() ) { if ( kvp.containsKey( e.getKey().toLowerCase() ) ) { kvp.put( e.getKey().toLowerCase(), e.getValue() ); } else kvp.put( e.getKey(), e.getValue() ); } } URL endPoint = getGetUrl( WMTSConstants.WMTSRequestType.GetTile.name() ); OwsHttpResponse response = httpClient.doGet( endPoint, kvp, null ); response.assertHttpStatus200(); response.assertNoXmlContentTypeAndExceptionReport(); return new GetFeatureInfoResponse( response, request ); }
/** * Performs the given {@link GetTile} request. * * @param request * <code>GetTile</code> requests, must not be <code>null</code> * @return server response, never <code>null</code> * @throws IOException * @throws OWSExceptionReport * @throws XMLStreamException */ public GetTileResponse getTile( GetTile request ) throws IOException, OWSExceptionReport, XMLStreamException { Map<String, String> kvp = buildGetTileKvpMap( request ); if ( request.getOverriddenParameters() != null ) { for ( Entry<String, String> e : request.getOverriddenParameters().entrySet() ) { if ( kvp.containsKey( e.getKey().toLowerCase() ) ) { kvp.put( e.getKey().toLowerCase(), e.getValue() ); } else kvp.put( e.getKey(), e.getValue() ); } } URL endPoint = getGetUrl( WMTSConstants.WMTSRequestType.GetTile.name() ); OwsHttpResponse response = httpClient.doGet( endPoint, kvp, null ); response.assertHttpStatus200(); response.assertNoXmlContentTypeAndExceptionReport(); return new GetTileResponse( response ); }
OwsHttpResponse response = httpClient.doGet( endPoint, kvp, null );
public MetadataRecord getRecordById( String fileIdentifier, String schema ) throws IOException, OWSExceptionReport, XMLStreamException { URL endPoint = getGetUrl( "GetRecordById" ); Map<String, String> params = getGetRecordByIdKvpParams( fileIdentifier, schema ); OwsHttpResponse response = httpClient.doGet( endPoint, params, null ); XMLStreamReader xmlStream = response.getAsXMLStream(); XMLStreamUtils.skipStartDocument( xmlStream ); moveToNextStartElement( xmlStream ); return MetadataRecordFactory.create( xmlStream ); }
kvp.put( "request", "DescribeFeatureType" ); OwsHttpResponse response = httpClient.doGet( endPoint, kvp, null ); XMLStreamReader xmlStream = null; StreamBufferStore tmpStore = null;
private void initCapabilities( URL capaUrl ) throws IOException, OWSExceptionReport, XMLStreamException { if ( shouldUseGet( capaUrl ) ) { OwsHttpResponse response = httpClient.doGet( capaUrl, null, null ); response.assertHttpStatus200(); XMLStreamReader responseAsXMLStream = response.getAsXMLStream(); try { XMLAdapter xmlAdapter = new XMLAdapter( responseAsXMLStream ); initCapabilities( xmlAdapter ); } finally { responseAsXMLStream.close(); response.close(); } } else { XMLAdapter xmlAdapter = new XMLAdapter( capaUrl ); initCapabilities( xmlAdapter ); } }
/** * Performs a <code>GetFeatureInfo</code> request and returns the response as a {@link FeatureCollection}. * * @param request * request parameter, must not be <code>null</code> * @param hardParams * raw parameters for augmenting overriding KVPs, must not be <code>null</code> * @return response parsed as feature collection, never <code>null</code> * @throws IOException * @throws OWSExceptionReport * @throws XMLStreamException */ public FeatureCollection doGetFeatureInfo( GetFeatureInfo request, Map<String, String> hardParams ) throws IOException, OWSExceptionReport, XMLStreamException { Map<String, String> params = buildGetFeatureInfoParamMap( request, hardParams ); overrideHardParams( params, hardParams ); OwsHttpResponse response = null; try { URL url = getGetUrl( GetFeatureInfo.name() ); response = httpClient.doGet( url, params, null ); response.assertHttpStatus200(); XMLStreamReader reader = response.getAsXMLStream(); String csvLayerNames = join( ",", request.getQueryLayers() ); return FeatureInfoParser.parseAsFeatureCollection( reader, csvLayerNames ); } finally { closeQuietly( response ); } }