diff options
Diffstat (limited to 'streamingvisitors')
-rw-r--r-- | streamingvisitors/src/vespa/searchvisitor/searchvisitor.cpp | 7 | ||||
-rw-r--r-- | streamingvisitors/src/vespa/searchvisitor/searchvisitor.h | 2 |
2 files changed, 7 insertions, 2 deletions
diff --git a/streamingvisitors/src/vespa/searchvisitor/searchvisitor.cpp b/streamingvisitors/src/vespa/searchvisitor/searchvisitor.cpp index e81292b4170..94bc3da7df9 100644 --- a/streamingvisitors/src/vespa/searchvisitor/searchvisitor.cpp +++ b/streamingvisitors/src/vespa/searchvisitor/searchvisitor.cpp @@ -461,13 +461,16 @@ void SearchVisitor::init(const Parameters & params) SearchVisitorFactory::SearchVisitorFactory(const config::ConfigUri & configUri) : VisitorFactory(), - _configUri(configUri) + _configUri(configUri), + _env(std::make_shared<SearchEnvironment>(_configUri)) {} +SearchVisitorFactory::~SearchVisitorFactory() = default; + std::shared_ptr<VisitorEnvironment> SearchVisitorFactory::makeVisitorEnvironment(StorageComponent&) { - return std::make_shared<SearchEnvironment>(_configUri); + return _env; } storage::Visitor* diff --git a/streamingvisitors/src/vespa/searchvisitor/searchvisitor.h b/streamingvisitors/src/vespa/searchvisitor/searchvisitor.h index 24b7bd64aec..daeb4013ebd 100644 --- a/streamingvisitors/src/vespa/searchvisitor/searchvisitor.h +++ b/streamingvisitors/src/vespa/searchvisitor/searchvisitor.h @@ -490,12 +490,14 @@ private: class SearchVisitorFactory : public storage::VisitorFactory { config::ConfigUri _configUri; + std::shared_ptr<storage::VisitorEnvironment> _env; std::shared_ptr<storage::VisitorEnvironment> makeVisitorEnvironment(storage::StorageComponent&) override; storage::Visitor* makeVisitor(storage::StorageComponent&, storage::VisitorEnvironment&env, const vdslib::Parameters& params) override; public: explicit SearchVisitorFactory(const config::ConfigUri & configUri); + ~SearchVisitorFactory() override; }; } |