summaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java/com/yahoo/searchdefinition/DocumentModelBuilder.java
diff options
context:
space:
mode:
authorArne H Juul <arnej@yahooinc.com>2021-12-10 11:05:54 +0000
committerArne H Juul <arnej@yahooinc.com>2021-12-13 13:12:21 +0000
commit7187dafb2b9fadc11f49844b637723df36aa3e3e (patch)
tree0e282cc87ed8a9cb624faf6e2d54c3fee195aedf /config-model/src/main/java/com/yahoo/searchdefinition/DocumentModelBuilder.java
parent82397b67bcbe865283cece305037577294a86fa2 (diff)
try to make simple struct inherit work
* inheritance was just lost in conversion * with unit test
Diffstat (limited to 'config-model/src/main/java/com/yahoo/searchdefinition/DocumentModelBuilder.java')
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/DocumentModelBuilder.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/DocumentModelBuilder.java b/config-model/src/main/java/com/yahoo/searchdefinition/DocumentModelBuilder.java
index 70f3403520b..55f24123940 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/DocumentModelBuilder.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/DocumentModelBuilder.java
@@ -390,6 +390,13 @@ public class DocumentModelBuilder {
throw new IllegalArgumentException("Data type '" + sdoc.getName() + "' is not a struct => tostring='" + sdoc.toString() + "'.");
}
}
+ for (SDDocumentType type : sdoc.getTypes()) {
+ for (SDDocumentType proxy : type.getInheritedTypes()) {
+ var inherited = dt.getDataTypeRecursive(proxy.getName());
+ var converted = (StructDataType) dt.getDataType(type.getName());
+ converted.inherit((StructDataType) inherited);
+ }
+ }
for (AnnotationType annotation : sdoc.getAnnotations().values()) {
dt.add(annotation);
}