aboutsummaryrefslogtreecommitdiffstats
path: root/config-model
diff options
context:
space:
mode:
authorArne H Juul <arnej@yahooinc.com>2022-03-29 12:00:40 +0000
committerArne H Juul <arnej@yahooinc.com>2022-03-29 12:03:00 +0000
commit8855a14d8270ff8a0635da1e09110438f6ea905e (patch)
treea73a457620c316be1512cd8d58033ee45e6c5373 /config-model
parent96904db4e5c9beb7ed95848b1bdd3b1b100cbd8f (diff)
avoid depending on DocumentTypeManager
Diffstat (limited to 'config-model')
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/SDDocumentTypeOrderer.java25
1 files changed, 7 insertions, 18 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/SDDocumentTypeOrderer.java b/config-model/src/main/java/com/yahoo/searchdefinition/SDDocumentTypeOrderer.java
index ece1b0bab0a..5b1a9595b94 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/SDDocumentTypeOrderer.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/SDDocumentTypeOrderer.java
@@ -18,7 +18,7 @@ import java.util.logging.Level;
public class SDDocumentTypeOrderer {
private final Map<DataTypeName, SDDocumentType> createdSDTypes = new LinkedHashMap<>();
- private final Set<Integer> seenTypes = new LinkedHashSet<>();
+ private final Set<String> seenTypes = new LinkedHashSet<>();
List<SDDocumentType> processingOrder = new LinkedList<>();
private final DeployLogger deployLogger;
@@ -27,11 +27,7 @@ public class SDDocumentTypeOrderer {
for (SDDocumentType type : sdTypes) {
createdSDTypes.put(type.getDocumentName(), type);
}
- DocumentTypeManager dtm = new DocumentTypeManager();
- for (DataType type : dtm.getDataTypes()) {
- seenTypes.add(type.getId());
- }
-
+ seenTypes.add("document");
}
List<SDDocumentType> getOrdered() { return processingOrder; }
@@ -44,21 +40,14 @@ public class SDDocumentTypeOrderer {
private void process(SDDocumentType docOrStruct, SDDocumentType owningDocument) {
resolveAndProcessInheritedTemporaryTypes(docOrStruct, owningDocument);
- int id;
- if (docOrStruct.isStruct()) {
- id = new StructDataType(docOrStruct.getName()).getId();
- } else {
- id = new DocumentType(docOrStruct.getName()).getId();
- }
-
- if (seenTypes.contains(id)) {
+ if (seenTypes.contains(docOrStruct.getName())) {
return;
- } else {
- seenTypes.add((new StructDataType(docOrStruct.getName()).getId()));
}
-
+ seenTypes.add(docOrStruct.getName());
for (Field field : docOrStruct.fieldSet()) {
- if (!seenTypes.contains(field.getDataType().getId())) {
+ String typeName = field.getDataType().getName();
+ if (!seenTypes.contains(typeName)) {
+ seenTypes.add(typeName);
//we haven't seen this before, do it
visit(field.getDataType(), owningDocument);
}