userver
C++ Async Framework
Toggle main menu visibility
Loading...
Searching...
No Matches
component.hpp
Go to the documentation of this file.
1
#
pragma
once
2
3
/// @file userver/ugrpc/client/middlewares/headers_propagator/component.hpp
4
/// @brief @copybrief ugrpc::client::middlewares::headers_propagator::Component
5
6
#
include
<
userver
/
ugrpc
/
client
/
middlewares
/
base
.
hpp
>
7
8
USERVER_NAMESPACE_BEGIN
9
10
/// Server headers_propagator middleware
11
/// @see @ref scripts/docs/en/userver/grpc/client_middlewares.md
12
/// @see @ref ugrpc::client::middlewares::headers_propagator::Component
13
namespace
ugrpc::client::middlewares::
headers_propagator
{
14
15
/// @ingroup userver_components
16
///
17
/// @brief gRPC client middleware for sending headers stored by the respective HTTP and gRPC server middlewares.
18
///
19
/// ## Static options of ugrpc::client::middlewares::headers_propagator::Component:
20
/// @include{doc} scripts/docs/en/components_schema/grpc/src/ugrpc/client/middlewares/headers_propagator/component.md
21
///
22
/// Options inherited from @ref middlewares::MiddlewareFactoryComponentBase :
23
/// @include{doc} scripts/docs/en/components_schema/core/src/middlewares/factory_component_base.md
24
///
25
/// Options inherited from @ref components::ComponentBase :
26
/// @include{doc} scripts/docs/en/components_schema/core/src/components/impl/component_base.md
27
///
28
/// @see @ref scripts/docs/en/userver/grpc/client_middlewares.md
29
class
Component
final
:
public
MiddlewareFactoryComponentBase
{
30
public
:
31
/// @ingroup userver_component_names
32
/// @brief The default name of ugrpc::client::middlewares::headers_propagator::Component.
33
static
constexpr
std::string_view
kName
=
"grpc-client-headers-propagator"
;
34
35
Component(
const
components
::ComponentConfig& config,
const
components
::ComponentContext& context);
36
37
~Component()
override
;
38
39
static
yaml_config::Schema GetStaticConfigSchema();
40
41
yaml_config::Schema
GetMiddlewareConfigSchema
()
const
override
;
42
43
std::shared_ptr<
const
MiddlewareBase> CreateMiddleware(
44
const
ugrpc::client::ClientInfo&,
45
const
yaml_config::
YamlConfig
& middleware_config
46
)
const
override
;
47
};
48
49
}
// namespace ugrpc::client::middlewares::headers_propagator
50
51
template
<>
52
inline
constexpr
auto
components
::kConfigFileMode<
53
ugrpc::client::middlewares::headers_propagator::Component> =
ConfigFileMode
::
kNotRequired
;
54
55
USERVER_NAMESPACE_END
userver
ugrpc
client
middlewares
headers_propagator
component.hpp
Generated on
for userver by
Doxygen
1.17.0