Coverage for gws-app/gws/base/ows/server/core.py: 0%

35 statements  

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

1"""Base data structures for OWS services.""" 

2 

3from typing import Optional 

4 

5import gws 

6 

7 

8class Error(gws.Error): 

9 pass 

10 

11 

12class LayerCaps(gws.Data): 

13 """Layer wrapper object. 

14 

15 A `LayerCaps` object wraps a `Layer` object and provides 

16 additional data needed to represent a layer in an OWS service. 

17 """ 

18 

19 layer: gws.Layer 

20 title: str 

21 

22 isGroup: bool 

23 hasLegend: bool 

24 isSearchable: bool 

25 

26 layerName: str 

27 layerNameQ: str 

28 featureName: str 

29 featureNameQ: str 

30 geometryName: str 

31 geometryNameQ: str 

32 

33 maxScale: int 

34 minScale: int 

35 bounds: list[gws.Bounds] 

36 

37 children: list['LayerCaps'] 

38 leaves: list['LayerCaps'] 

39 

40 model: Optional[gws.Model] 

41 xmlNamespace: Optional[gws.XmlNamespace] 

42 

43 

44class FeatureCollectionMember(gws.Data): 

45 """A member of a Feature Collection.""" 

46 

47 feature: gws.Feature 

48 layer: Optional[gws.Layer] 

49 layerCaps: Optional[LayerCaps] 

50 

51 

52class FeatureCollection(gws.Data): 

53 """Feature Collection.""" 

54 

55 members: list[FeatureCollectionMember] 

56 values: list 

57 timestamp: str 

58 numMatched: int 

59 numReturned: int 

60 

61 

62IMAGE_VERBS = { 

63 gws.OwsVerb.GetMap, 

64 gws.OwsVerb.GetTile, 

65 gws.OwsVerb.GetLegendGraphic, 

66} 

67"""OWS verbs which are supposed to return images."""