diff --git a/src/main/java/it/geosolutions/geoserver/rest/encoder/feature/GSFeatureTypeEncoder.java b/src/main/java/it/geosolutions/geoserver/rest/encoder/feature/GSFeatureTypeEncoder.java index eb2d567..6b797b3 100644 --- a/src/main/java/it/geosolutions/geoserver/rest/encoder/feature/GSFeatureTypeEncoder.java +++ b/src/main/java/it/geosolutions/geoserver/rest/encoder/feature/GSFeatureTypeEncoder.java @@ -53,46 +53,22 @@ public class GSFeatureTypeEncoder extends GSResourceEncoder { * @param key * @param dimensionInfo * - * @deprecated Replaced by - * {@link #addMetadataDimension(String, GSFeatureDimensionInfoEncoder)} */ - @Deprecated protected void addMetadata(String key, GSFeatureDimensionInfoEncoder dimensionInfo) { super.addMetadata(key, dimensionInfo); } - - /** - * - * @param key - * @param dimensionInfo - */ - protected void addMetadataDimension(String key, GSFeatureDimensionInfoEncoder dimensionInfo) { - super.addMetadata(key, dimensionInfo); - } + /** * * @param key * @param dimensionInfo * - * @deprecated Replaced by - * {@link #setMetadataDimension(String, GSFeatureDimensionInfoEncoder)} */ - @Deprecated public void setMetadata(String key, GSFeatureDimensionInfoEncoder dimensionInfo) { super.setMetadata(key, dimensionInfo); } - /** - * - * @param key - * @param dimensionInfo - */ - public void setMetadataDimension(String key, GSFeatureDimensionInfoEncoder dimensionInfo) { - super.setMetadata(key, dimensionInfo); - } - - /** * Add a VirtualTable (SQL View feature type) * diff --git a/src/test/java/it/geosolutions/geoserver/rest/encoder/feature/GSFeatureEncoderTest.java b/src/test/java/it/geosolutions/geoserver/rest/encoder/feature/GSFeatureEncoderTest.java index b448ce6..3d273f9 100644 --- a/src/test/java/it/geosolutions/geoserver/rest/encoder/feature/GSFeatureEncoderTest.java +++ b/src/test/java/it/geosolutions/geoserver/rest/encoder/feature/GSFeatureEncoderTest.java @@ -148,7 +148,7 @@ public class GSFeatureEncoderTest extends GeoserverRESTPublisherTest { GSFeatureDimensionInfoEncoder dim2 = new GSFeatureDimensionInfoEncoder("ELE"); - encoder.addMetadataDimension("elevation", dim2); + encoder.addMetadata("elevation", dim2); dim2.setPresentation(PresentationDiscrete.DISCRETE_INTERVAL, BigDecimal.valueOf(10)); Element el = ElementUtils.contains(encoder.getRoot(), GSDimensionInfoEncoder.PRESENTATION); Assert.assertNotNull(el); @@ -162,7 +162,7 @@ public class GSFeatureEncoderTest extends GeoserverRESTPublisherTest { dim2.setPresentation(Presentation.CONTINUOUS_INTERVAL); - encoder.setMetadataDimension("time", new GSFeatureDimensionInfoEncoder("time")); + encoder.setMetadata("time", new GSFeatureDimensionInfoEncoder("time")); el = ElementUtils.contains(encoder.getRoot(), GSDimensionInfoEncoder.PRESENTATION); Assert.assertNotNull(el); el = ElementUtils.contains(encoder.getRoot(), GSDimensionInfoEncoder.RESOLUTION); @@ -213,7 +213,7 @@ public class GSFeatureEncoderTest extends GeoserverRESTPublisherTest { // LOGGER.info(encoder.toString()); final String metadata = "elevation"; - encoder.setMetadataDimension(metadata, elevationDimension); + encoder.setMetadata(metadata, elevationDimension); elevationDimension.setPresentation(PresentationDiscrete.DISCRETE_INTERVAL, BigDecimal.valueOf(10)); @@ -234,6 +234,17 @@ public class GSFeatureEncoderTest extends GeoserverRESTPublisherTest { } + /** + * Test method for virtual table encoding / SQL view layer integration + * + * Settings information for integration tests + * - test is based on the data used in http://docs.geoserver.org/latest/en/user/data/database/sqlview.html#parameterizing-sql-views + * (states shapefile - available in testdata/states.zip) + * - create a postgis db + * - import the states shapefile (using shp2pgsql or Postgis shapefile uploader) + * - In Geoserver, create a postgis datastore for this DB, with the name "statesdb" + * + */ @Test public void testSQLViewIntegration(){ @@ -241,7 +252,8 @@ public class GSFeatureEncoderTest extends GeoserverRESTPublisherTest { return; deleteAll(); GeoServerRESTPublisher publisher = new GeoServerRESTPublisher(RESTURL, RESTUSER, RESTPW); - + + String storeName = "statesdb"; //name of the datastore setup for tests String layerName = "my_sqlviewlayer"; String nativeName = "popstates"; diff --git a/src/test/resources/testdata/states.zip b/src/test/resources/testdata/states.zip new file mode 100644 index 0000000..4865e27 Binary files /dev/null and b/src/test/resources/testdata/states.zip differ