aboutsummaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryMap.java
diff options
context:
space:
mode:
Diffstat (limited to 'config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryMap.java')
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryMap.java25
1 files changed, 13 insertions, 12 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryMap.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryMap.java
index c65ed7dc762..9e1740b4073 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryMap.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/SummaryMap.java
@@ -14,13 +14,13 @@ import java.util.Map;
/**
* A summary map (describing search-time summary field transformations)
- * derived from a search definition
+ * derived from a Schema.
*
- * @author bratseth
+ * @author bratseth
*/
public class SummaryMap extends Derived implements SummarymapConfig.Producer {
- private Map<String,FieldResultTransform> resultTransforms = new java.util.LinkedHashMap<>();
+ private final Map<String, FieldResultTransform> resultTransforms = new java.util.LinkedHashMap<>();
/** Creates a summary map from a search definition */
SummaryMap(Schema schema) {
@@ -49,32 +49,32 @@ public class SummaryMap extends Derived implements SummarymapConfig.Producer {
summaryField.getTransform()==SummaryTransform.MATCHED_ELEMENTS_FILTER ||
summaryField.getTransform()==SummaryTransform.MATCHED_ATTRIBUTE_ELEMENTS_FILTER)
{
- resultTransforms.put(summaryField.getName(),new FieldResultTransform(summaryField.getName(),
- summaryField.getTransform(),
- summaryField.getSingleSource()));
+ resultTransforms.put(summaryField.getName(), new FieldResultTransform(summaryField.getName(),
+ summaryField.getTransform(),
+ summaryField.getSingleSource()));
} else {
// Note: Currently source mapping is handled in the indexing statement,
// by creating a summary field for each of the values
// This works, but is suboptimal. We could consolidate to a minimal set and
// use the right value from the minimal set as the third parameter here,
// and add "override" commands to multiple static values
- resultTransforms.put(summaryField.getName(),new FieldResultTransform(summaryField.getName(),
- summaryField.getTransform(),
- summaryField.getName()));
+ resultTransforms.put(summaryField.getName(), new FieldResultTransform(summaryField.getName(),
+ summaryField.getTransform(),
+ summaryField.getName()));
}
}
}
/** Returns a read-only iterator of the FieldResultTransforms of this summary map */
- public Iterator resultTransformIterator() {
- return Collections.unmodifiableCollection(resultTransforms.values()).iterator();
+ public Map<String, FieldResultTransform> resultTransforms() {
+ return Collections.unmodifiableMap(resultTransforms);
}
protected String getDerivedName() { return "summarymap"; }
/** Returns the command name of a transform */
private String getCommand(SummaryTransform transform) {
- if (transform.equals(SummaryTransform.DISTANCE))
+ if (transform == SummaryTransform.DISTANCE)
return "absdist";
else if (transform.isDynamic())
return "dynamicteaser";
@@ -87,6 +87,7 @@ public class SummaryMap extends Derived implements SummarymapConfig.Producer {
* We need this because some model information is shared through configs instead of model - see usage
* A dynamic transform needs the query to perform its computations.
*/
+ // TODO/Note: "dynamic" here means something else than in SummaryTransform
public static boolean isDynamicCommand(String commandName) {
return (commandName.equals("dynamicteaser") ||
commandName.equals(SummaryTransform.MATCHED_ELEMENTS_FILTER.getName()) ||