Changeset 355
- Timestamp:
- 08/26/08 17:46:29 (4 months ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
trunk/geowebcache/src/main/java/org/geowebcache/demo/Demo.java
r344 r355 49 49 50 50 } else { 51 page = generateHTML(tileLayerDispatcher); 51 if(request.getRequestURI().endsWith("demo/")) { 52 page = generateHTML(tileLayerDispatcher, true); 53 } else { 54 page = generateHTML(tileLayerDispatcher, false); 55 } 56 52 57 } 53 58 response.setContentType("text/html"); … … 60 65 } 61 66 62 private static String generateHTML(TileLayerDispatcher tileLayerDispatcher )67 private static String generateHTML(TileLayerDispatcher tileLayerDispatcher, boolean trailingSlash) 63 68 throws GeoWebCacheException { 64 69 String header = … … 85 90 +"</tr>\n"; 86 91 87 String rows = tableRows(tileLayerDispatcher );92 String rows = tableRows(tileLayerDispatcher, trailingSlash); 88 93 89 94 String footer = "</table>\n</body></html>"; … … 92 97 } 93 98 94 private static String tableRows(TileLayerDispatcher tileLayerDispatcher )99 private static String tableRows(TileLayerDispatcher tileLayerDispatcher, boolean trailingSlash) 95 100 throws GeoWebCacheException { 96 101 Iterator<Entry<String,TileLayer>> it = … … 103 108 buf.append("<tr><td>"+layer.getName()+"</td>"); 104 109 if(layer.supportsSRS(SRS.getEPSG4326())) { 105 buf.append("<td> <a href=\"demo/"+layer.getName()+"?srs=EPSG:4326\">EPSG:4326</a></td>");110 buf.append("<td>"+generateDemoUrl(layer.getName(), 4326,"EPSG:4326", trailingSlash)+"</td>"); 106 111 } else { 107 112 buf.append("<td>EPSG:4326 not supported</td>"); … … 109 114 110 115 if(layer.supportsSRS(SRS.getEPSG900913())) { 111 buf.append("<td> <a href=\"demo/"+layer.getName()+"?srs=EPSG:900913\">EPSG:900913</a></td>");116 buf.append("<td>"+generateDemoUrl(layer.getName(), 900913,"EPSG:900913", trailingSlash)+"</td>"); 112 117 } else { 113 118 buf.append("<td>EPSG:900913 not supported</td>"); … … 115 120 116 121 if(layer.supportsSRS(SRS.getEPSG4326())) { 117 buf.append("<td><a href=\"service/kml/"+layer.getName()+".png.kmz\">KML (PNG)</a></td>" 118 + "<td><a href=\"service/kml/"+layer.getName()+".kml.kmz\">KML (vector)</a></td>"); 122 String prefix = ""; 123 if(trailingSlash) { 124 prefix = "../"; 125 } 126 buf.append("<td><a href=\""+prefix+"service/kml/"+layer.getName()+".png.kmz\">KML (PNG)</a></td>" 127 + "<td><a href=\""+prefix+"service/kml/"+layer.getName()+".kml.kmz\">KML (vector)</a></td>"); 119 128 } else { 120 129 buf.append("<td colspan=\"2\"> Google Earth requires EPSG:4326 support</td>"); … … 128 137 SRS curSRS = iter.next(); 129 138 if(curSRS.getNumber() != 4326 && curSRS.getNumber() != 900913) { 130 buf.append("<a href=\"demo/"+layer.getName()+"?srs="+curSRS.toString()+"\">" 131 + curSRS.toString()+"</a><br />"); 139 buf.append(generateDemoUrl(layer.getName(), curSRS.getNumber(),curSRS.toString(), trailingSlash)+"<br />"); 132 140 count++; 133 141 } … … 140 148 } 141 149 return buf.toString(); 150 } 151 152 private static String generateDemoUrl(String layerName, int epsgNumber, String text, boolean trailingSlash) { 153 if(trailingSlash) { 154 return "<a href=\"./"+layerName+"?srs=EPSG:"+epsgNumber+"\">"+text+"</a>"; 155 } else { 156 return "<a href=\"demo/"+layerName+"?srs=EPSG:"+epsgNumber+"\">"+text+"</a>"; 157 } 142 158 } 143 159
