@@ -74,19 +74,7 @@ func (src *WMS) ToV3(target *pdoknlv3.WMS) {
7474 }
7575
7676 dst .Spec .Options = ConvertOptionsV2ToV3 (src .Spec .Options )
77- if hc := src .Spec .Kubernetes .HealthCheck ; hc != nil {
78- switch {
79- case hc .Querystring != nil :
80- dst .Spec .HealthCheck = & pdoknlv3.HealthCheckWMS {
81- Querystring : hc .Querystring ,
82- Mimetype : hc .Mimetype ,
83- }
84- case hc .Boundingbox != nil :
85- dst .Spec .HealthCheck = & pdoknlv3.HealthCheckWMS {
86- Boundingbox : smoothoperatorutils .Pointer (sharedModel .ExtentToBBox (strings .ReplaceAll (* hc .Boundingbox , "," , " " ))),
87- }
88- }
89- }
77+ dst .Spec .HealthCheck = convertHealthCheckToV3 (src .Spec .Kubernetes .HealthCheck )
9078
9179 service := pdoknlv3.WMSService {
9280 URL : CreateBaseURL ("https://service.pdok.nl" , "wms" , src .Spec .General ),
@@ -153,6 +141,24 @@ func (src *WMS) ToV3(target *pdoknlv3.WMS) {
153141 dst .Spec .Service = service
154142}
155143
144+ func convertHealthCheckToV3 (v2 * HealthCheck ) * pdoknlv3.HealthCheckWMS {
145+ if v2 != nil {
146+ switch {
147+ case v2 .Querystring != nil :
148+ return & pdoknlv3.HealthCheckWMS {
149+ Querystring : v2 .Querystring ,
150+ Mimetype : v2 .Mimetype ,
151+ }
152+ case v2 .Boundingbox != nil :
153+ return & pdoknlv3.HealthCheckWMS {
154+ Boundingbox : smoothoperatorutils .Pointer (sharedModel .ExtentToBBox (strings .ReplaceAll (* v2 .Boundingbox , "," , " " ))),
155+ }
156+ }
157+ }
158+
159+ return nil
160+ }
161+
156162// ConvertFrom converts the Hub version (v3) to this WMS (v2beta1).
157163//
158164//nolint:revive
@@ -166,19 +172,7 @@ func (dst *WMS) ConvertFrom(srcRaw conversion.Hub) error {
166172 dst .Spec .General = LabelsToV2General (src .ObjectMeta .Labels )
167173
168174 dst .Spec .Kubernetes = NewV2KubernetesObject (src .Spec .Lifecycle , src .Spec .PodSpecPatch , src .Spec .HorizontalPodAutoscalerPatch )
169- if src .Spec .HealthCheck != nil {
170- switch {
171- case src .Spec .HealthCheck .Querystring != nil :
172- dst .Spec .Kubernetes .HealthCheck = & HealthCheck {
173- Querystring : src .Spec .HealthCheck .Querystring ,
174- Mimetype : src .Spec .HealthCheck .Mimetype ,
175- }
176- case src .Spec .HealthCheck .Boundingbox != nil :
177- dst .Spec .Kubernetes .HealthCheck = & HealthCheck {
178- Boundingbox : smoothoperatorutils .Pointer (strings .ReplaceAll (src .Spec .HealthCheck .Boundingbox .ToExtent (), " " , "," )),
179- }
180- }
181- }
175+ dst .Spec .Kubernetes .HealthCheck = convertHealthCheckToV2 (src .Spec .HealthCheck )
182176
183177 dst .Spec .Options = ConvertOptionsV3ToV2 (src .Spec .Options )
184178
@@ -265,6 +259,24 @@ func (dst *WMS) ConvertFrom(srcRaw conversion.Hub) error {
265259 return nil
266260}
267261
262+ func convertHealthCheckToV2 (v3 * pdoknlv3.HealthCheckWMS ) * HealthCheck {
263+ if v3 != nil {
264+ switch {
265+ case v3 .Querystring != nil :
266+ return & HealthCheck {
267+ Querystring : v3 .Querystring ,
268+ Mimetype : v3 .Mimetype ,
269+ }
270+ case v3 .Boundingbox != nil :
271+ return & HealthCheck {
272+ Boundingbox : smoothoperatorutils .Pointer (strings .ReplaceAll (v3 .Boundingbox .ToExtent (), " " , "," )),
273+ }
274+ }
275+ }
276+
277+ return nil
278+ }
279+
268280func (v2Service WMSService ) GetTopLayer () (* WMSLayer , error ) {
269281 // Only one layer defined that has data
270282 if len (v2Service .Layers ) == 1 && v2Service .Layers [0 ].Data != nil {
0 commit comments