diff options
author | Tor Egge <Tor.Egge@online.no> | 2022-08-30 16:10:13 +0200 |
---|---|---|
committer | Tor Egge <Tor.Egge@online.no> | 2022-08-30 16:10:13 +0200 |
commit | f51892ec335b49d56f097da12f1138f03a32891d (patch) | |
tree | 976969352cdaf702f7f50181a6e91b902add7ac1 /searchsummary | |
parent | 7d6ff13ac8bd0485d30ffd2a979fae3d5fa8d08c (diff) |
Use reference to IDocsumEnvironemt instead of pointer.
Diffstat (limited to 'searchsummary')
21 files changed, 62 insertions, 66 deletions
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 28c0aad6c40..311a0e68a58 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 @@ -160,8 +160,8 @@ public: { } ~StateCallback() override; - void FillSummaryFeatures(GetDocsumsState*, IDocsumEnvironment*) override {} - void FillRankFeatures(GetDocsumsState*, IDocsumEnvironment*) override {} + void FillSummaryFeatures(GetDocsumsState&) override {} + void FillRankFeatures(GetDocsumsState&) override {} std::unique_ptr<MatchingElements> fill_matching_elements(const MatchingElementsFields&) override { auto result = std::make_unique<MatchingElements>(); result->add_matching_elements(doc_id, _field_name, _matching_elements); diff --git a/searchsummary/src/tests/docsummary/positionsdfw_test.cpp b/searchsummary/src/tests/docsummary/positionsdfw_test.cpp index 3531efe1798..0de84096e82 100644 --- a/searchsummary/src/tests/docsummary/positionsdfw_test.cpp +++ b/searchsummary/src/tests/docsummary/positionsdfw_test.cpp @@ -51,7 +51,7 @@ struct MyEnvironment : IDocsumEnvironment { MyEnvironment() : attribute_man(0) {} - IAttributeManager *getAttributeManager() override { return attribute_man; } + const IAttributeManager *getAttributeManager() const override { return attribute_man; } string lookupIndex(const string &s) const override { return s; } juniper::Juniper *getJuniper() override { return 0; } }; @@ -106,8 +106,8 @@ public: }; struct MyGetDocsumsStateCallback : GetDocsumsStateCallback { - virtual void FillSummaryFeatures(GetDocsumsState *, IDocsumEnvironment *) override {} - virtual void FillRankFeatures(GetDocsumsState *, IDocsumEnvironment *) override {} + virtual void FillSummaryFeatures(GetDocsumsState&) override {} + virtual void FillRankFeatures(GetDocsumsState&) override {} std::unique_ptr<MatchingElements> fill_matching_elements(const MatchingElementsFields &) override { abort(); } }; 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 971f6101203..88c6cd974b9 100644 --- a/searchsummary/src/tests/docsummary/slime_summary/slime_summary_test.cpp +++ b/searchsummary/src/tests/docsummary/slime_summary/slime_summary_test.cpp @@ -79,8 +79,8 @@ struct DocsumFixture : IDocsumStore, GetDocsumsStateCallback { } return std::make_unique<DocsumStoreDocument>(std::move(doc)); } - void FillSummaryFeatures(GetDocsumsState *, IDocsumEnvironment *) override { } - void FillRankFeatures(GetDocsumsState *, IDocsumEnvironment *) override { } + void FillSummaryFeatures(GetDocsumsState&) override { } + void FillRankFeatures(GetDocsumsState&) override { } std::unique_ptr<MatchingElements> fill_matching_elements(const search::MatchingElementsFields &) override { abort(); } }; diff --git a/searchsummary/src/vespa/searchsummary/docsummary/attributedfw.cpp b/searchsummary/src/vespa/searchsummary/docsummary/attributedfw.cpp index 285148951fa..60e3bd6d815 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/attributedfw.cpp +++ b/searchsummary/src/vespa/searchsummary/docsummary/attributedfw.cpp @@ -364,7 +364,7 @@ create_multi_writer(const IAttributeVector& attr, bool filter_elements, std::sha } std::unique_ptr<DocsumFieldWriter> -AttributeDFWFactory::create(IAttributeManager& attr_mgr, +AttributeDFWFactory::create(const IAttributeManager& attr_mgr, const vespalib::string& attr_name, bool filter_elements, std::shared_ptr<MatchingElementsFields> matching_elems_fields) diff --git a/searchsummary/src/vespa/searchsummary/docsummary/attributedfw.h b/searchsummary/src/vespa/searchsummary/docsummary/attributedfw.h index 88356ac783e..2b61803ebb3 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/attributedfw.h +++ b/searchsummary/src/vespa/searchsummary/docsummary/attributedfw.h @@ -18,7 +18,7 @@ namespace search::docsummary { */ class AttributeDFWFactory { public: - static std::unique_ptr<DocsumFieldWriter> create(IAttributeManager& attr_mgr, + static std::unique_ptr<DocsumFieldWriter> create(const IAttributeManager& attr_mgr, const vespalib::string& attr_name, bool filter_elements = false, std::shared_ptr<MatchingElementsFields> matching_elems_fields = std::shared_ptr<MatchingElementsFields>()); diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsum_field_writer_factory.cpp b/searchsummary/src/vespa/searchsummary/docsummary/docsum_field_writer_factory.cpp index fdbf9cf169d..cebfac4c86d 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/docsum_field_writer_factory.cpp +++ b/searchsummary/src/vespa/searchsummary/docsummary/docsum_field_writer_factory.cpp @@ -19,7 +19,7 @@ using vespalib::IllegalArgumentException; namespace search::docsummary { -DocsumFieldWriterFactory::DocsumFieldWriterFactory(bool use_v8_geo_positions, IDocsumEnvironment* env) +DocsumFieldWriterFactory::DocsumFieldWriterFactory(bool use_v8_geo_positions, IDocsumEnvironment& env) : _use_v8_geo_positions(use_v8_geo_positions), _env(env), _matching_elems_fields(std::make_shared<MatchingElementsFields>()) @@ -28,6 +28,12 @@ DocsumFieldWriterFactory::DocsumFieldWriterFactory(bool use_v8_geo_positions, ID DocsumFieldWriterFactory::~DocsumFieldWriterFactory() = default; +bool +DocsumFieldWriterFactory::has_attribute_manager() const noexcept +{ + return getEnvironment().getAttributeManager() != nullptr; +} + std::unique_ptr<DocsumFieldWriter> DocsumFieldWriterFactory::create_docsum_field_writer(const vespalib::string& fieldName, const vespalib::string& overrideName, const vespalib::string& argument, bool& rc) { @@ -35,7 +41,7 @@ DocsumFieldWriterFactory::create_docsum_field_writer(const vespalib::string& fie std::unique_ptr<DocsumFieldWriter> fieldWriter; if (overrideName == "dynamicteaser") { if ( ! argument.empty() ) { - auto fw = std::make_unique<DynamicTeaserDFW>(getEnvironment()->getJuniper()); + auto fw = std::make_unique<DynamicTeaserDFW>(getEnvironment().getJuniper()); auto fw_ptr = fw.get(); fieldWriter = std::move(fw); rc = fw_ptr->Init(fieldName.c_str(), argument); @@ -43,10 +49,10 @@ DocsumFieldWriterFactory::create_docsum_field_writer(const vespalib::string& fie throw IllegalArgumentException("Missing argument"); } } else if (overrideName == "summaryfeatures") { - fieldWriter = std::make_unique<SummaryFeaturesDFW>(getEnvironment()); + fieldWriter = std::make_unique<SummaryFeaturesDFW>(); rc = true; } else if (overrideName == "rankfeatures") { - fieldWriter = std::make_unique<RankFeaturesDFW>(getEnvironment()); + fieldWriter = std::make_unique<RankFeaturesDFW>(); rc = true; } else if (overrideName == "empty") { fieldWriter = std::make_unique<EmptyDFW>(); @@ -59,38 +65,38 @@ DocsumFieldWriterFactory::create_docsum_field_writer(const vespalib::string& fie throw IllegalArgumentException("Missing argument"); } } else if (overrideName == "absdist") { - if (getEnvironment()) { - fieldWriter = AbsDistanceDFW::create(argument.c_str(), getEnvironment()->getAttributeManager()); + if (has_attribute_manager()) { + fieldWriter = AbsDistanceDFW::create(argument.c_str(), getEnvironment().getAttributeManager()); rc = static_cast<bool>(fieldWriter); } } else if (overrideName == "positions") { - if (getEnvironment()) { - fieldWriter = PositionsDFW::create(argument.c_str(), getEnvironment()->getAttributeManager(), _use_v8_geo_positions); + if (has_attribute_manager()) { + fieldWriter = PositionsDFW::create(argument.c_str(), getEnvironment().getAttributeManager(), _use_v8_geo_positions); rc = static_cast<bool>(fieldWriter); } } else if (overrideName == "geopos") { - if (getEnvironment()) { - fieldWriter = GeoPositionDFW::create(argument.c_str(), getEnvironment()->getAttributeManager(), _use_v8_geo_positions); + if (has_attribute_manager()) { + fieldWriter = GeoPositionDFW::create(argument.c_str(), getEnvironment().getAttributeManager(), _use_v8_geo_positions); rc = static_cast<bool>(fieldWriter); } } else if (overrideName == "attribute") { - if (getEnvironment() && getEnvironment()->getAttributeManager()) { - fieldWriter = AttributeDFWFactory::create(*getEnvironment()->getAttributeManager(), argument); + if (has_attribute_manager()) { + fieldWriter = AttributeDFWFactory::create(*getEnvironment().getAttributeManager(), argument); rc = true; // Allow missing attribute vector } } else if (overrideName == "attributecombiner") { - if (getEnvironment() && getEnvironment()->getAttributeManager()) { - auto attr_ctx = getEnvironment()->getAttributeManager()->createContext(); + if (has_attribute_manager()) { + auto attr_ctx = getEnvironment().getAttributeManager()->createContext(); const vespalib::string& source_field = argument.empty() ? fieldName : argument; fieldWriter = AttributeCombinerDFW::create(source_field, *attr_ctx, false, std::shared_ptr<MatchingElementsFields>()); rc = static_cast<bool>(fieldWriter); } } else if (overrideName == "matchedattributeelementsfilter") { const vespalib::string& source_field = argument.empty() ? fieldName : argument; - if (getEnvironment() && getEnvironment()->getAttributeManager()) { - auto attr_ctx = getEnvironment()->getAttributeManager()->createContext(); + if (has_attribute_manager()) { + auto attr_ctx = getEnvironment().getAttributeManager()->createContext(); if (attr_ctx->getAttribute(source_field) != nullptr) { - fieldWriter = AttributeDFWFactory::create(*getEnvironment()->getAttributeManager(), source_field, true, _matching_elems_fields); + fieldWriter = AttributeDFWFactory::create(*getEnvironment().getAttributeManager(), source_field, true, _matching_elems_fields); } else { fieldWriter = AttributeCombinerDFW::create(source_field, *attr_ctx, true, _matching_elems_fields); } @@ -98,8 +104,8 @@ DocsumFieldWriterFactory::create_docsum_field_writer(const vespalib::string& fie } } else if (overrideName == "matchedelementsfilter") { const vespalib::string& source_field = argument.empty() ? fieldName : argument; - if (getEnvironment() && getEnvironment()->getAttributeManager()) { - auto attr_ctx = getEnvironment()->getAttributeManager()->createContext(); + if (has_attribute_manager()) { + auto attr_ctx = getEnvironment().getAttributeManager()->createContext(); fieldWriter = MatchedElementsFilterDFW::create(source_field,*attr_ctx, _matching_elems_fields); rc = static_cast<bool>(fieldWriter); } diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsum_field_writer_factory.h b/searchsummary/src/vespa/searchsummary/docsummary/docsum_field_writer_factory.h index 2725ca748bd..b4f28524eba 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/docsum_field_writer_factory.h +++ b/searchsummary/src/vespa/searchsummary/docsummary/docsum_field_writer_factory.h @@ -16,12 +16,13 @@ class IDocsumEnvironment; class DocsumFieldWriterFactory : public IDocsumFieldWriterFactory { bool _use_v8_geo_positions; - IDocsumEnvironment * _env; + IDocsumEnvironment& _env; protected: std::shared_ptr<MatchingElementsFields> _matching_elems_fields; - IDocsumEnvironment * getEnvironment() { return _env; } + IDocsumEnvironment& getEnvironment() const noexcept { return _env; } + bool has_attribute_manager() const noexcept; public: - DocsumFieldWriterFactory(bool use_v8_geo_positions, IDocsumEnvironment* env); + DocsumFieldWriterFactory(bool use_v8_geo_positions, IDocsumEnvironment& env); ~DocsumFieldWriterFactory() override; std::unique_ptr<DocsumFieldWriter> create_docsum_field_writer(const vespalib::string& fieldName, const vespalib::string& overrideName, const vespalib::string& argument, bool& rc) override; }; diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.h b/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.h index f5a82b4f79b..40c4e134bbc 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.h +++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.h @@ -16,7 +16,7 @@ class ResultConfig; class DynamicDocsumConfig { public: - DynamicDocsumConfig(IDocsumEnvironment * env, DynamicDocsumWriter * writer) : + DynamicDocsumConfig(IDocsumEnvironment& env, DynamicDocsumWriter * writer) : _env(env), _writer(writer) { } @@ -24,12 +24,12 @@ public: void configure(const vespa::config::search::SummarymapConfig &cfg); protected: using string = vespalib::string; - IDocsumEnvironment * getEnvironment() { return _env; } + IDocsumEnvironment& getEnvironment() { return _env; } const ResultConfig & getResultConfig() const; virtual std::unique_ptr<IDocsumFieldWriterFactory> make_docsum_field_writer_factory(); private: - IDocsumEnvironment * _env; + IDocsumEnvironment& _env; DynamicDocsumWriter * _writer; }; diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumstate.h b/searchsummary/src/vespa/searchsummary/docsummary/docsumstate.h index d3d09224f64..0ebcc20ef42 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/docsumstate.h +++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumstate.h @@ -32,8 +32,8 @@ class DocsumFieldWriterState; class GetDocsumsStateCallback { public: - virtual void FillSummaryFeatures(GetDocsumsState * state, IDocsumEnvironment * env) = 0; - virtual void FillRankFeatures(GetDocsumsState * state, IDocsumEnvironment * env) = 0; + virtual void FillSummaryFeatures(GetDocsumsState& state) = 0; + virtual void FillRankFeatures(GetDocsumsState& state) = 0; virtual std::unique_ptr<MatchingElements> fill_matching_elements(const MatchingElementsFields &matching_elems_fields) = 0; virtual ~GetDocsumsStateCallback() = default; GetDocsumsStateCallback(const GetDocsumsStateCallback &) = delete; diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp b/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp index 28c55f1c2a6..d911ac562c2 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp +++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.cpp @@ -143,7 +143,7 @@ DynamicDocsumWriter::Override(const char *fieldName, std::unique_ptr<DocsumField void -DynamicDocsumWriter::InitState(IAttributeManager & attrMan, GetDocsumsState *state) +DynamicDocsumWriter::InitState(const IAttributeManager & attrMan, GetDocsumsState *state) { state->_kwExtractor = _keywordExtractor.get(); state->_attrCtx = attrMan.createContext(); diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.h b/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.h index e8ef80663f9..ac0d461ab81 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.h +++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumwriter.h @@ -37,7 +37,7 @@ public: }; virtual ~IDocsumWriter() = default; - virtual void InitState(search::IAttributeManager & attrMan, GetDocsumsState *state) = 0; + virtual void InitState(const search::IAttributeManager & attrMan, GetDocsumsState *state) = 0; virtual void WriteDocsum(uint32_t docid, GetDocsumsState *state, IDocsumStore *docinfos, Inserter & target) = 0; virtual void insertDocsum(const ResolveClassInfo & rci, uint32_t docid, GetDocsumsState *state, @@ -67,7 +67,7 @@ public: const ResultConfig *GetResultConfig() { return _resultConfig.get(); } bool Override(const char *fieldName, std::unique_ptr<DocsumFieldWriter> writer); - void InitState(search::IAttributeManager & attrMan, GetDocsumsState *state) override; + void InitState(const search::IAttributeManager & attrMan, GetDocsumsState *state) override; void WriteDocsum(uint32_t docid, GetDocsumsState *state, IDocsumStore *docinfos, Inserter & inserter) override; diff --git a/searchsummary/src/vespa/searchsummary/docsummary/geoposdfw.cpp b/searchsummary/src/vespa/searchsummary/docsummary/geoposdfw.cpp index 975fd7f0a6a..474f329799b 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/geoposdfw.cpp +++ b/searchsummary/src/vespa/searchsummary/docsummary/geoposdfw.cpp @@ -101,7 +101,7 @@ GeoPositionDFW::insertField(uint32_t docid, GetDocsumsState * dsState, ResType, GeoPositionDFW::UP GeoPositionDFW::create(const char *attribute_name, - IAttributeManager *attribute_manager, + const IAttributeManager *attribute_manager, bool useV8geoPositions) { GeoPositionDFW::UP ret; diff --git a/searchsummary/src/vespa/searchsummary/docsummary/geoposdfw.h b/searchsummary/src/vespa/searchsummary/docsummary/geoposdfw.h index db43592c0b4..1bc8b523160 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/geoposdfw.h +++ b/searchsummary/src/vespa/searchsummary/docsummary/geoposdfw.h @@ -17,7 +17,7 @@ public: typedef std::unique_ptr<GeoPositionDFW> UP; GeoPositionDFW(const vespalib::string & attrName, bool useV8geoPositions); void insertField(uint32_t docid, GetDocsumsState *state, ResType type, vespalib::slime::Inserter &target) const override; - static UP create(const char *attribute_name, IAttributeManager *attribute_manager, bool useV8geoPositions); + static UP create(const char *attribute_name, const IAttributeManager *attribute_manager, bool useV8geoPositions); }; } diff --git a/searchsummary/src/vespa/searchsummary/docsummary/idocsumenvironment.h b/searchsummary/src/vespa/searchsummary/docsummary/idocsumenvironment.h index bc6a347590a..1e9f550ac6d 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/idocsumenvironment.h +++ b/searchsummary/src/vespa/searchsummary/docsummary/idocsumenvironment.h @@ -12,10 +12,10 @@ namespace search::docsummary { **/ class IDocsumEnvironment { public: - virtual search::IAttributeManager * getAttributeManager() = 0; + virtual const search::IAttributeManager * getAttributeManager() const = 0; virtual vespalib::string lookupIndex(const vespalib::string & s) const = 0; virtual juniper::Juniper * getJuniper() = 0; - virtual ~IDocsumEnvironment() {} + virtual ~IDocsumEnvironment() = default; }; } diff --git a/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp b/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp index aa7db0e2745..1000fee8423 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp +++ b/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.cpp @@ -252,7 +252,7 @@ PositionsDFW::insertField(uint32_t docid, GetDocsumsState * dsState, ResType typ //-------------------------------------------------------------------------- -PositionsDFW::UP PositionsDFW::create(const char *attribute_name, IAttributeManager *attribute_manager, bool useV8geoPositions) { +PositionsDFW::UP PositionsDFW::create(const char *attribute_name, const IAttributeManager *attribute_manager, bool useV8geoPositions) { PositionsDFW::UP ret; if (attribute_manager != nullptr) { if (!attribute_name) { @@ -274,7 +274,7 @@ PositionsDFW::UP PositionsDFW::create(const char *attribute_name, IAttributeMana } std::unique_ptr<DocsumFieldWriter> -AbsDistanceDFW::create(const char *attribute_name, IAttributeManager *attribute_manager) { +AbsDistanceDFW::create(const char *attribute_name, const IAttributeManager *attribute_manager) { std::unique_ptr<DocsumFieldWriter> ret; if (attribute_manager != nullptr) { if (!attribute_name) { diff --git a/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.h b/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.h index c0d9d7d8111..d0a38d1004e 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.h +++ b/searchsummary/src/vespa/searchsummary/docsummary/positionsdfw.h @@ -46,7 +46,7 @@ public: void insertField(uint32_t docid, GetDocsumsState *state, ResType type, vespalib::slime::Inserter &target) const override; - static std::unique_ptr<DocsumFieldWriter> create(const char *attribute_name, IAttributeManager *index_man); + static std::unique_ptr<DocsumFieldWriter> create(const char *attribute_name, const IAttributeManager *index_man); }; @@ -61,7 +61,7 @@ public: PositionsDFW(const vespalib::string & attrName, bool useV8geoPositions); bool IsGenerated() const override { return true; } void insertField(uint32_t docid, GetDocsumsState *state, ResType type, vespalib::slime::Inserter &target) const override; - static UP create(const char *attribute_name, IAttributeManager *index_man, bool useV8geoPositions); + static UP create(const char *attribute_name, const IAttributeManager *index_man, bool useV8geoPositions); }; diff --git a/searchsummary/src/vespa/searchsummary/docsummary/rankfeaturesdfw.cpp b/searchsummary/src/vespa/searchsummary/docsummary/rankfeaturesdfw.cpp index 5b08020c010..b7b10d9c1ea 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/rankfeaturesdfw.cpp +++ b/searchsummary/src/vespa/searchsummary/docsummary/rankfeaturesdfw.cpp @@ -7,9 +7,7 @@ namespace search::docsummary { -RankFeaturesDFW::RankFeaturesDFW(IDocsumEnvironment * env) : - _env(env) -{ } +RankFeaturesDFW::RankFeaturesDFW() = default; RankFeaturesDFW::~RankFeaturesDFW() = default; @@ -18,7 +16,7 @@ RankFeaturesDFW::insertField(uint32_t docid, GetDocsumsState *state, ResType, vespalib::slime::Inserter &target) const { if ( !state->_rankFeatures ) { - state->_callback.FillRankFeatures(state, _env); + state->_callback.FillRankFeatures(*state); if (state->_rankFeatures.get() == nullptr) { // still no rank features to write return; } diff --git a/searchsummary/src/vespa/searchsummary/docsummary/rankfeaturesdfw.h b/searchsummary/src/vespa/searchsummary/docsummary/rankfeaturesdfw.h index d0516f9f0b7..023d5ad158f 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/rankfeaturesdfw.h +++ b/searchsummary/src/vespa/searchsummary/docsummary/rankfeaturesdfw.h @@ -10,11 +10,8 @@ class IDocsumEnvironment; class RankFeaturesDFW : public SimpleDFW { -private: - IDocsumEnvironment * _env; - public: - RankFeaturesDFW(IDocsumEnvironment * env); + RankFeaturesDFW(); RankFeaturesDFW(const RankFeaturesDFW &) = delete; RankFeaturesDFW & operator=(const RankFeaturesDFW &) = delete; ~RankFeaturesDFW() override; diff --git a/searchsummary/src/vespa/searchsummary/docsummary/summaryfeaturesdfw.cpp b/searchsummary/src/vespa/searchsummary/docsummary/summaryfeaturesdfw.cpp index f5fc942e40c..76bae0cee97 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/summaryfeaturesdfw.cpp +++ b/searchsummary/src/vespa/searchsummary/docsummary/summaryfeaturesdfw.cpp @@ -11,10 +11,7 @@ LOG_SETUP(".searchlib.docsummary.summaryfeaturesdfw"); namespace search::docsummary { -SummaryFeaturesDFW::SummaryFeaturesDFW(IDocsumEnvironment * env) : - _env(env) -{ -} +SummaryFeaturesDFW::SummaryFeaturesDFW() = default; SummaryFeaturesDFW::~SummaryFeaturesDFW() = default; @@ -27,7 +24,7 @@ SummaryFeaturesDFW::insertField(uint32_t docid, GetDocsumsState *state, ResType, return; } if ( ! state->_summaryFeatures) { - state->_callback.FillSummaryFeatures(state, _env); + state->_callback.FillSummaryFeatures(*state); if ( !state->_summaryFeatures) { // still no summary features to write return; } diff --git a/searchsummary/src/vespa/searchsummary/docsummary/summaryfeaturesdfw.h b/searchsummary/src/vespa/searchsummary/docsummary/summaryfeaturesdfw.h index 45d7f7fa641..fd1092f840a 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/summaryfeaturesdfw.h +++ b/searchsummary/src/vespa/searchsummary/docsummary/summaryfeaturesdfw.h @@ -10,11 +10,8 @@ class IDocsumEnvironment; class SummaryFeaturesDFW : public SimpleDFW { -private: - IDocsumEnvironment * _env; - public: - SummaryFeaturesDFW(IDocsumEnvironment * env); + SummaryFeaturesDFW(); SummaryFeaturesDFW(const SummaryFeaturesDFW &) = delete; SummaryFeaturesDFW & operator=(const SummaryFeaturesDFW &) = delete; ~SummaryFeaturesDFW() override; diff --git a/searchsummary/src/vespa/searchsummary/test/mock_state_callback.h b/searchsummary/src/vespa/searchsummary/test/mock_state_callback.h index df035fca685..71c2be19bba 100644 --- a/searchsummary/src/vespa/searchsummary/test/mock_state_callback.h +++ b/searchsummary/src/vespa/searchsummary/test/mock_state_callback.h @@ -16,8 +16,8 @@ public: { } ~MockStateCallback() override { } - void FillSummaryFeatures(GetDocsumsState*, IDocsumEnvironment*) override { } - void FillRankFeatures(GetDocsumsState*, IDocsumEnvironment*) override { } + void FillSummaryFeatures(GetDocsumsState&) override { } + void FillRankFeatures(GetDocsumsState&) override { } std::unique_ptr<MatchingElements> fill_matching_elements(const search::MatchingElementsFields&) override { return std::make_unique<MatchingElements>(_matching_elems); } |