summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--searchcore/src/vespa/searchcore/proton/docsummary/documentstoreadapter.cpp1
-rw-r--r--searchsummary/src/tests/docsummary/matched_elements_filter/matched_elements_filter_test.cpp1
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/CMakeLists.txt1
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/docsum_store_document.cpp6
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/matched_elements_filter_dfw.cpp4
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/slime_filler.cpp34
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/slime_filler.h10
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.cpp45
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.h31
-rw-r--r--streamingvisitors/src/vespa/vsm/vsm/docsumfilter.cpp7
10 files changed, 52 insertions, 88 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/docsummary/documentstoreadapter.cpp b/searchcore/src/vespa/searchcore/proton/docsummary/documentstoreadapter.cpp
index a62bd155b87..6d717f7f128 100644
--- a/searchcore/src/vespa/searchcore/proton/docsummary/documentstoreadapter.cpp
+++ b/searchcore/src/vespa/searchcore/proton/docsummary/documentstoreadapter.cpp
@@ -2,7 +2,6 @@
#include "documentstoreadapter.h"
#include <vespa/searchsummary/docsummary/docsum_store_document.h>
-#include <vespa/searchsummary/docsummary/summaryfieldconverter.h>
#include <vespa/document/fieldvalue/document.h>
#include <vespa/document/fieldvalue/stringfieldvalue.h>
#include <vespa/eval/eval/value_codec.h>
diff --git a/searchsummary/src/tests/docsummary/matched_elements_filter/matched_elements_filter_test.cpp b/searchsummary/src/tests/docsummary/matched_elements_filter/matched_elements_filter_test.cpp
index f0dd4acfb32..b165542e2e2 100644
--- a/searchsummary/src/tests/docsummary/matched_elements_filter/matched_elements_filter_test.cpp
+++ b/searchsummary/src/tests/docsummary/matched_elements_filter/matched_elements_filter_test.cpp
@@ -22,7 +22,6 @@
#include <vespa/searchsummary/docsummary/matched_elements_filter_dfw.h>
#include <vespa/searchsummary/docsummary/resultclass.h>
#include <vespa/searchsummary/docsummary/resultconfig.h>
-#include <vespa/searchsummary/docsummary/summaryfieldconverter.h>
#include <vespa/searchsummary/test/slime_value.h>
#include <vespa/vespalib/data/slime/slime.h>
#include <vespa/vespalib/gtest/gtest.h>
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/CMakeLists.txt b/searchsummary/src/vespa/searchsummary/docsummary/CMakeLists.txt
index 51c8afe4250..e69752f3b81 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/CMakeLists.txt
+++ b/searchsummary/src/vespa/searchsummary/docsummary/CMakeLists.txt
@@ -38,5 +38,4 @@ vespa_add_library(searchsummary_docsummary OBJECT
struct_fields_resolver.cpp
struct_map_attribute_combiner_dfw.cpp
summaryfeaturesdfw.cpp
- summaryfieldconverter.cpp
)
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsum_store_document.cpp b/searchsummary/src/vespa/searchsummary/docsummary/docsum_store_document.cpp
index 35db818ac58..f701b4796c1 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/docsum_store_document.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/docsum_store_document.cpp
@@ -2,7 +2,7 @@
#include "docsum_store_document.h"
#include "annotation_converter.h"
-#include "summaryfieldconverter.h"
+#include "slime_filler.h"
#include <vespa/document/base/exceptions.h>
#include <vespa/document/datatype/datatype.h>
#include <vespa/document/fieldvalue/document.h>
@@ -41,7 +41,7 @@ DocsumStoreDocument::insert_summary_field(const vespalib::string& field_name, ve
{
auto field_value = get_field_value(field_name);
if (field_value) {
- SummaryFieldConverter::insert_summary_field(*field_value, inserter);
+ SlimeFiller::insert_summary_field(*field_value, inserter);
}
}
@@ -51,7 +51,7 @@ DocsumStoreDocument::insert_juniper_field(const vespalib::string& field_name, ve
auto field_value = get_field_value(field_name);
if (field_value) {
AnnotationConverter stacked_converter(converter);
- SummaryFieldConverter::insert_juniper_field(*field_value, inserter, stacked_converter);
+ SlimeFiller::insert_juniper_field(*field_value, inserter, stacked_converter);
}
}
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/matched_elements_filter_dfw.cpp b/searchsummary/src/vespa/searchsummary/docsummary/matched_elements_filter_dfw.cpp
index 1a029cfd16f..4f74ffd894c 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/matched_elements_filter_dfw.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/matched_elements_filter_dfw.cpp
@@ -3,8 +3,8 @@
#include "matched_elements_filter_dfw.h"
#include "docsumstate.h"
#include "i_docsum_store_document.h"
+#include "slime_filler.h"
#include "struct_fields_resolver.h"
-#include "summaryfieldconverter.h"
#include <vespa/document/fieldvalue/document.h>
#include <vespa/document/fieldvalue/literalfieldvalue.h>
#include <vespa/searchcommon/attribute/iattributecontext.h>
@@ -68,7 +68,7 @@ MatchedElementsFilterDFW::insertField(uint32_t docid, const IDocsumStoreDocument
{
auto field_value = doc->get_field_value(_input_field_name);
if (field_value) {
- SummaryFieldConverter::insert_summary_field_with_filter(*field_value, target, get_matching_elements(docid, state));
+ SlimeFiller::insert_summary_field_with_filter(*field_value, target, get_matching_elements(docid, state));
}
}
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/slime_filler.cpp b/searchsummary/src/vespa/searchsummary/docsummary/slime_filler.cpp
index 94774c1bee4..06cb363b61f 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/slime_filler.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/slime_filler.cpp
@@ -1,6 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#include "slime_filler.h"
+#include "check_undefined_value_visitor.h"
#include "i_juniper_converter.h"
#include "i_string_field_converter.h"
#include "resultconfig.h"
@@ -341,4 +342,37 @@ SlimeFiller::visit(const ReferenceFieldValue& value)
: vespalib::string()));
}
+void
+SlimeFiller::insert_summary_field(const FieldValue& value, vespalib::slime::Inserter& inserter)
+{
+ CheckUndefinedValueVisitor check_undefined;
+ value.accept(check_undefined);
+ if (!check_undefined.is_undefined()) {
+ SlimeFiller visitor(inserter);
+ value.accept(visitor);
+ }
+}
+
+void
+SlimeFiller::insert_summary_field_with_filter(const FieldValue& value, vespalib::slime::Inserter& inserter, const std::vector<uint32_t>& matching_elems)
+{
+ CheckUndefinedValueVisitor check_undefined;
+ value.accept(check_undefined);
+ if (!check_undefined.is_undefined()) {
+ SlimeFiller visitor(inserter, &matching_elems);
+ value.accept(visitor);
+ }
+}
+
+void
+SlimeFiller::insert_juniper_field(const document::FieldValue& value, vespalib::slime::Inserter& inserter, IStringFieldConverter& converter)
+{
+ CheckUndefinedValueVisitor check_undefined;
+ value.accept(check_undefined);
+ if (!check_undefined.is_undefined()) {
+ SlimeFiller visitor(inserter, &converter, nullptr);
+ value.accept(visitor);
+ }
+}
+
}
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/slime_filler.h b/searchsummary/src/vespa/searchsummary/docsummary/slime_filler.h
index a81a20814c4..2f924de8af4 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/slime_filler.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/slime_filler.h
@@ -6,6 +6,8 @@
#include <cstdint>
#include <vector>
+namespace document { class FieldValue; }
+
namespace vespalib::slime { struct Inserter; }
namespace search::docsummary {
@@ -55,6 +57,14 @@ public:
SlimeFiller(vespalib::slime::Inserter& inserter, const std::vector<uint32_t>* matching_elems);
SlimeFiller(vespalib::slime::Inserter& inserter, IStringFieldConverter* string_converter, const SlimeFillerFilter* filter);
~SlimeFiller() override;
+
+ static void insert_summary_field(const document::FieldValue& value, vespalib::slime::Inserter& inserter);
+
+ /**
+ * Insert the given field value, but only the elements that are contained in the matching_elems vector.
+ */
+ static void insert_summary_field_with_filter(const document::FieldValue& value, vespalib::slime::Inserter& inserter, const std::vector<uint32_t>& matching_elems);
+ static void insert_juniper_field(const document::FieldValue& value, vespalib::slime::Inserter& inserter, IStringFieldConverter& converter);
};
}
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.cpp b/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.cpp
deleted file mode 100644
index dd5a59e46af..00000000000
--- a/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.cpp
+++ /dev/null
@@ -1,45 +0,0 @@
-// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-
-#include "summaryfieldconverter.h"
-#include "check_undefined_value_visitor.h"
-#include "slime_filler.h"
-#include <vespa/document/fieldvalue/fieldvalue.h>
-
-using document::FieldValue;
-
-namespace search::docsummary {
-
-void
-SummaryFieldConverter::insert_summary_field(const FieldValue& value, vespalib::slime::Inserter& inserter)
-{
- CheckUndefinedValueVisitor check_undefined;
- value.accept(check_undefined);
- if (!check_undefined.is_undefined()) {
- SlimeFiller visitor(inserter);
- value.accept(visitor);
- }
-}
-
-void
-SummaryFieldConverter::insert_summary_field_with_filter(const FieldValue& value, vespalib::slime::Inserter& inserter, const std::vector<uint32_t>& matching_elems)
-{
- CheckUndefinedValueVisitor check_undefined;
- value.accept(check_undefined);
- if (!check_undefined.is_undefined()) {
- SlimeFiller visitor(inserter, &matching_elems);
- value.accept(visitor);
- }
-}
-
-void
-SummaryFieldConverter::insert_juniper_field(const document::FieldValue& value, vespalib::slime::Inserter& inserter, IStringFieldConverter& converter)
-{
- CheckUndefinedValueVisitor check_undefined;
- value.accept(check_undefined);
- if (!check_undefined.is_undefined()) {
- SlimeFiller visitor(inserter, &converter, nullptr);
- value.accept(visitor);
- }
-}
-
-}
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.h b/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.h
deleted file mode 100644
index ce3bf80b365..00000000000
--- a/searchsummary/src/vespa/searchsummary/docsummary/summaryfieldconverter.h
+++ /dev/null
@@ -1,31 +0,0 @@
-// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-
-#pragma once
-
-#include <cstdint>
-#include <vector>
-
-namespace document { class FieldValue; }
-
-namespace vespalib::slime { struct Inserter; }
-
-namespace search::docsummary {
-
-class IStringFieldConverter;
-
-/**
- * This class converts a summary field for docsum fetching.
- */
-class SummaryFieldConverter
-{
-public:
- static void insert_summary_field(const document::FieldValue& value, vespalib::slime::Inserter& inserter);
- /**
- * Insert the given field value, but only the elements that are contained in the matching_elems vector.
- */
- static void insert_summary_field_with_filter(const document::FieldValue& value, vespalib::slime::Inserter& inserter, const std::vector<uint32_t>& matching_elems);
- static void insert_juniper_field(const document::FieldValue& value, vespalib::slime::Inserter& inserter, IStringFieldConverter& converter);
-};
-
-}
-
diff --git a/streamingvisitors/src/vespa/vsm/vsm/docsumfilter.cpp b/streamingvisitors/src/vespa/vsm/vsm/docsumfilter.cpp
index ad054aadd9c..7fbef6307b2 100644
--- a/streamingvisitors/src/vespa/vsm/vsm/docsumfilter.cpp
+++ b/streamingvisitors/src/vespa/vsm/vsm/docsumfilter.cpp
@@ -8,7 +8,6 @@
#include <vespa/searchsummary/docsummary/i_string_field_converter.h>
#include <vespa/searchsummary/docsummary/slime_filler.h>
#include <vespa/searchsummary/docsummary/slime_filler_filter.h>
-#include <vespa/searchsummary/docsummary/summaryfieldconverter.h>
#include <vespa/document/base/exceptions.h>
#include <vespa/document/datatype/datatype.h>
#include <vespa/document/fieldvalue/stringfieldvalue.h>
@@ -242,7 +241,7 @@ DocsumStoreVsmDocument::insert_summary_field(const vespalib::string& field_name,
auto value(field.getDataType().createFieldValue());
if (value) {
if (_document->getValue(field, *value)) {
- SummaryFieldConverter::insert_summary_field(*value, inserter);
+ SlimeFiller::insert_summary_field(*value, inserter);
}
}
} catch (document::FieldNotFoundException&) {
@@ -267,7 +266,7 @@ DocsumStoreVsmDocument::insert_juniper_field(const vespalib::string& field_name,
// Markup for juniper has already been added due to FLATTENJUNIPER command in vsm summary config.
}
SnippetModifierJuniperConverter string_converter(converter, modifier);
- SummaryFieldConverter::insert_juniper_field(*field_value, inserter, string_converter);
+ SlimeFiller::insert_juniper_field(*field_value, inserter, string_converter);
}
}
@@ -445,7 +444,7 @@ DocsumFilter::insert_summary_field(uint32_t entry_idx, const Document& doc, vesp
const DocsumFieldSpec::FieldIdentifier & fieldId = field_spec.getInputFields()[0];
const document::FieldValue* field_value = doc.getField(fieldId.getId());
if (field_value != nullptr) {
- SummaryFieldConverter::insert_summary_field(*field_value, inserter);
+ SlimeFiller::insert_summary_field(*field_value, inserter);
}
} else if (field_spec.getInputFields().empty() && field_spec.getCommand() == VsmsummaryConfig::Fieldmap::Command::NONE) {
} else {