summaryrefslogtreecommitdiffstats
path: root/container-search/src/main/java/com/yahoo/search/result/FeatureData.java
diff options
context:
space:
mode:
Diffstat (limited to 'container-search/src/main/java/com/yahoo/search/result/FeatureData.java')
-rw-r--r--container-search/src/main/java/com/yahoo/search/result/FeatureData.java22
1 files changed, 14 insertions, 8 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/result/FeatureData.java b/container-search/src/main/java/com/yahoo/search/result/FeatureData.java
index f0637473ef5..fd41d4ee10c 100644
--- a/container-search/src/main/java/com/yahoo/search/result/FeatureData.java
+++ b/container-search/src/main/java/com/yahoo/search/result/FeatureData.java
@@ -74,12 +74,15 @@ public class FeatureData implements Inspectable, JsonProducer {
* (that is, if it is a tensor with nonzero rank)
*/
public Double getDouble(String featureName) {
- if (decodedDoubles != null && decodedDoubles.containsKey(featureName))
- return decodedDoubles.get(featureName);
- Double value = decodeDouble(featureName);
if (decodedDoubles == null)
decodedDoubles = new HashMap<>();
- decodedDoubles.put(featureName, value);
+
+ Double value = decodedDoubles.get(featureName);
+ if (value != null) return value;
+
+ value = decodeDouble(featureName);
+ if (value != null)
+ decodedDoubles.put(featureName, value);
return value;
}
@@ -99,12 +102,15 @@ public class FeatureData implements Inspectable, JsonProducer {
* This will return any feature value: Scalars are returned as a rank 0 tensor.
*/
public Tensor getTensor(String featureName) {
- if (decodedTensors != null && decodedTensors.containsKey(featureName))
- return decodedTensors.get(featureName);
- Tensor value = decodeTensor(featureName);
if (decodedTensors == null)
decodedTensors = new HashMap<>();
- decodedTensors.put(featureName, value);
+
+ Tensor value = decodedTensors.get(featureName);
+ if (value != null) return value;
+
+ value = decodeTensor(featureName);
+ if (value != null)
+ decodedTensors.put(featureName, value);
return value;
}