diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2019-01-14 22:36:25 +0100 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2019-01-14 22:36:25 +0100 |
commit | 32dcc4e448f3d2fe17228ea7ed8968ba4760fb58 (patch) | |
tree | 8b5d5b6a785d7ff5b3ee4ad2e297955f74f0670c /container-search/src/main | |
parent | 86336dc42b3d412abf7eb986fbe2bc9c44ea8e68 (diff) |
Also handle the reverse conversion in the GroupingExecutor.
Diffstat (limited to 'container-search/src/main')
-rw-r--r-- | container-search/src/main/java/com/yahoo/search/grouping/result/BoolId.java | 13 | ||||
-rw-r--r-- | container-search/src/main/java/com/yahoo/search/grouping/vespa/ResultBuilder.java | 4 |
2 files changed, 17 insertions, 0 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/grouping/result/BoolId.java b/container-search/src/main/java/com/yahoo/search/grouping/result/BoolId.java new file mode 100644 index 00000000000..fbb59262828 --- /dev/null +++ b/container-search/src/main/java/com/yahoo/search/grouping/result/BoolId.java @@ -0,0 +1,13 @@ +// Copyright 2019 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.search.grouping.result; + +/** + * This class is used in {@link Group} instances where the identifying expression evaluated to a {@link Boolean}. + * + * @author @baldersheim + */ +public class BoolId extends ValueGroupId<Boolean> { + public BoolId(Boolean value) { + super("bool", value); + } +} diff --git a/container-search/src/main/java/com/yahoo/search/grouping/vespa/ResultBuilder.java b/container-search/src/main/java/com/yahoo/search/grouping/vespa/ResultBuilder.java index bbcead37acc..2402be27b9c 100644 --- a/container-search/src/main/java/com/yahoo/search/grouping/vespa/ResultBuilder.java +++ b/container-search/src/main/java/com/yahoo/search/grouping/vespa/ResultBuilder.java @@ -3,6 +3,7 @@ package com.yahoo.search.grouping.vespa; import com.yahoo.search.grouping.Continuation; import com.yahoo.search.grouping.GroupingRequest; +import com.yahoo.search.grouping.result.BoolId; import com.yahoo.search.grouping.result.DoubleBucketId; import com.yahoo.search.grouping.result.DoubleId; import com.yahoo.search.grouping.result.Group; @@ -30,6 +31,7 @@ import com.yahoo.searchlib.aggregation.MinAggregationResult; import com.yahoo.searchlib.aggregation.StandardDeviationAggregationResult; import com.yahoo.searchlib.aggregation.SumAggregationResult; import com.yahoo.searchlib.aggregation.XorAggregationResult; +import com.yahoo.searchlib.expression.BoolResultNode; import com.yahoo.searchlib.expression.ExpressionNode; import com.yahoo.searchlib.expression.FloatBucketResultNode; import com.yahoo.searchlib.expression.FloatResultNode; @@ -212,6 +214,8 @@ class ResultBuilder { return new DoubleId(res.getFloat()); } else if (res instanceof IntegerResultNode) { return new LongId(res.getInteger()); + } else if (res instanceof BoolResultNode) { + return new BoolId(((BoolResultNode)res).getValue()); } else if (res instanceof NullResultNode) { return new NullId(); } else if (res instanceof RawResultNode) { |