Add governed SPW bathymetry analysis
This commit is contained in:
@@ -233,11 +233,11 @@ SOURCE_DEFINITIONS = (
|
||||
attribution="Service public de Wallonie",
|
||||
license_note="Consult the license of each Geoportail Wallonie product.",
|
||||
limitation_message=(
|
||||
"Bounded PICC buildings, road axes and hydrography are operational; "
|
||||
"Bounded PICC buildings, road axes, hydrography and operator-imported SPW bathymetry are operational; "
|
||||
"other Walloon themes remain unavailable until separately governed."
|
||||
),
|
||||
materialized_source_names=("spw_picc",),
|
||||
operational_themes=("buildings", "roads", "surface_water"),
|
||||
materialized_source_names=("spw_picc", "spw_bathymetry"),
|
||||
operational_themes=("buildings", "roads", "surface_water", "bathymetry"),
|
||||
),
|
||||
_contract(
|
||||
source_name="urbis",
|
||||
@@ -348,15 +348,16 @@ FLANDERS_THEME_DATASETS: dict[str, dict[str, tuple[str, ...]]] = {
|
||||
"flood_climate": {"vmm_flood_hazard": ()},
|
||||
}
|
||||
|
||||
REGIONAL_THEME_DATASETS: dict[str, dict[str, tuple[str, ...]]] = {
|
||||
REGIONAL_THEME_DATASETS: dict[str, dict[str, dict[str, tuple[str, ...]]]] = {
|
||||
"spw_geoportail": {
|
||||
"buildings": ("buildings",),
|
||||
"roads": ("roads",),
|
||||
"surface_water": ("water",),
|
||||
"buildings": {"spw_picc": ("buildings",)},
|
||||
"roads": {"spw_picc": ("roads",)},
|
||||
"surface_water": {"spw_picc": ("water",)},
|
||||
"bathymetry": {"spw_bathymetry": ()},
|
||||
},
|
||||
"urbis": {
|
||||
"buildings": ("buildings",),
|
||||
"parcels": ("parcels",),
|
||||
"buildings": {"urbis": ("buildings",)},
|
||||
"parcels": {"urbis": ("parcels",)},
|
||||
},
|
||||
}
|
||||
|
||||
@@ -437,10 +438,10 @@ class CoverageRegistryService:
|
||||
continue
|
||||
layer_names = theme_sources[dataset.source_name]
|
||||
elif definition.contract.source_name in REGIONAL_THEME_DATASETS:
|
||||
theme_layers = REGIONAL_THEME_DATASETS[definition.contract.source_name].get(theme)
|
||||
if theme_layers is None:
|
||||
theme_sources = REGIONAL_THEME_DATASETS[definition.contract.source_name].get(theme, {})
|
||||
if dataset.source_name not in theme_sources:
|
||||
continue
|
||||
layer_names = theme_layers
|
||||
layer_names = theme_sources[dataset.source_name]
|
||||
metadata = dataset.source_metadata if isinstance(dataset.source_metadata, dict) else {}
|
||||
coverage_zones = metadata.get("coverage_zones") or metadata.get("coverage_zone") or []
|
||||
if isinstance(coverage_zones, str):
|
||||
|
||||
Reference in New Issue
Block a user