userver: userver/clients/http/plugins/headers_propagator/component.hpp Source File
Loading...
Searching...
No Matches
component.hpp
1#pragma once
2
3#include <memory>
4
5#include <userver/clients/http/plugin_component.hpp>
6
7USERVER_NAMESPACE_BEGIN
8
9namespace clients::http::plugins::headers_propagator {
10
11class Plugin;
12
13class Component final : public plugin::ComponentBase {
14public:
15 /// @ingroup userver_component_names
16 /// @brief The default name of
17 /// clients::http::plugins::headers_propagator::Component component
18 static constexpr std::string_view kName = "http-client-plugin-headers-propagator";
19
20 Component(const components::ComponentConfig&, const components::ComponentContext&);
21
22 ~Component() override;
23
24 http::Plugin& GetPlugin() override;
25
26private:
27 std::unique_ptr<headers_propagator::Plugin> plugin_;
28};
29
30} // namespace clients::http::plugins::headers_propagator
31
32template <>
33inline constexpr bool components::kHasValidate<clients::http::plugins::headers_propagator::Component> = true;
34
35USERVER_NAMESPACE_END