diff options
Diffstat (limited to 'container-search/src/main/java/com/yahoo/search/result/Hit.java')
-rw-r--r-- | container-search/src/main/java/com/yahoo/search/result/Hit.java | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/result/Hit.java b/container-search/src/main/java/com/yahoo/search/result/Hit.java index d81880cc548..4d3b8bb0884 100644 --- a/container-search/src/main/java/com/yahoo/search/result/Hit.java +++ b/container-search/src/main/java/com/yahoo/search/result/Hit.java @@ -333,6 +333,7 @@ public class Hit extends ListenableFreezableClass implements Data, Comparable<Hi */ public void setFillable() { if (filled == null) { + //TODO Should have used Set.of(), but it checks that contains is not called with null filled = Collections.emptySet(); unmodifiableFilled = filled; } @@ -347,6 +348,7 @@ public class Hit extends ListenableFreezableClass implements Data, Comparable<Hi */ public void setFilled(String summaryClass) { if (filled == null || filled.isEmpty()) { + //TODO Should have used Set.of(), but it checks that contains is not called with null filled = Collections.singleton(summaryClass); unmodifiableFilled = filled; } else if (filled.size() == 1) { @@ -483,7 +485,7 @@ public class Hit extends ListenableFreezableClass implements Data, Comparable<Hi private Map<String, Object> getUnmodifiableFieldMap() { if (unmodifiableFieldMap == null) { if (fields == null) { - return Collections.emptyMap(); + return Map.of(); } else { unmodifiableFieldMap = Collections.unmodifiableMap(fields); } @@ -574,12 +576,12 @@ public class Hit extends ListenableFreezableClass implements Data, Comparable<Hi /** Attach some data to this hit for this searcher */ public void setSearcherSpecificMetaData(Searcher searcher, Object data) { if (searcherSpecificMetaData == null) { - searcherSpecificMetaData = Collections.singletonMap(searcher, data); + if (data != null) + searcherSpecificMetaData = Map.of(searcher, data); } else { if (searcherSpecificMetaData.size() == 1) { - Object tmp = searcherSpecificMetaData.get(searcher); - if (tmp != null) { - searcherSpecificMetaData = Collections.singletonMap(searcher, data); + if (searcherSpecificMetaData.containsKey(searcher)) { + searcherSpecificMetaData = (data != null) ? Map.of(searcher, data) : null; } else { searcherSpecificMetaData = new TreeMap<>(searcherSpecificMetaData); searcherSpecificMetaData.put(searcher, data); |