summaryrefslogtreecommitdiffstats
path: root/searchsummary
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2016-12-16 14:57:03 +0100
committerHenning Baldersheim <balder@yahoo-inc.com>2016-12-16 14:57:03 +0100
commit18ed272a525f9e484ced8e6283d633e9246b9a99 (patch)
treebbfcacaedafdda27574782ccab779d7c7890b0a4 /searchsummary
parent928b16135f28fdc15bc63ce180a996f7046d89cd (diff)
Decouple includes.
Diffstat (limited to 'searchsummary')
-rw-r--r--searchsummary/src/tests/docsummary/slime_summary/slime_summary_test.cpp10
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.cpp8
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.h17
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/docsumfieldwriter.h8
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/docsumstore.h7
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/docsumstorevalue.h2
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp13
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.h3
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/resultpacker.cpp23
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/resultpacker.h22
10 files changed, 54 insertions, 59 deletions
diff --git a/searchsummary/src/tests/docsummary/slime_summary/slime_summary_test.cpp b/searchsummary/src/tests/docsummary/slime_summary/slime_summary_test.cpp
index 5554a72f556..45e4fb009ac 100644
--- a/searchsummary/src/tests/docsummary/slime_summary/slime_summary_test.cpp
+++ b/searchsummary/src/tests/docsummary/slime_summary/slime_summary_test.cpp
@@ -69,8 +69,8 @@ struct DocsumFixture : IDocsumStore, GetDocsumsStateCallback {
EXPECT_GREATER(vespalib::slime::BinaryFormat
::decode(Memory(buf.GetDrainPos(), buf.GetUsedLen()), slime), 0u);
}
- virtual uint32_t getNumDocs() { return 2; }
- virtual DocsumStoreValue getMappedDocsum(uint32_t docid, bool useSlimeInsideFields) {
+ uint32_t getNumDocs() const override { return 2; }
+ DocsumStoreValue getMappedDocsum(uint32_t docid, bool useSlimeInsideFields) override {
EXPECT_EQUAL(true, useSlimeInsideFields);
EXPECT_EQUAL(1u, docid);
EXPECT_TRUE(packer->Init(0));
@@ -99,9 +99,9 @@ struct DocsumFixture : IDocsumStore, GetDocsumsStateCallback {
return DocsumStoreValue(buf, len);
}
uint32_t getSummaryClassId() const override { return 0; }
- virtual void FillSummaryFeatures(GetDocsumsState *, IDocsumEnvironment *) {}
- virtual void FillRankFeatures(GetDocsumsState *, IDocsumEnvironment *) {}
- virtual void ParseLocation(GetDocsumsState *) {}
+ void FillSummaryFeatures(GetDocsumsState *, IDocsumEnvironment *) override { }
+ void FillRankFeatures(GetDocsumsState *, IDocsumEnvironment *) override { }
+ void ParseLocation(GetDocsumsState *) override { }
};
} // namespace <unnamed>
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.cpp b/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.cpp
index b334319d89c..82616381e88 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.cpp
@@ -3,8 +3,9 @@
// Copyright (C) 2003 Overture Services Norway AS
#include <vespa/searchsummary/docsummary/docsumconfig.h>
+#include <vespa/searchsummary/docsummary/docsumwriter.h>
+#include <vespa/searchsummary/docsummary/idocsumenvironment.h>
#include <vespa/searchsummary/docsummary/rankfeaturesdfw.h>
-#include <vespa/searchsummary/docsummary/summaryfeaturesdfw.h>
#include <vespa/searchsummary/docsummary/textextractordfw.h>
#include <vespa/searchsummary/docsummary/geoposdfw.h>
#include <vespa/searchsummary/docsummary/positionsdfw.h>
@@ -18,6 +19,11 @@ namespace docsummary {
using vespalib::IllegalArgumentException;
using vespalib::make_string;
+const ResultConfig &
+DynamicDocsumConfig::getResultConfig() const {
+ return *_writer->GetResultConfig();
+}
+
IDocsumFieldWriter::UP
DynamicDocsumConfig::createFieldWriter(const string & fieldName, const string & overrideName, const string & argument, bool & rc)
{
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.h b/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.h
index 04f2890e7c1..a9a24955d39 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.h
@@ -4,31 +4,32 @@
#pragma once
-#include <vespa/searchsummary/docsummary/docsumwriter.h>
-#include <vespa/searchsummary/docsummary/docsumfieldwriter.h>
-#include <vespa/searchsummary/docsummary/idocsumenvironment.h>
#include <vespa/config-summarymap.h>
namespace search {
namespace docsummary {
+class IDocsumEnvironment;
+class DynamicDocsumWriter;
+class ResultConfig;
+class IDocsumFieldWriter;
+
class DynamicDocsumConfig
{
public:
DynamicDocsumConfig(IDocsumEnvironment * env, DynamicDocsumWriter * writer) :
_env(env),
_writer(writer)
- {
- }
+ { }
virtual ~DynamicDocsumConfig() { }
void configure(const vespa::config::search::SummarymapConfig &cfg);
protected:
- typedef vespalib::string string;
+ using string = vespalib::string;
IDocsumEnvironment * getEnvironment() { return _env; }
const IDocsumEnvironment * getEnvironment() const { return _env; }
- const ResultConfig & getResultConfig() const { return *_writer->GetResultConfig(); }
+ const ResultConfig & getResultConfig() const;
- virtual IDocsumFieldWriter::UP
+ virtual std::unique_ptr<IDocsumFieldWriter>
createFieldWriter(const string & fieldName, const string & overrideName,
const string & argument, bool & rc);
private:
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumfieldwriter.h b/searchsummary/src/vespa/searchsummary/docsummary/docsumfieldwriter.h
index babda75cff1..2c276402cbe 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/docsumfieldwriter.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumfieldwriter.h
@@ -1,22 +1,20 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-// Copyright (C) 1998-2003 Fast Search & Transfer ASA
-// Copyright (C) 2003 Overture Services Norway AS
#pragma once
#include <vespa/searchlib/util/rawbuf.h>
-#include <vespa/searchlib/attribute/iattributemanager.h>
#include <vespa/searchsummary/docsummary/urlresult.h>
#include <vespa/searchsummary/docsummary/resultconfig.h>
#include <vespa/vespalib/data/slime/inserter.h>
namespace search {
+
+class IAttributeManager;
+
namespace docsummary {
class GetDocsumsState;
-using search::IAttributeManager;
-
class IDocsumFieldWriter
{
public:
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumstore.h b/searchsummary/src/vespa/searchsummary/docsummary/docsumstore.h
index fcdb16e2e05..ae611cd71a1 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/docsumstore.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumstore.h
@@ -4,9 +4,6 @@
#pragma once
-#include <vespa/fastos/fastos.h>
-#include <utility>
-
#include "docsumstorevalue.h"
namespace search {
@@ -28,12 +25,12 @@ public:
/**
* Destructor. No cleanup needed for base class.
*/
- virtual ~IDocsumStore(void) { }
+ virtual ~IDocsumStore() { }
/**
* @return total number of documents.
**/
- virtual uint32_t getNumDocs() = 0;
+ virtual uint32_t getNumDocs() const = 0;
/**
* Get a reference to a docsum blob in memory. The docsum store
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumstorevalue.h b/searchsummary/src/vespa/searchsummary/docsummary/docsumstorevalue.h
index 9116ecf1395..e8b1289a8c9 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/docsumstorevalue.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumstorevalue.h
@@ -1,7 +1,7 @@
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
#pragma once
-#include <vespa/fastos/fastos.h>
+#include <cstdint>
#include <utility>
namespace search {
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp b/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp
index 08f2e69a6b5..f3272b2f574 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp
@@ -2,27 +2,22 @@
// Copyright (C) 1998-2003 Fast Search & Transfer ASA
// Copyright (C) 2003 Overture Services Norway AS
-#include <vespa/fastos/fastos.h>
-#include <vespa/log/log.h>
#include <vespa/fastlib/text/normwordfolder.h>
#include "docsumwriter.h"
-#include "docsumfieldwriter.h"
-#include "docsumstore.h"
-#include "keywordextractor.h"
#include "docsumformat.h"
#include "docsumstate.h"
#include <vespa/searchlib/common/transport.h>
-#include <vespa/vespalib/data/slime/slime.h>
#include <vespa/searchlib/util/slime_output_raw_buf_adapter.h>
+#include <vespa/searchlib/attribute/iattributemanager.h>
+
+#include <vespa/log/log.h>
+LOG_SETUP(".searchlib.docsummary.docsumwriter");
using namespace vespalib::slime::convenience;
namespace search {
namespace docsummary {
-LOG_SETUP(".searchlib.docsummary.docsumwriter");
-
-
uint32_t
IDocsumWriter::slime2RawBuf(const Slime & slime, RawBuf & buf)
{
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.h b/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.h
index 36f90048cb7..66e64bc7d10 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.h
@@ -5,7 +5,6 @@
#pragma once
#include <vespa/searchlib/util/rawbuf.h>
-#include <vespa/searchlib/attribute/iattributemanager.h>
#include <vespa/searchsummary/docsummary/urlresult.h>
#include <vespa/searchsummary/docsummary/resultconfig.h>
#include <vespa/searchsummary/docsummary/docsumstore.h>
@@ -35,7 +34,7 @@ public:
: mustSkip(false), allGenerated(false), mustRepack(true),
outputClassId(ResultConfig::NoClassID()),
outputClass(NULL), outputClassInfo(NULL), inputClass(NULL)
- {}
+ { }
};
virtual ~IDocsumWriter() {}
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/resultpacker.cpp b/searchsummary/src/vespa/searchsummary/docsummary/resultpacker.cpp
index 5648702eb7f..83d504f2429 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/resultpacker.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/resultpacker.cpp
@@ -2,11 +2,9 @@
// Copyright (C) 1998-2003 Fast Search & Transfer ASA
// Copyright (C) 2003 Overture Services Norway AS
-#include <vespa/fastos/fastos.h>
#include <vespa/log/log.h>
#include <vespa/searchcommon/common/undefinedvalues.h>
#include <vespa/searchsummary/docsummary/resultpacker.h>
-#include <zlib.h>
LOG_SETUP(".searchlib.docsummary.resultpacker");
@@ -14,7 +12,7 @@ namespace search {
namespace docsummary {
void
-ResultPacker::WarnType(ResType type)
+ResultPacker::WarnType(ResType type) const
{
LOG(debug,
"ResultPacker: got '%s', expected '%s' "
@@ -23,6 +21,25 @@ ResultPacker::WarnType(ResType type)
GetResTypeName(_cfgEntry->_type));
}
+bool ResultPacker::CheckEntry(ResType type)
+{
+ if (_error)
+ return false;
+
+ bool rc = (_cfgEntry != NULL &&
+ IsBinaryCompatible(_cfgEntry->_type, type));
+
+ if (rc) {
+ if (_cfgEntry->_type != type) {
+ WarnType(type);
+ }
+ _cfgEntry = _resClass->GetEntry(++_entryIdx);
+ } else {
+ SetFormatError(type);
+ }
+
+ return rc;
+}
void
ResultPacker::SetFormatError(ResType type)
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/resultpacker.h b/searchsummary/src/vespa/searchsummary/docsummary/resultpacker.h
index 25763fd06a8..8280ebe0980 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/resultpacker.h
+++ b/searchsummary/src/vespa/searchsummary/docsummary/resultpacker.h
@@ -36,28 +36,10 @@ private:
static bool IsBinaryCompatible(ResType a, ResType b)
{ return ResultConfig::IsBinaryCompatible(a, b); }
- void WarnType(ResType type);
+ void WarnType(ResType type) const;
void SetFormatError(ResType type);
- bool CheckEntry(ResType type)
- {
- if (_error)
- return false;
-
- bool rc = (_cfgEntry != NULL &&
- IsBinaryCompatible(_cfgEntry->_type, type));
-
- if (rc) {
- if (_cfgEntry->_type != type) {
- WarnType(type);
- }
- _cfgEntry = _resClass->GetEntry(++_entryIdx);
- } else {
- SetFormatError(type);
- }
-
- return rc;
- }
+ bool CheckEntry(ResType type);
public:
/**