diff options
author | Arne H Juul <arnej@yahooinc.com> | 2022-04-07 12:56:09 +0000 |
---|---|---|
committer | Arne H Juul <arnej@yahooinc.com> | 2022-04-07 14:01:28 +0000 |
commit | d9d1a19fabc5631419973868733fce51fab5421c (patch) | |
tree | 6d5d3fb7242503cc6ba02680255a9fa37d76f120 /document | |
parent | f8e244359f677c8ec5a11685f3e6b00ffac50caa (diff) |
namespace structs when reading config
Diffstat (limited to 'document')
-rw-r--r-- | document/src/main/java/com/yahoo/document/DocumentTypeManagerConfigurer.java | 4 | ||||
-rw-r--r-- | document/src/test/java/com/yahoo/document/DocumentTypeManagerTestCase.java | 7 |
2 files changed, 10 insertions, 1 deletions
diff --git a/document/src/main/java/com/yahoo/document/DocumentTypeManagerConfigurer.java b/document/src/main/java/com/yahoo/document/DocumentTypeManagerConfigurer.java index 183f92d543c..f84c979c79a 100644 --- a/document/src/main/java/com/yahoo/document/DocumentTypeManagerConfigurer.java +++ b/document/src/main/java/com/yahoo/document/DocumentTypeManagerConfigurer.java @@ -453,8 +453,10 @@ public class DocumentTypeManagerConfigurer implements ConfigSubscriber.SingleSub if (isPositionStruct(typeconf)) { int geoVersion = usev8geopositions ? 8 : 7; addNewType(typeconf.idx(), new GeoPosType(geoVersion)); - } else { + } else if (typeconf.name().equals(docName + ".header")) { addNewType(typeconf.idx(), new StructDataType(typeconf.name())); + } else { + addNewType(typeconf.idx(), new StructDataType(typeconf.name() + "@" + docName)); } } } diff --git a/document/src/test/java/com/yahoo/document/DocumentTypeManagerTestCase.java b/document/src/test/java/com/yahoo/document/DocumentTypeManagerTestCase.java index 6829c7e6862..aa9828f7457 100644 --- a/document/src/test/java/com/yahoo/document/DocumentTypeManagerTestCase.java +++ b/document/src/test/java/com/yahoo/document/DocumentTypeManagerTestCase.java @@ -664,6 +664,13 @@ search annotationsimplicitstruct { struct = docType.getStructType("mystruct"); assertNotNull(struct); assertNotNull(struct.getField("f0")); + + assertNotNull(manager.getDataTypeInternal("mystruct@common")); + assertNotNull(manager.getDataTypeInternal("mystructinfoo@foo")); + assertNotNull(manager.getDataTypeInternal("mystructinbar@bar")); + assertNotNull(manager.getDataTypeInternal("mystructinfoobar@foobar")); + assertNotNull(manager.getDataTypeInternal("foo.header")); + assertNotNull(manager.getDataTypeInternal("position")); } // TODO test clone(). Also fieldSets not part of clone()..! |