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

23 statements  

« prev     ^ index     » next       coverage.py v7.11.0, created at 2025-10-16 23:09 +0200

1"""WFS tree layer.""" 

2 

3import gws 

4import gws.base.layer 

5import gws.config.util 

6 

7from . import provider 

8 

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

10 

11 

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

13 """WFS tree layer configuration.""" 

14 

15 provider: provider.Config 

16 """WFS provider.""" 

17 

18 

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

20 serviceProvider: provider.Object 

21 

22 def configure_group(self): 

23 self.configure_provider() 

24 

25 def leaf_layer_maker(source_layers): 

26 return dict( 

27 type='wfsflat', 

28 _defaultProvider=self.serviceProvider, 

29 _defaultSourceLayers=source_layers, 

30 ) 

31 

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

33 self, 

34 self.serviceProvider.sourceLayers, 

35 leaf_layer_maker, 

36 ) 

37 

38 self.configure_group_layers(configs) 

39 

40 def configure_provider(self): 

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

42 

43 def configure_metadata(self): 

44 if super().configure_metadata(): 

45 return True 

46 self.metadata = self.serviceProvider.metadata 

47 return True