Coverage for gws-app/gws/base/ows/client/model.py: 0%

24 statements  

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

1"""OWS model.""" 

2 

3import gws 

4import gws.base.feature 

5import gws.base.model 

6import gws.config.util 

7import gws.gis.crs 

8import gws.gis.extent 

9import gws.gis.source 

10 

11 

12class Object(gws.base.model.default_model.Object): 

13 """Generic OWS Model.""" 

14 

15 serviceProvider: gws.OwsProvider 

16 sourceLayers: list[gws.SourceLayer] 

17 

18 def configure(self): 

19 self.configure_model() 

20 

21 def configure_provider(self): 

22 pass 

23 

24 def configure_sources(self): 

25 self.configure_source_layers() 

26 

27 def configure_source_layers(self): 

28 return gws.config.util.configure_source_layers_for(self, self.serviceProvider.sourceLayers, is_queryable=True) 

29 

30 def find_features(self, search, mc): 

31 if not self.sourceLayers: 

32 return [] 

33 return [ 

34 self.feature_from_record(r, mc) 

35 for r in self.serviceProvider.get_features(search, self.sourceLayers) 

36 ] 

37 

38 def props(self, user): 

39 return gws.u.merge( 

40 super().props(user), 

41 canCreate=False, 

42 canDelete=False, 

43 canWrite=False, 

44 )