@CliCommand(value = "layer get", help = "Get a layer.") public String get( @CliOption(key = "name", mandatory = true, help = "The layer name") String name ) throws Exception { GeoServerRESTReader reader = new GeoServerRESTReader(geoserver.getUrl(), geoserver.getUser(), geoserver.getPassword()); RESTLayer layer = reader.getLayer(name); final String TAB = " "; StringBuilder builder = new StringBuilder(); try { builder.append(layer.getName()).append(OsUtils.LINE_SEPARATOR); // @TODO RESTLayer looks at layer/resource/title instead of layer/title builder.append(TAB).append("Title: ").append(layer.getTitle()).append(OsUtils.LINE_SEPARATOR); builder.append(TAB).append("Type: ").append(layer.getType()).append(OsUtils.LINE_SEPARATOR); builder.append(TAB).append("Abstract: ").append(layer.getAbstract()).append(OsUtils.LINE_SEPARATOR); builder.append(TAB).append("Default Style: ").append(layer.getDefaultStyle()).append(OsUtils.LINE_SEPARATOR); // @TODO RESTLayer can't access <styles> // @TODO RESTLayer can throw Exception where there is no namespace try { builder.append(TAB).append("Namespace: ").append(layer.getNameSpace()).append(OsUtils.LINE_SEPARATOR); } catch (Exception ex) { // Do nothing } builder.append(TAB).append("Type String: ").append(layer.getTypeString()).append(OsUtils.LINE_SEPARATOR); } catch (Exception ex) { ex.printStackTrace(); } return builder.toString(); }
public static RESTLayer build(String response) { if(response == null) return null; Element pb = JDOMBuilder.buildElement(response); if(pb != null) return new RESTLayer(pb); else return null; }
/** * Get detailed info about a given Layer. * * @deprecated use {@link #getLayer(String, String)} * * @param name The name of the Layer * @return Layer details as a {@link RESTLayer} */ public RESTLayer getLayer(String name) { String url = "/rest/layers/" + name + ".xml"; if (LOGGER.isDebugEnabled()) { LOGGER.debug("### Retrieving layer from " + url); } return RESTLayer.build(load(url)); }
/** * Get detailed info about a FeatureType given the Layer where it's published with. * * @param layer A layer publishing the FeatureType * @return FeatureType details as a {@link RESTCoverage} */ public RESTFeatureType getFeatureType(RESTLayer layer) { if(layer.getType() != RESTLayer.Type.VECTOR) throw new RuntimeException("Bad layer type for layer " + layer.getName()); String response = loadFullURL(layer.getResourceUrl()); return RESTFeatureType.build(response); }
String layerName = layer.getName(); String workspace = getLayerWorkspace(reader, localWorkspaceList, layerName); GeoServerLayer geoServerlayer = new GeoServerLayer(); styleWrapper.setStyle(layer.getDefaultStyle()); String styleWorkspace = layer.getDefaultStyleWorkspace(); styleWrapper.setWorkspace( (styleWorkspace == null) ? DEFAULT_WORKSPACE_NAME : styleWorkspace);
if (layer.getType().equals(RESTLayer.Type.VECTOR)) {
assertEquals(STYLE, layer.getDefaultStyle()); assertEquals(SECOND_STYLE, layer.getStyles().get(0).getName()); RESTStyle style = restManager.getReader().getStyle(STYLE); assertEquals(STYLE + ".sld", style.getFileName());
public Type getType() { return Type.get(getTypeString()); }
/** * Get detailed info about a Coverage given the Layer where it's published with. * * @param layer A layer publishing the CoverageStore * @return Coverage details as a {@link RESTCoverage} */ public RESTCoverage getCoverage(RESTLayer layer) { if(layer.getType() != RESTLayer.Type.RASTER) throw new RuntimeException("Bad layer type for layer " + layer.getName()); String response = loadFullURL(layer.getResourceUrl()); return RESTCoverage.build(response); }
if (layer.getType().equals(RESTLayer.Type.VECTOR)) { details.setType(LayerType.VECTOR); } else {
/** * Get detailed info about a given Layer. * * @param workspace the workspace name * @param name the layer name * @return a RESTLayer with layer information or null */ public RESTLayer getLayer(String workspace, String name) { if (workspace == null || workspace.isEmpty()) throw new IllegalArgumentException("Workspace may not be null"); if (name == null || name.isEmpty()) throw new IllegalArgumentException("Layername may not be null"); String url = HTTPUtils.append("/rest/layers/",workspace,":",name,".xml").toString(); if (LOGGER.isDebugEnabled()) { LOGGER.debug("### Retrieving layer from " + url); } RESTLayer layer = null; if (this.getGeoserverVersion().getVersion() .equals(GSVersionDecoder.VERSION.UNRECOGNIZED)) { layer = RESTLayer21.build(load(url)); } else { layer = RESTLayer.build(load(url)); } return layer; }