Publishes a vector layer set to GeoServer. The layer source must have previously been defined as a GeoSever datastore.
Usage
publish_layer_set(gso, source, layers)
# S3 method for class 'geoserver'
publish_layer_set(gso, source, layers = NULL)
Arguments
- gso
An object of class `geoserver` containing GeoServer connection details.
- source
A valid connection to a PostGIS database (`RPostgres` connection object).
- layers
An optional character vector of layer names to check and publish. If `NULL` (default), all vector geometry layers in the source will be published.
Details
Iterates over a set of layers in a source database, checking whether each layer contains vector geometry. If the layer meets the criteria, it is published. If the `layers` parameter is `NULL`, the function will publish all layers with vector geometry in the source.
Prints an appropriate messages indicating success or failure.
See also
Other publish to GeoServer:
geoserver()
,
publish_bands()
,
publish_layer()
,
publish_raster()
,
register_datastore_postgis()
Examples
if (FALSE) { # \dontrun{
gso <- geoserver(
url = "http://localhost:8080/geoserver",
user = "admin",
password = "geoserver",
workspace = "sigugr_test"
)
gso <- gso |>
register_datastore_postgis(
"sigugr-postgis",
db_name = 'sigugr_example',
host = 'localhost',
port = 5432,
db_user = 'user',
db_password = 'password',
schema = "public"
)
source <- RPostgres::dbConnect(
RPostgres::Postgres(),
dbname = 'mydb',
host = 'localhost',
port = '5432',
user = 'user',
password = 'password'
)
gso |>
publish_layer_set(source)
} # }