From fec4f007c2f2e183d5f535b32d2fb407f3e98580 Mon Sep 17 00:00:00 2001 From: carlo cancellieri Date: Thu, 13 Jun 2013 07:59:55 +0200 Subject: [PATCH] fix #80: Considering several layers with the same name --- .../geoserver/rest/GeoServerRESTReader.java | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/main/java/it/geosolutions/geoserver/rest/GeoServerRESTReader.java b/src/main/java/it/geosolutions/geoserver/rest/GeoServerRESTReader.java index 05c1dcf..ca8949f 100644 --- a/src/main/java/it/geosolutions/geoserver/rest/GeoServerRESTReader.java +++ b/src/main/java/it/geosolutions/geoserver/rest/GeoServerRESTReader.java @@ -479,6 +479,8 @@ public class GeoServerRESTReader { /** * 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} @@ -491,6 +493,25 @@ public class GeoServerRESTReader { return RESTLayer.build(load(url)); } + /** + * 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); + } + return RESTLayer.build(load(url)); + } + //========================================================================== //=== NAMESPACES //==========================================================================