public static Set getSRSs(WMSCapabilities capabilities) { Set srss = new TreeSet(); Layer[] layers = (Layer[]) capabilities.getLayerList().toArray(new Layer[capabilities.getLayerList().size()]); for( int i = 0; i < layers.length; i++ ) { if (layers[i].getSrs() != null) { srss.addAll(layers[i].getSrs()); } } return srss; }
/** * Finds URL to WMS service and attempts to slice away the service parameter, since we will add * that anyway. * * @param wms * @return */ private String getWMSUrl(WebMapServer wms) { // // http://sigma.openplans.org:8080/geoserver/wms?SERVICE=WMS& String wmsUrl = wms.getCapabilities().getRequest().getGetCapabilities().getGet().toString(); int queryStart = wmsUrl.lastIndexOf("?"); if (queryStart > 0) { String preQuery = wmsUrl.substring(queryStart); if (preQuery.equalsIgnoreCase("?service=wms&")) { wmsUrl = wmsUrl.substring(0, wmsUrl.lastIndexOf("?")); } } return wmsUrl; }
public String getAbstract() { return (caps == null) ? null : ((caps.getService() == null) ? null : caps.getService() .get_abstract()); }
public void setLayer(Layer layer) { this.layer = layer; if (getVersion() != null) { boolean forceXY = !getVersion().startsWith("1.3"); fixLayerBoundingBox(layer, forceXY); layer.clearCache(); } }
/** * <!-- begin-user-doc --> * <!-- end-user-doc --> * * @generated modifiable */ public Object parse(ElementInstance instance, Node node, Object value) throws Exception { WMSCapabilities ret = new WMSCapabilities(); // These come from the _CapabilityBinding Map caps = (Map)node.getChildValue("Capability"); ret.setLayer((Layer)caps.get("Layer")); ret.setRequest((WMSRequest)caps.get("Request")); ret.setExceptions((String[]) caps.get("Exception")); ret.setService((Service)node.getChildValue("Service")); ret.setVersion((String)node.getAttributeValue("version")); ret.setUpdateSequence((String)node.getAttributeValue("updateSequence")); return ret; }
List<Layer> layerList = capabilities.getLayerList(); Iterator<Layer> layerIter = layerList.iterator(); wmsLayer.setVersion(urlVersion); } else { String wmsVersion = capabilities.getVersion(); if (wmsVersion != null && wmsVersion.length() > 0) { wmsLayer.setVersion(wmsVersion);
public Object getValue(Element element, ElementValue[] value, Attributes attrs, Map hints) throws SAXException, OperationNotSupportedException { WMSCapabilities capabilities = new WMSCapabilities(); for (int i = 0; i < value.length; i++) { if (sameName(elems[0], value[i])) { capabilities.setRequest((WMSRequest) value[i].getValue()); } if (sameName(elems[1], value[i])) { capabilities.setExceptions((String[]) value[i].getValue()); } // if (sameName(elems[2], value[i])) { // TODO ExtendedCapabilities ignored // } // if (sameName(elems[3], value[i])) { // TODO VendorSpecificCapabilities ignored // } // if (sameName(elems[4], value[i])) { // TODO UserDefinedSymbolization ignored // } if (sameName(elems[5], value[i])) { Layer layer = (Layer) value[i].getValue(); capabilities.setLayer(layer); } } return capabilities; }
public String getVersion() { return capabilities.getVersion(); }
public List getLayerList() { if (layers == null) { layers = new ArrayList(); layers.add(layer); addChildrenRecursive(layers, layer); } return Collections.unmodifiableList(layers); }
public Object getValue(Element element, ElementValue[] value, Attributes attrs, Map hints) throws SAXException, OperationNotSupportedException { WMSCapabilities capabilities = new WMSCapabilities(); for (int i = 0; i < value.length; i++) { if (sameName(elems[0], value[i])) { capabilities.setRequest((WMSRequest) value[i].getValue()); } if (sameName(elems[1], value[i])) { capabilities.setExceptions((String[]) value[i].getValue()); } // if (sameName(elems[2], value[i])) { // TODO ExtendedCapabilities ignored // } // if (sameName(elems[3], value[i])) { // TODO VendorSpecificCapabilities ignored // } // if (sameName(elems[4], value[i])) { // TODO UserDefinedSymbolization ignored // } if (sameName(elems[5], value[i])) { Layer layer = (Layer) value[i].getValue(); capabilities.setLayer(layer); } } return capabilities; }
@Override public void setVersion(String version) { super.setVersion(version); boolean forceXY = !getVersion().startsWith("1.3"); if (layer != null) { fixLayerBoundingBox(layer, forceXY); layer.clearCache(); } }
getMap.setProperty("layers", layer.getName()); getMap.setFormat(requestFormat); getMap.setVersion(server.getCapabilities().getVersion()); boolean flipNeeded = !template.containsKey("crs") && new Version(server.getCapabilities().getVersion()) .compareTo(new Version("1.3.0")) >= 0; boolean unflipNeeded = template.containsKey("crs") && new Version(server.getCapabilities().getVersion()) .compareTo(new Version("1.3.0")) < 0;
/** * Access a flat view of the layers available in the WMS. * * <p>The information available here is the same as doing a top down walk of all the layers * available via getLayer(). * * @return List of all available layers */ public List<Layer> getLayerList() { if (layers == null) { layers = new ArrayList<Layer>(); layers.add(layer); addChildrenRecursive(layers, layer); } return Collections.unmodifiableList(layers); }
public static Set getSRSs(WMSCapabilities capabilities) { Set srss = new TreeSet(); Layer[] layers = (Layer[]) capabilities .getLayerList() .toArray(new Layer[capabilities.getLayerList().size()]); for (int i = 0; i < layers.length; i++) { if (layers[i].getSrs() != null) { srss.addAll(layers[i].getSrs()); } } return srss; }
/** * Creates a new WebMapServer from a WMSCapablitiles document. * * <p>The implementation assumes that the server is located at: * capabilities.getRequest().getGetCapabilities().getGet() * * @param capabilities * @throws IOException * @throws ServiceException */ public WebMapServer(WMSCapabilities capabilities) throws IOException, ServiceException { super(capabilities, capabilities.getRequest().getGetCapabilities().getGet()); }
public String getDescription() { String description = null; if (capabilities != null && capabilities.getService() != null) { description = capabilities.getService().get_abstract(); } if (description == null) { description = "Web Map Server " + serverURL; } return description; }
private void addChildrenRecursive(List<Layer> layers, Layer layer) { if (layer.getChildren() != null) { for (Layer child : layer.getChildren()) { layers.add(child); addChildrenRecursive(layers, child); } } }
private static org.geotools.data.ows.Layer getLayer(WebMapServer server, int layerIndex) { return server.getCapabilities().getLayerList().get(layerIndex); }
public WMSCoverageReader(WebMapServer wms, Layer layer, String style) { this.wms = wms; // init the reader addLayer(layer, style); // best guess at the format with a preference for PNG (since it's normally transparent) List<String> formats = wms.getCapabilities().getRequest().getGetMap().getFormats(); this.format = formats.iterator().next(); for (String format : formats) { if ("image/png".equals(format) || "image/png24".equals(format) || "png".equals(format) || "png24".equals(format) || "image/png; mode=24bit".equals(format)) { this.format = format; break; } } }
public String getTitle() { if (capabilities != null && capabilities.getService() != null) { return capabilities.getService().getTitle(); } else if (serverURL == null) { return "Unavailable"; } else { return serverURL.toString(); } } }