diff options
author | Arne H Juul <arnej@yahooinc.com> | 2022-03-07 13:24:08 +0000 |
---|---|---|
committer | Arne H Juul <arnej@yahooinc.com> | 2022-03-07 13:34:21 +0000 |
commit | 343ec9de039f2da9f29a93b658e5b69b6bc859e6 (patch) | |
tree | 7228634e5a028d56c5055547bc63e7293250a3e0 /config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedSchema.java | |
parent | a1099560e37f44a184d102e5dc6a927910777fe0 (diff) |
resolve document references also
* we need to check for cycles with both inheritance and
document references
* also, allow different names schema / document
Diffstat (limited to 'config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedSchema.java')
-rw-r--r-- | config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedSchema.java | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedSchema.java b/config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedSchema.java index a381d7c2745..0004094e1c2 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedSchema.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/parser/ParsedSchema.java @@ -82,8 +82,9 @@ public class ParsedSchema extends ParsedBlock { void addDocument(ParsedDocument document) { verifyThat(myDocument == null, "already has", myDocument, "so cannot add", document); - verifyThat(name().equals(document.name()), - "schema " + name() + " can only contain document named " + name() + ", was: "+ document.name()); + // TODO - disallow? + // verifyThat(name().equals(document.name()), + // "schema " + name() + " can only contain document named " + name() + ", was: "+ document.name()); this.myDocument = document; } @@ -156,16 +157,15 @@ public class ParsedSchema extends ParsedBlock { verifyThat(name.equals(parsed.name()), "resolveInherit name mismatch for", name); verifyThat(! resolvedInherits.containsKey(name), "double resolveInherit for", name); resolvedInherits.put(name, parsed); - var old = allResolvedInherits.put(name, parsed); + var old = allResolvedInherits.put("schema " + name, parsed); verifyThat(old == null || old == parsed, "conflicting resolveInherit for", name); } void resolveInheritByDocument(String name, ParsedSchema parsed) { verifyThat(inheritedByDocument.contains(name), "resolveInheritByDocument for non-inherited name", name); - verifyThat(name.equals(parsed.name()), "resolveInheritByDocument name mismatch for", name); - var old = allResolvedInherits.put(name, parsed); - verifyThat(old == null || old == parsed, "conflicting resolveInherit for", name); + var old = allResolvedInherits.put("document " + name, parsed); + verifyThat(old == null || old == parsed, "conflicting resolveInheritByDocument for", name); } } |