summaryrefslogtreecommitdiffstats
path: root/container-search/src/main/java/com/yahoo/search/schema
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@gmail.com>2022-06-16 17:04:42 +0200
committerJon Bratseth <bratseth@gmail.com>2022-06-16 17:04:42 +0200
commit32b9b81e411345bbf407aa648e80bd4b051f234f (patch)
tree7d1c1de0c9457f602e91e899444e44546f7500d1 /container-search/src/main/java/com/yahoo/search/schema
parent5e00300349d15d4aad0df4ab0631a811df526b79 (diff)
Remove usage of documentdbinfo, apart from schema name
Diffstat (limited to 'container-search/src/main/java/com/yahoo/search/schema')
-rw-r--r--container-search/src/main/java/com/yahoo/search/schema/DocumentSummary.java18
-rw-r--r--container-search/src/main/java/com/yahoo/search/schema/SchemaInfoConfigurer.java6
2 files changed, 13 insertions, 11 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/schema/DocumentSummary.java b/container-search/src/main/java/com/yahoo/search/schema/DocumentSummary.java
index 12037ee6633..0aec6b0a4f6 100644
--- a/container-search/src/main/java/com/yahoo/search/schema/DocumentSummary.java
+++ b/container-search/src/main/java/com/yahoo/search/schema/DocumentSummary.java
@@ -3,7 +3,10 @@ package com.yahoo.search.schema;
import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Collections;
+import java.util.LinkedHashMap;
import java.util.List;
+import java.util.Map;
import java.util.Objects;
/**
@@ -15,17 +18,17 @@ import java.util.Objects;
public class DocumentSummary {
private final String name;
- private final List<Field> fields;
+ private final Map<String, Field> fields;
private final boolean dynamic;
private DocumentSummary(Builder builder) {
this.name = builder.name;
- this.fields = List.copyOf(builder.fields);
+ this.fields = Collections.unmodifiableMap(builder.fields);
this.dynamic = builder.dynamic;
}
public String name() { return name; }
- public List<Field> fields() { return fields; }
+ public Map<String, Field> fields() { return fields; }
/** Returns whether this contains fields which are generated dynamically from the query and field data. */
public boolean isDynamic() { return dynamic; }
@@ -54,15 +57,20 @@ public class DocumentSummary {
public static class Builder {
private final String name;
- private final List<Field> fields = new ArrayList<>();
+ private final Map<String, Field> fields = new LinkedHashMap<>();
private boolean dynamic;
public Builder(String name) {
this.name = name;
}
+ public Builder addField(String name, String type) {
+ fields.put(name, new Field(name, type));
+ return this;
+ }
+
public Builder add(Field field) {
- fields.add(field);
+ fields.put(field.name(), field);
return this;
}
diff --git a/container-search/src/main/java/com/yahoo/search/schema/SchemaInfoConfigurer.java b/container-search/src/main/java/com/yahoo/search/schema/SchemaInfoConfigurer.java
index c5a74ece866..ed1d25a0b35 100644
--- a/container-search/src/main/java/com/yahoo/search/schema/SchemaInfoConfigurer.java
+++ b/container-search/src/main/java/com/yahoo/search/schema/SchemaInfoConfigurer.java
@@ -1,17 +1,11 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.search.schema;
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.ImmutableMap;
import com.yahoo.container.QrSearchersConfig;
-import com.yahoo.prelude.fastsearch.DocsumDefinition;
-import com.yahoo.prelude.fastsearch.DocsumField;
-import com.yahoo.prelude.fastsearch.DocumentdbInfoConfig;
import com.yahoo.search.config.SchemaInfoConfig;
import com.yahoo.tensor.TensorType;
import java.util.ArrayList;
-import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.Map;