Coverage for gws-app/gws/plugin/ows_client/wms/layer.py: 0%
23 statements
« prev ^ index » next coverage.py v7.11.0, created at 2025-10-16 23:09 +0200
« prev ^ index » next coverage.py v7.11.0, created at 2025-10-16 23:09 +0200
1"""WMS tree layer."""
3import gws
4import gws.base.layer
5import gws.config.util
7from . import provider
9gws.ext.new.layer('wms')
12class Config(gws.base.layer.Config, gws.base.layer.tree.Config):
13 """WMS tree layer configuration."""
15 provider: provider.Config
16 """WMS provider"""
19class Object(gws.base.layer.group.Object):
20 serviceProvider: provider.Object
22 def configure_group(self):
23 self.configure_provider()
25 def leaf_layer_maker(source_layers):
26 return dict(
27 type='wmsflat',
28 _defaultProvider=self.serviceProvider,
29 _defaultSourceLayers=source_layers,
30 )
32 configs = gws.base.layer.tree.layer_configs_from_layer(
33 self,
34 self.serviceProvider.sourceLayers,
35 leaf_layer_maker,
36 )
38 self.configure_group_layers(configs)
40 def configure_provider(self):
41 return gws.config.util.configure_service_provider_for(self, provider.Object)
43 def configure_metadata(self):
44 if super().configure_metadata():
45 return True
46 self.metadata = self.serviceProvider.metadata
47 return True