Changeset 13878 in josm


Ignore:
Timestamp:
2018-05-31T00:51:20+02:00 (5 months ago)
Author:
wiktorn
Message:

Fix identifying if getMapUrl contains query part.

See: #16330

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/io/imagery/WMSImagery.java

    r13872 r13878  
    432432                        // TODO should we handle also POST?
    433433                        if ("GET".equalsIgnoreCase(mode) && getMapUrl != null && !"".equals(getMapUrl)) {
    434                             if (getMapUrl.endsWith("?")) {
    435                                 this.getMapUrl = getMapUrl;
    436                             } else {
    437                                 this.getMapUrl = getMapUrl + "?";
     434                            try {
     435                                String query = (new URL(getMapUrl)).getQuery();
     436                                if (query == null || query.isEmpty()) {
     437                                    this.getMapUrl = getMapUrl + "?";
     438                                } else {
     439                                    this.getMapUrl = getMapUrl;
     440                                }
     441                            } catch (MalformedURLException e) {
     442                                throw new XMLStreamException(e);
    438443                            }
    439444                        }
  • trunk/test/unit/org/openstreetmap/josm/io/imagery/WMSImageryTest.java

    r13870 r13878  
    9191                );
    9292        WMSImagery wms = new WMSImagery(tileServer.url("any"));
    93         assertEquals("http://wms.hgis.cartomatic.pl/topo/3857/m25k", wms.buildRootUrl());
     93        assertEquals("http://wms.hgis.cartomatic.pl/topo/3857/m25k?", wms.buildRootUrl());
    9494        assertEquals("wms.hgis.cartomatic.pl", wms.getLayers().get(0).getName());
    95         assertEquals("http://wms.hgis.cartomatic.pl/topo/3857/m25kFORMAT=image/png&TRANSPARENT=TRUE&VERSION=1.1.1&SERVICE=WMS&REQUEST=GetMap&"
     95        assertEquals("http://wms.hgis.cartomatic.pl/topo/3857/m25k?FORMAT=image/png&TRANSPARENT=TRUE&VERSION=1.1.1&SERVICE=WMS&REQUEST=GetMap&"
    9696                + "LAYERS=wms.hgis.cartomatic.pl&STYLES=&SRS={proj}&WIDTH={width}&HEIGHT={height}&BBOX={bbox}",
    9797                wms.buildGetMapUrl(wms.getLayers(), (List<String>) null, true));
Note: See TracChangeset for help on using the changeset viewer.