aboutsummaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomConfigPayloadBuilder.java
diff options
context:
space:
mode:
authorHarald Musum <musum@oath.com>2018-11-05 08:16:49 +0100
committerHarald Musum <musum@oath.com>2018-11-05 08:16:49 +0100
commit6f10e3c51701f97224b48a7285971e3febeec3e0 (patch)
treeba921ff3d279d9093c424f28928eca518cb31ef6 /config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomConfigPayloadBuilder.java
parent6ada0742477c575cc6941704500c0ee8c9ac5596 (diff)
Simplify by using a removeArray method, make operation case insensitive
Diffstat (limited to 'config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomConfigPayloadBuilder.java')
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomConfigPayloadBuilder.java7
1 files changed, 3 insertions, 4 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomConfigPayloadBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomConfigPayloadBuilder.java
index d0abffcbac4..568a1229a36 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomConfigPayloadBuilder.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomConfigPayloadBuilder.java
@@ -170,7 +170,7 @@ public class DomConfigPayloadBuilder {
throw new IllegalArgumentException("The 'index' attribute on config elements is not supported - use <item>");
} else if (element.hasAttribute("operation")) {
// inner array, the supported operations are 'append' and 'clear'
- String operation = verifyLegalOperation(element);
+ String operation = element.getAttribute("operation");
ConfigPayloadBuilder childPayloadBuilder;
switch (operation) {
case "append":
@@ -179,8 +179,7 @@ public class DomConfigPayloadBuilder {
case "clear":
// Clear array if it exists, use the existing builder
// Creating the array happens when handling the children ('item's)
- if (payloadBuilder.arrayExists(name))
- payloadBuilder.clearArray(name);
+ payloadBuilder.removeArray(name);
childPayloadBuilder = payloadBuilder;
break;
default:
@@ -249,7 +248,7 @@ public class DomConfigPayloadBuilder {
private String verifyLegalOperation(Element currElem) {
String operation = currElem.getAttribute("operation");
- if (! Arrays.asList("append", "clear").contains(operation))
+ if (! Arrays.asList("append", "clear").contains(operation.toLowerCase()))
throw new ConfigurationRuntimeException("The supported array operations are 'append' and 'clear', got '"
+ operation + "' at XML node '" + XML.getNodePath(currElem, " > ") + "'.");
return operation;