Skip to content

Feature: WMS Update #540

@jokiefer

Description

@jokiefer

Environment

  • Python version: 3.12
  • MrMap version: latest stable release

User Story

As a GIS administrator, I want MrMap to automatically update registered OGC WMS services in background tasks, so that service capabilities and layer metadata remain synchronized without manual re-registration.

Acceptance criteria

  • Given I am a GIS administrator and a WMS service is registered in MrMap, when MrMap executes scheduled background tasks, I want the system to periodically fetch the service’s GetCapabilities document and check for updates.
  • Given a background update task runs, when only metadata changes occur (e.g., title, abstract, keywords, styles, bounding boxes), I want MrMap to automatically update the stored metadata without user interaction.
  • Given a background update task runs, when layers are added to the WMS, I want MrMap to automatically register the new layers and integrate them into the existing layer tree.
  • Given a background update task runs, when layer order or grouping changes in a way that can be automatically mapped, I want MrMap to update the internal layer tree accordingly.
  • Given a background update task runs, when structural changes occur that cannot be resolved automatically (e.g., layer hierarchy conflicts, renamed layers with ambiguous mapping, or incompatible tree restructuring), I want MrMap to flag the service as requiring manual review.
  • Given a service requires manual review, when I open the service management interface, I want to see a notification describing the detected structural conflict and tools to resolve the layer mapping manually.
  • Given an update attempt occurs, when the GetCapabilities request fails or returns invalid data, I want MrMap to log the error and retry during the next scheduled update cycle.
  • Given background updates occur, when changes are applied automatically, I want MrMap to record them in an audit log for traceability.

Metadata

Metadata

Assignees

Labels

type: storyA user story/piece of work

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions