From 7369cfd82abd1b3f37c4aa4384f97a4ea0022fdc Mon Sep 17 00:00:00 2001 From: ccancellieri Date: Tue, 4 Oct 2011 15:39:12 +0200 Subject: [PATCH] added reset function --- .../rest/GeoServerRESTPublisher.java | 20 ++++++++++++++++++- .../geoserver/rest/HTTPUtils.java | 13 ++++++++++++ .../rest/encoder/GSResourceEncoderTest.java | 14 ------------- 3 files changed, 32 insertions(+), 15 deletions(-) delete mode 100644 src/test/java/it/geosolutions/geoserver/rest/encoder/GSResourceEncoderTest.java diff --git a/src/main/java/it/geosolutions/geoserver/rest/GeoServerRESTPublisher.java b/src/main/java/it/geosolutions/geoserver/rest/GeoServerRESTPublisher.java index 5720594..0a88c6e 100644 --- a/src/main/java/it/geosolutions/geoserver/rest/GeoServerRESTPublisher.java +++ b/src/main/java/it/geosolutions/geoserver/rest/GeoServerRESTPublisher.java @@ -65,7 +65,7 @@ public class GeoServerRESTPublisher { * @param password password auth credential */ public GeoServerRESTPublisher(String restURL, String username, String password) { - this.restURL = restURL; + this.restURL = HTTPUtils.decurtSlash(restURL); this.gsuser = username; this.gspass = password; } @@ -680,12 +680,30 @@ public class GeoServerRESTPublisher { } } + /** + * reload the target geoserver configuration + * @return true if success + * + * @see http://docs.geoserver.org/stable/en/user/restconfig/rest-config-api.html + */ public boolean reload() { String sUrl = restURL + "/rest/reload"; String result = HTTPUtils.post(sUrl, "", "text/plain", gsuser, gspass); return result != null; } + /** + * reset the target geoserver configuration + * @return true if success + * + * @see http://docs.geoserver.org/stable/en/user/restconfig/rest-config-api.html + */ + public boolean reset() { + String sUrl = restURL + "/rest/reset"; + String result = HTTPUtils.post(sUrl, "", "text/plain", gsuser, gspass); + return result != null; + } + public boolean removeLayerGroup(String name) { try { URL deleteUrl = new URL(restURL + "/rest/layergroups/" + name); diff --git a/src/main/java/it/geosolutions/geoserver/rest/HTTPUtils.java b/src/main/java/it/geosolutions/geoserver/rest/HTTPUtils.java index 8a612ac..bb40204 100644 --- a/src/main/java/it/geosolutions/geoserver/rest/HTTPUtils.java +++ b/src/main/java/it/geosolutions/geoserver/rest/HTTPUtils.java @@ -426,5 +426,18 @@ class HTTPUtils { } } } + + /** + * recursively remove ending slashes + * + * @param geoserverURL + * @return + */ + public static String decurtSlash(String geoserverURL) { + if (geoserverURL.endsWith("/")) { + geoserverURL = decurtSlash(geoserverURL.substring(0, geoserverURL.length() - 1)); + } + return geoserverURL; + } } diff --git a/src/test/java/it/geosolutions/geoserver/rest/encoder/GSResourceEncoderTest.java b/src/test/java/it/geosolutions/geoserver/rest/encoder/GSResourceEncoderTest.java deleted file mode 100644 index c74bf02..0000000 --- a/src/test/java/it/geosolutions/geoserver/rest/encoder/GSResourceEncoderTest.java +++ /dev/null @@ -1,14 +0,0 @@ -package it.geosolutions.geoserver.rest.encoder; - -import it.geosolutions.geoserver.rest.encoder.GSResourceEncoder; -import it.geosolutions.geoserver.rest.encoder.GSResourceEncoder.ProjectionPolicy; -import it.geosolutions.geoserver.rest.encoder.coverage.GSCoverageEncoder; -import it.geosolutions.geoserver.rest.encoder.metadata.GSDimensionInfoEncoder; - -import org.junit.Assert; -import org.junit.Test; - -public class GSResourceEncoderTest { - - -}