GeoserverConfig (GeoserverConfig v0.3.0)

Copy Markdown View Source

Top-level API module for interacting with a GeoServer instance via REST.

All functions require a GeoserverConfig.Connection as their first argument. Build one with GeoserverConfig.Connection.new/3, from_env/1, or from_application_env/2.

Quick start

conn = GeoserverConfig.Connection.from_env()
{:ok, workspaces} = GeoserverConfig.fetch_workspaces(conn)

Functionality

  • Manage workspaces
  • Handle datastores (PostGIS, GeoPackage, Shapefile, WFS)
  • Manage coverage stores and coverages (GeoTIFF, COGs)
  • Manage styles (SLD-based)
  • Assign styles to layers
  • Manage layer groups

Summary

Functions

Functions

add_layer_to_group(conn, group_name, layer_name, style_name \\ nil)

assign_style_to_layer(conn, workspace, layer_name, style_name, style_workspace \\ nil)

copy_style(conn, source_style, source_workspace, target_style, target_workspace, opts)

See GeoserverConfig.Styles.copy_style/6.

create_coverage(conn, workspace, coverage_store, coverage_name, params, file_path)

See GeoserverConfig.Coverages.create_coverage/6.

create_coveragestore(conn, workspace, store_name, geotiff_path, description \\ "", opts \\ %{})

create_datastore(conn, workspace, name, type, connection_params)

See GeoserverConfig.Datastores.create_datastore/5.

create_featuretype(conn, workspace, datastore, featuretype_name)

create_featuretype(conn, workspace, datastore, featuretype_name, params)

create_layer_group(conn, body)

See GeoserverConfig.LayerGroups.create_layer_group/2.

create_style(conn, opts)

See GeoserverConfig.Styles.create_style/2.

create_workspace(conn, workspace_name)

See GeoserverConfig.Workspaces.create_workspace/2.

delete_coverage(conn, workspace, coverage_store, coverage_name, recurse \\ false)

delete_coveragestore(conn, workspace, name)

See GeoserverConfig.Coveragestores.delete_coveragestore/3.

delete_datastore(conn, workspace, datastore_name, recurse \\ false)

delete_featuretype(conn, workspace, datastore, featuretype_name)

delete_featuretype(conn, workspace, datastore, featuretype_name, recurse)

delete_layer_group(conn, name)

See GeoserverConfig.LayerGroups.delete_layer_group/2.

delete_style(conn, style_name, workspace \\ nil, opts \\ [])

delete_workspace(conn, workspace_name)

See GeoserverConfig.Workspaces.delete_workspace/2.

fetch_workspaces(conn)

See GeoserverConfig.Workspaces.fetch_workspaces/1.

get_style(conn, workspace, style_name)

See GeoserverConfig.Styles.get_style/3.

list_coverages(conn, workspace, coverage_store)

See GeoserverConfig.Coverages.list_coverages/3.

list_coveragestores(conn, workspace)

See GeoserverConfig.Coveragestores.list_coveragestores/2.

list_datastores(conn, workspace)

See GeoserverConfig.Datastores.list_datastores/2.

list_featuretypes(conn, workspace, datastore)

list_featuretypes(conn, workspace, datastore, list)

list_layer_groups(conn)

See GeoserverConfig.LayerGroups.list_layer_groups/1.

list_styles(conn)

See GeoserverConfig.Styles.list_styles/1.

list_styles_workspace_specific(conn, workspace)

See GeoserverConfig.Styles.list_styles_workspace_specific/2.

move_style(conn, style_name, source_workspace, target_workspace, opts)

See GeoserverConfig.Styles.move_style/5.

remove_layer_from_group(conn, group_name, layer_name)

See GeoserverConfig.LayerGroups.remove_layer_from_group/3.

update_coveragestore(conn, workspace, store_name, updated_params)

See GeoserverConfig.Coveragestores.update_coveragestore/4.

update_datastore(conn, workspace, datastore_name, datastore_type, connection_params)

See GeoserverConfig.Datastores.update_datastore/5.

update_featuretype(conn, workspace, datastore, featuretype_name)

update_featuretype(conn, workspace, datastore, featuretype_name, params)

update_featuretype(conn, workspace, datastore, featuretype_name, params, recalculate)

update_layer_group(conn, name, body)

See GeoserverConfig.LayerGroups.update_layer_group/3.

update_style(conn, opts)

See GeoserverConfig.Styles.update_style/2.

update_workspace(conn, old_workspace_name, new_workspace_name)

See GeoserverConfig.Workspaces.update_workspace/3.

write_sld_file(style_file_path, sld_content)

See GeoserverConfig.Styles.write_sld_file/2.