import java.awt.image.RenderedImage import javax.imageio.ImageIO class OgcController { def webMappingService def wms = { def tempMap = [:] // Convert param names to lower case params.each { tempMap.put(it.key.toLowerCase(), it.value)} // Populate WMSCapabilities Request object def wmsRequest = new WMSRequest() bindData(wmsRequest, tempMap) // 100.times { print "-" } // println "\n${tempMap}\n" // 100.times { print "-" } // println "" switch ( wmsRequest?.request?.toLowerCase() ) { case "getmap": def bounds = wmsRequest?.bbox?.split(',') webMappingService.getMap(wmsRequest, response) break case "getcapabilities": def layers = wmsRequest?.layers?.split(',') def serviceAddress = createLink( base: "http://${InetAddress.localHost.hostAddress}", controller: "ogc", action: "wms", absolute: true ) //println layers //println serviceAddress def wmsCapabilites = new WMSCapabilities(layers, serviceAddress) render(contentType: "text/xml", text: wmsCapabilites.getCapabilities()) break } return null } }