summaryrefslogtreecommitdiffstats
path: root/config-model/src/main
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@oath.com>2018-11-02 14:19:11 +0100
committerGitHub <noreply@github.com>2018-11-02 14:19:11 +0100
commitd62eabd50a4c05684eca03f41eac6b20b0976950 (patch)
tree01755a81681967dc16a1134cc0fd0820f2b6888f /config-model/src/main
parent5982fb109a559f57eb8609d18360f6ded9a98760 (diff)
parente20f8c69911d4dc8ed1f9d39db175c35f1ea6abf (diff)
Merge pull request #7546 from vespa-engine/bratseth/improve-error-message
Improve error message etc
Diffstat (limited to 'config-model/src/main')
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/container/component/ConfigProducerGroup.java8
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/container/component/chain/Chain.java5
-rw-r--r--config-model/src/main/java/com/yahoo/vespa/model/container/search/searchchain/SearchChain.java5
3 files changed, 14 insertions, 4 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/component/ConfigProducerGroup.java b/config-model/src/main/java/com/yahoo/vespa/model/container/component/ConfigProducerGroup.java
index e8142999433..66294d3fcef 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/container/component/ConfigProducerGroup.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/container/component/ConfigProducerGroup.java
@@ -20,10 +20,10 @@ public class ConfigProducerGroup<CHILD extends AbstractConfigProducer<?>> extend
}
public void addComponent(ComponentId id, CHILD producer) {
- boolean wasAdded = producerById.put(id, producer) == null;
- if (!wasAdded) {
- throw new IllegalArgumentException("Two entities have the same component id '" +
- id + "' in the same scope.");
+ CHILD existing = producerById.put(id, producer);
+ if ( existing != null) {
+ throw new IllegalArgumentException("Both " + producer + " and " + existing + " are configured" +
+ " with the id '" + id + "'. All components must have a unique id.");
}
addChild(producer);
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/component/chain/Chain.java b/config-model/src/main/java/com/yahoo/vespa/model/container/component/chain/Chain.java
index f795e481f62..6b4f8c8f8b5 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/container/component/chain/Chain.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/container/component/chain/Chain.java
@@ -78,4 +78,9 @@ public class Chain<T extends ChainedComponent<?>> extends AbstractConfigProducer
return TYPE;
}
+ @Override
+ public String toString() {
+ return "chain '" + componentId + "'";
+ }
+
}
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/search/searchchain/SearchChain.java b/config-model/src/main/java/com/yahoo/vespa/model/container/search/searchchain/SearchChain.java
index 2605736e23b..ff211264a34 100644
--- a/config-model/src/main/java/com/yahoo/vespa/model/container/search/searchchain/SearchChain.java
+++ b/config-model/src/main/java/com/yahoo/vespa/model/container/search/searchchain/SearchChain.java
@@ -28,4 +28,9 @@ public class SearchChain extends Chain<Searcher<?>> {
return Collections.emptyList();
}
+ @Override
+ public String toString() {
+ return "search chain '" + getId() + "'";
+ }
+
}