diff options
author | Jon Bratseth <bratseth@gmail.com> | 2022-05-19 12:03:06 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@gmail.com> | 2022-05-19 12:03:06 +0200 |
commit | 5c24dc5c9642a8d9ed70aee4c950fd0678a1ebec (patch) | |
tree | bd9b74bf00c832456f0b83c1b2cd7010be387d68 /config-model/src/main/java/com/yahoo/schema/parser/ParsedDocumentSummary.java | |
parent | f17c4fe7de4c55f5c4ee61897eab8c2f588d8405 (diff) |
Rename the 'searchdefinition' package to 'schema'
Diffstat (limited to 'config-model/src/main/java/com/yahoo/schema/parser/ParsedDocumentSummary.java')
-rw-r--r-- | config-model/src/main/java/com/yahoo/schema/parser/ParsedDocumentSummary.java | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/config-model/src/main/java/com/yahoo/schema/parser/ParsedDocumentSummary.java b/config-model/src/main/java/com/yahoo/schema/parser/ParsedDocumentSummary.java new file mode 100644 index 00000000000..93469a86fe3 --- /dev/null +++ b/config-model/src/main/java/com/yahoo/schema/parser/ParsedDocumentSummary.java @@ -0,0 +1,49 @@ + +package com.yahoo.schema.parser; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +/** + * This class holds the extracted information after parsing a + * "document-summary" block, using simple data structures as far as + * possible. Do not put advanced logic here! + * @author arnej27959 + **/ +class ParsedDocumentSummary extends ParsedBlock { + + private boolean omitSummaryFeatures; + private boolean fromDisk; + private final List<String> inherited = new ArrayList<>(); + private final Map<String, ParsedSummaryField> fields = new LinkedHashMap<>(); + + ParsedDocumentSummary(String name) { + super(name, "document-summary"); + } + + boolean getOmitSummaryFeatures() { return omitSummaryFeatures; } + boolean getFromDisk() { return fromDisk; } + List<ParsedSummaryField> getSummaryFields() { return List.copyOf(fields.values()); } + List<String> getInherited() { return List.copyOf(inherited); } + + ParsedSummaryField addField(ParsedSummaryField field) { + String fieldName = field.name(); + // TODO disallow this on Vespa 8 + // verifyThat(! fields.containsKey(fieldName), "already has field", fieldName); + return fields.put(fieldName, field); + } + + void setFromDisk(boolean value) { + this.fromDisk = value; + } + + void setOmitSummaryFeatures(boolean value) { + this.omitSummaryFeatures = value; + } + + void inherit(String other) { + inherited.add(other); + } +} |