Coverage for gws-app/gws/plugin/ows_client/wms/layer.py: 0%

23 statements  

« prev     ^ index     » next       coverage.py v7.8.0, created at 2025-04-17 01:37 +0200

1"""WMS tree layer.""" 

2 

3import gws 

4import gws.base.layer 

5import gws.config.util 

6 

7from . import provider 

8 

9gws.ext.new.layer('wms') 

10 

11 

12class Config(gws.base.layer.Config, gws.base.layer.tree.Config): 

13 provider: provider.Config 

14 """WMS provider""" 

15 

16 

17class Object(gws.base.layer.group.Object): 

18 serviceProvider: provider.Object 

19 

20 def configure_group(self): 

21 self.configure_provider() 

22 

23 def leaf_layer_maker(source_layers): 

24 return dict( 

25 type='wmsflat', 

26 _defaultProvider=self.serviceProvider, 

27 _defaultSourceLayers=source_layers, 

28 ) 

29 

30 configs = gws.base.layer.tree.layer_configs_from_layer( 

31 self, 

32 self.serviceProvider.sourceLayers, 

33 leaf_layer_maker, 

34 ) 

35 

36 self.configure_group_layers(configs) 

37 

38 def configure_provider(self): 

39 return gws.config.util.configure_service_provider_for(self, provider.Object) 

40 

41 def configure_metadata(self): 

42 if super().configure_metadata(): 

43 return True 

44 self.metadata = self.serviceProvider.metadata 

45 return True