@Test public void testBasicHeader() throws IOException { stubFor( get(urlEqualTo("/test")) .willReturn( aResponse() .withStatus(200) .withHeader("Content-Type", "text/xml") .withBody("<response>Some content</response>"))); String longPassword = String.join("", Collections.nCopies(10, "0123456789")); String userName = "user"; SimpleHttpClient client = new SimpleHttpClient(); client.setUser(userName); client.setPassword(longPassword); client.get(new URL("http://localhost:" + wireMockRule.port() + "/test")); String encodedCredentials = "dXNlcjowMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5"; verify( getRequestedFor(urlEqualTo("/test")) .withHeader("Authorization", equalTo("Basic " + encodedCredentials))); } }
@Override public List<RasterCapabilitiesInfo> getRasterCapabilities(Map<String, String> connectionProperties) throws Exception { URL url = new URL(connectionProperties.get(GetWmsCapabilitiesRequest.GET_CAPABILITIES_URL)); SimpleHttpClient httpClient = new SimpleHttpClient(); if (connectionProperties.containsKey(WmsLayerBeanFactory.WMS_USERNAME)) { httpClient.setUser(connectionProperties.get(WmsLayerBeanFactory.WMS_USERNAME)); httpClient.setPassword(connectionProperties.get(WmsLayerBeanFactory.WMS_PASSWORD)); } WebMapServer wms = new WebMapServer(url, httpClient); WMSCapabilities capabilities = wms.getCapabilities(); List<RasterCapabilitiesInfo> layers = new ArrayList<RasterCapabilitiesInfo>(); List<RasterCapabilitiesInfo> nonNativeLayers = new ArrayList<RasterCapabilitiesInfo>(); for (org.geotools.data.ows.Layer owsLayer : WMSUtils.getNamedLayers(capabilities)) { if (owsLayer.getSrs().contains(defaultGeodesk.getMaps().get(0).getCrs())) { // Only add default crs layers.add(dtoFactoryService.buildRasterCapabilitesInfoFromWms(wms, owsLayer, defaultGeodesk.getMaps().get(0).getCrs())); } else { // Add all available crs-es for (String srs : owsLayer.getSrs()) { try { nonNativeLayers.add(dtoFactoryService.buildRasterCapabilitesInfoFromWms(wms, owsLayer, srs)); } catch (LayerException e) { log.warn("Got unknown crs from wms server, ignoring: {}", srs); } } } } layers.addAll(nonNativeLayers); return layers; }
@Override public List<RasterCapabilitiesInfo> getRasterCapabilities(Map<String, String> connectionProperties) throws Exception { URL url = new URL(connectionProperties.get(GetWmsCapabilitiesRequest.GET_CAPABILITIES_URL)); SimpleHttpClient httpClient = new SimpleHttpClient(); if (connectionProperties.containsKey(WmsLayerBeanFactory.WMS_USERNAME)) { httpClient.setUser(connectionProperties.get(WmsLayerBeanFactory.WMS_USERNAME)); httpClient.setPassword(connectionProperties.get(WmsLayerBeanFactory.WMS_PASSWORD)); } WebMapServer wms = new WebMapServer(url, httpClient); WMSCapabilities capabilities = wms.getCapabilities(); List<RasterCapabilitiesInfo> layers = new ArrayList<RasterCapabilitiesInfo>(); List<RasterCapabilitiesInfo> nonNativeLayers = new ArrayList<RasterCapabilitiesInfo>(); for (org.geotools.data.ows.Layer owsLayer : WMSUtils.getNamedLayers(capabilities)) { if (owsLayer.getSrs().contains(defaultGeodesk.getMaps().get(0).getCrs())) { // Only add default crs layers.add(dtoFactoryService.buildRasterCapabilitesInfoFromWms(wms, owsLayer, defaultGeodesk.getMaps().get(0).getCrs())); } else { // Add all available crs-es for (String srs : owsLayer.getSrs()) { try { nonNativeLayers.add(dtoFactoryService.buildRasterCapabilitesInfoFromWms(wms, owsLayer, srs)); } catch (LayerException e) { LOG.warn("Got unknown crs from wms server, ignoring: {}", srs); } } } } layers.addAll(nonNativeLayers); return layers; }