@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(); }
/** * 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); }
/** * 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();