Skip to content

Commit 63f37a1

Browse files
authored
Merge pull request #102 from PDOK/wr/fix-constraints
set full constraints
2 parents d7c0686 + bd6fbc1 commit 63f37a1

File tree

1 file changed

+78
-4
lines changed
  • internal/controller/capabilitiesgenerator

1 file changed

+78
-4
lines changed

internal/controller/capabilitiesgenerator/mapper.go

Lines changed: 78 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -103,16 +103,90 @@ func MapWFSToCapabilitiesGeneratorInput(wfs *pdoknlv3.WFS, ownerInfo *smoothoper
103103
if operationsMetadata == nil {
104104
operationsMetadata = &wfs200.OperationsMetadata{}
105105
}
106-
operationsMetadata.Constraint = append(operationsMetadata.Constraint, wfs200.Constraint{
107-
Name: "CountDefault",
108-
DefaultValue: smoothoperatorutils.Pointer(strconv.Itoa(*wfs.Spec.Service.CountDefault)),
109-
})
106+
operationsMetadata.Constraint = getConstraints(strconv.Itoa(*wfs.Spec.Service.CountDefault))
110107
config.Services.WFS200Config.Wfs200.Capabilities.OperationsMetadata = operationsMetadata
111108
}
112109

113110
return &config, nil
114111
}
115112

113+
func getConstraints(countDefault string) []wfs200.Constraint {
114+
return []wfs200.Constraint{
115+
{
116+
Name: "ImplementsBasicWFS",
117+
DefaultValue: ptr.To("TRUE"),
118+
},
119+
{
120+
Name: "ImplementsTransactionalWFS",
121+
DefaultValue: ptr.To("FALSE"),
122+
},
123+
{
124+
Name: "ImplementsLockingWFS",
125+
DefaultValue: ptr.To("FALSE"),
126+
},
127+
{
128+
Name: "KVPEncoding",
129+
DefaultValue: ptr.To("TRUE"),
130+
},
131+
{
132+
Name: "XMLEncoding",
133+
DefaultValue: ptr.To("TRUE"),
134+
},
135+
{
136+
Name: "SOAPEncoding",
137+
DefaultValue: ptr.To("FALSE"),
138+
},
139+
{
140+
Name: "ImplementsInheritance",
141+
DefaultValue: ptr.To("FALSE"),
142+
},
143+
{
144+
Name: "ImplementsRemoteResolve",
145+
DefaultValue: ptr.To("FALSE"),
146+
},
147+
{
148+
Name: "ImplementsResultPaging",
149+
DefaultValue: ptr.To("TRUE"),
150+
},
151+
{
152+
Name: "ImplementsStandardJoins",
153+
DefaultValue: ptr.To("FALSE"),
154+
},
155+
{
156+
Name: "ImplementsSpatialJoins",
157+
DefaultValue: ptr.To("FALSE"),
158+
},
159+
{
160+
Name: "ImplementsTemporalJoins",
161+
DefaultValue: ptr.To("FALSE"),
162+
},
163+
{
164+
Name: "ImplementsFeatureVersioning",
165+
DefaultValue: ptr.To("FALSE"),
166+
},
167+
{
168+
Name: "ManageStoredQueries",
169+
DefaultValue: ptr.To("FALSE"),
170+
},
171+
{
172+
Name: "PagingIsTransactionSafe",
173+
DefaultValue: ptr.To("FALSE"),
174+
},
175+
{
176+
Name: "CountDefault",
177+
DefaultValue: &countDefault,
178+
},
179+
{
180+
Name: "QueryExpressions",
181+
AllowedValues: &wfs200.AllowedValues{Value: []string{
182+
"wfs:Query",
183+
"wfs:StoredQuery",
184+
},
185+
},
186+
},
187+
}
188+
}
189+
116190
func getFeatureTypeList(wfs *pdoknlv3.WFS, ownerInfo *smoothoperatorv1.OwnerInfo) (*wfs200.FeatureTypeList, error) {
117191
typeList := wfs200.FeatureTypeList{}
118192

0 commit comments

Comments
 (0)