diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2016-11-16 09:06:48 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-11-16 09:06:48 +0100 |
commit | cf7dc869b0c18c6565f435be9b78f40141b8030d (patch) | |
tree | c0a6d183d7ff87beca40e6651fc3d84c2036b322 /document | |
parent | 028214a6e2cb7abcd1e5e4eadaa7721802710f81 (diff) |
Revert "Balder/faster concrete docs"
Diffstat (limited to 'document')
-rw-r--r-- | document/src/main/java/com/yahoo/document/ExtendedField.java | 31 | ||||
-rw-r--r-- | document/src/main/java/com/yahoo/document/ExtendedStringField.java | 47 |
2 files changed, 0 insertions, 78 deletions
diff --git a/document/src/main/java/com/yahoo/document/ExtendedField.java b/document/src/main/java/com/yahoo/document/ExtendedField.java deleted file mode 100644 index 55087d16974..00000000000 --- a/document/src/main/java/com/yahoo/document/ExtendedField.java +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.document; - -import com.yahoo.document.datatypes.FieldValue; -import com.yahoo.document.datatypes.StructuredFieldValue; - -/** - * This adds an Extractor to the Field that can be used to get access the backed value - * used in the concrete document types. - * @author baldersheim - */ -public class ExtendedField extends Field { - public static interface Extract { - Object get(StructuredFieldValue doc); - void set(StructuredFieldValue doc, Object value); - } - private final Extract extract; - public ExtendedField(String name, DataType type, Extract extract) { - super(name, type); - this.extract = extract; - } - public FieldValue getFieldValue(StructuredFieldValue doc) { - Object raw = extract.get(doc); - return raw == null ? null : getDataType().createFieldValue(raw); - } - public FieldValue setFieldValue(StructuredFieldValue doc, FieldValue fv) { - FieldValue old = getFieldValue(doc); - extract.set(doc, (fv == null) ? null : fv.getWrappedValue()); - return old; - } -} diff --git a/document/src/main/java/com/yahoo/document/ExtendedStringField.java b/document/src/main/java/com/yahoo/document/ExtendedStringField.java deleted file mode 100644 index 4fb052b9b56..00000000000 --- a/document/src/main/java/com/yahoo/document/ExtendedStringField.java +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.document; - -import com.yahoo.document.annotation.SpanTree; -import com.yahoo.document.datatypes.FieldValue; -import com.yahoo.document.datatypes.StringFieldValue; -import com.yahoo.document.datatypes.StructuredFieldValue; -import java.util.Map; - -/** - * This adds an Extractor to the ExtendedField that can be used to get access the backed spantrees - * used in the concrete document types. - * @author baldersheim - */ -public class ExtendedStringField extends ExtendedField { - public static interface ExtractSpanTrees { - Map<String, SpanTree> get(StructuredFieldValue doc); - void set(StructuredFieldValue doc, Map<String, SpanTree> trees); - } - private final ExtractSpanTrees extractSpanTrees; - public ExtendedStringField(String name, DataType type, Extract extract, ExtractSpanTrees extractSpanTrees) { - super(name, type, extract); - this.extractSpanTrees = extractSpanTrees; - } - - @Override - public FieldValue getFieldValue(StructuredFieldValue doc) { - StringFieldValue sfv = (StringFieldValue) super.getFieldValue(doc); - Map<String, SpanTree> trees = extractSpanTrees.get(doc); - if (trees != null) { - for (SpanTree tree : trees.values()) { - sfv.setSpanTree(tree); - } - } - return sfv; - } - - @Override - public FieldValue setFieldValue(StructuredFieldValue doc, FieldValue fv) { - FieldValue old = getFieldValue(doc); - StringFieldValue sfv = (StringFieldValue) fv; - super.setFieldValue(doc, sfv); - extractSpanTrees.set(doc, (sfv == null) ? null : sfv.getSpanTreeMap()); - return old; - } - -} |