From f6ea226dd6ffba3ebbf9da4fa3a2bf0a669eb08b Mon Sep 17 00:00:00 2001 From: Lyn Long Date: Tue, 17 Feb 2026 15:27:15 +1100 Subject: [PATCH 1/2] add parameter vocabs to collection --- .../java/au/org/aodn/ogcapi/server/core/mapper/Converter.java | 4 ++++ .../au/org/aodn/ogcapi/server/core/model/SummariesModel.java | 3 +++ .../server/core/model/enumeration/CollectionProperty.java | 3 ++- 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/server/src/main/java/au/org/aodn/ogcapi/server/core/mapper/Converter.java b/server/src/main/java/au/org/aodn/ogcapi/server/core/mapper/Converter.java index 2038557e..1a274bb1 100644 --- a/server/src/main/java/au/org/aodn/ogcapi/server/core/mapper/Converter.java +++ b/server/src/main/java/au/org/aodn/ogcapi/server/core/mapper/Converter.java @@ -227,6 +227,10 @@ default Collection getCollection(D m, Filter fil if(m.getSummaries().getScope() != null) { collection.getProperties().put(CollectionProperty.scope, m.getSummaries().getScope()); } + + if (m.getSummaries().getParameterVocabs() != null && !m.getSummaries().getParameterVocabs().isEmpty()) { + collection.getProperties().put(CollectionProperty.parameterVocabs, m.getSummaries().getParameterVocabs()); + } } return collection; diff --git a/server/src/main/java/au/org/aodn/ogcapi/server/core/model/SummariesModel.java b/server/src/main/java/au/org/aodn/ogcapi/server/core/model/SummariesModel.java index 098a122e..68a2f95c 100644 --- a/server/src/main/java/au/org/aodn/ogcapi/server/core/model/SummariesModel.java +++ b/server/src/main/java/au/org/aodn/ogcapi/server/core/model/SummariesModel.java @@ -48,4 +48,7 @@ public class SummariesModel { protected Map scope; protected String statement; + + @JsonProperty("parameter_vocabs") + protected List parameterVocabs; } diff --git a/server/src/main/java/au/org/aodn/ogcapi/server/core/model/enumeration/CollectionProperty.java b/server/src/main/java/au/org/aodn/ogcapi/server/core/model/enumeration/CollectionProperty.java index ee61c418..c0f411c9 100644 --- a/server/src/main/java/au/org/aodn/ogcapi/server/core/model/enumeration/CollectionProperty.java +++ b/server/src/main/java/au/org/aodn/ogcapi/server/core/model/enumeration/CollectionProperty.java @@ -24,7 +24,8 @@ public enum CollectionProperty { datasetGroup("dataset_group"), aiDescription("ai:description"), aiUpdateFrequency("ai:update_frequency"), - scope("scope"); + scope("scope"), + parameterVocabs("parameter_vocabs"); private final String value; From 6612cf849b447908caedbbba86e65acf999a989a Mon Sep 17 00:00:00 2001 From: Lyn Long Date: Tue, 17 Feb 2026 15:33:08 +1100 Subject: [PATCH 2/2] update test --- .../aodn/ogcapi/server/core/mapper/StacToCollectionTest.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/server/src/test/java/au/org/aodn/ogcapi/server/core/mapper/StacToCollectionTest.java b/server/src/test/java/au/org/aodn/ogcapi/server/core/mapper/StacToCollectionTest.java index bc4e901c..6a6c7339 100644 --- a/server/src/test/java/au/org/aodn/ogcapi/server/core/mapper/StacToCollectionTest.java +++ b/server/src/test/java/au/org/aodn/ogcapi/server/core/mapper/StacToCollectionTest.java @@ -111,6 +111,8 @@ public void verifyAddingPropertyWorks() { scope.put("code", "document"); scope.put("name", "IMOS publication"); + List parameterVocabs = Arrays.asList("wave", "temperature"); + StacCollectionModel model = StacCollectionModel .builder() .summaries( @@ -125,6 +127,7 @@ public void verifyAddingPropertyWorks() { .datasetGroup(datasetGroup) .aiDescription(aiDescription) .scope(scope) + .parameterVocabs(parameterVocabs) .build() ) .license("Attribution 4.0") @@ -154,6 +157,7 @@ public void verifyAddingPropertyWorks() { Assertions.assertEquals(aiDescription, collection.getProperties().get(CollectionProperty.aiDescription)); Assertions.assertEquals("document", ((Map) collection.getProperties().get(CollectionProperty.scope)).get("code")); + Assertions.assertEquals(parameterVocabs, collection.getProperties().get(CollectionProperty.parameterVocabs)); Assertions.assertNotNull(collection.getLinks()); Assertions.assertEquals(3, collection.getLinks().size()); }