userver: userver/dump/factory.hpp Source File
Loading...
Searching...
No Matches
factory.hpp
Go to the documentation of this file.
1#pragma once
2
3/// @file userver/dump/factory.hpp
4/// @brief @copybrief dump::OperationsFactory
5
6#include <userver/components/component_context.hpp>
7#include <userver/dump/config.hpp>
8#include <userver/dump/operations.hpp>
9#include <userver/tracing/scope_time.hpp>
10
11USERVER_NAMESPACE_BEGIN
12
13namespace dump {
14
15/// @brief Abstract dump Reader/Writer factory
17public:
18 virtual ~OperationsFactory() = default;
19
20 virtual std::unique_ptr<Reader> CreateReader(std::string full_path) = 0;
21
22 virtual std::unique_ptr<Writer> CreateWriter(std::string full_path, tracing::ScopeTime& scope) = 0;
23};
24
25std::unique_ptr<dump::OperationsFactory> CreateOperationsFactory(
26 const Config& config,
27 const components::ComponentContext& context
28);
29
30std::unique_ptr<dump::OperationsFactory> CreateDefaultOperationsFactory(const Config& config);
31
32} // namespace dump
33
34USERVER_NAMESPACE_END