From a599e4e18d467aeb322fd62acabf3d742bea9079 Mon Sep 17 00:00:00 2001 From: Hylke van der Schaaf Date: Tue, 25 Jul 2023 11:36:13 +0200 Subject: [PATCH] Fixed aggregate references --- .../sensorthingsmanager/aggregation/AggregationData.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main/java/de/fraunhofer/iosb/ilt/sensorthingsmanager/aggregation/AggregationData.java b/src/main/java/de/fraunhofer/iosb/ilt/sensorthingsmanager/aggregation/AggregationData.java index 2ea0da9..6225e69 100644 --- a/src/main/java/de/fraunhofer/iosb/ilt/sensorthingsmanager/aggregation/AggregationData.java +++ b/src/main/java/de/fraunhofer/iosb/ilt/sensorthingsmanager/aggregation/AggregationData.java @@ -358,9 +358,14 @@ private void checkReferenceFromDs(Entity sourceDs, Entity aggregateMds, Aggregat String aggKey = null; Object aggId = null; if (sourceEqualsTarget) { - expectedAggFor = "/Datastreams(" + formatKeyValuesForUrl(sourceDs.getPrimaryKeyValues()) + ")"; + final Object[] primaryKeyValues = sourceDs.getPrimaryKeyValues(); + expectedAggFor = "/Datastreams(" + formatKeyValuesForUrl(primaryKeyValues) + ")"; aggKey = KEY_AGGREGATE_SOURCE_D; - aggId = formatKeyValuesForUrl(sourceDs.getPrimaryKeyValues()); + if (primaryKeyValues.length == 1) { + aggId = primaryKeyValues[0]; + } else { + aggId = formatKeyValuesForUrl(primaryKeyValues); + } } else { expectedAggFor = sourceDs.getSelfLink(); }