diff options
author | Arne H Juul <arnej@yahooinc.com> | 2022-03-07 08:47:54 +0000 |
---|---|---|
committer | Arne H Juul <arnej@yahooinc.com> | 2022-03-07 09:11:00 +0000 |
commit | 09651c891ee73c4ec0b5f142096f308078b8a530 (patch) | |
tree | 0c13b0a60eaa4f9de4110f5c15129786a2476e31 /config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedField.java | |
parent | a167752728eb4a1c47fdc59f3b12f2ab2d27118e (diff) |
allow function replacement
* for backwards-compatibility, allow a rank-profile function
to be replaced (with a warning)
* also, allow multiple attribute settings for same attribute
Diffstat (limited to 'config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedField.java')
-rw-r--r-- | config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedField.java | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedField.java b/config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedField.java index 5ee73abc28d..5bcfa841bae 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedField.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedField.java @@ -121,10 +121,8 @@ class ParsedField extends ParsedBlock { void setStemming(Stemming stemming) { this.stemming = stemming; } void setWeight(int weight) { this.weight = weight; } - void addAttribute(ParsedAttribute attribute) { - String attrName = attribute.name(); - verifyThat(! attributes.containsKey(attrName), "already has attribute", attrName); - attributes.put(attrName, attribute); + ParsedAttribute attributeFor(String attrName) { + return attributes.computeIfAbsent(attrName, n -> new ParsedAttribute(n)); } void setIndexingOperation(ParsedIndexingOp idxOp) { |