userver: userver/ugrpc/client/middlewares/deadline_propagation/component.hpp Source File
Loading...
Searching...
No Matches
component.hpp
Go to the documentation of this file.
1#pragma once
2
3/// @file userver/ugrpc/client/middlewares/deadline_propagation/component.hpp
4/// @brief @copybrief
5/// ugrpc::client::middlewares::deadline_propagation::Component
6
7#include <userver/ugrpc/client/middlewares/base.hpp>
8
9USERVER_NAMESPACE_BEGIN
10
11/// Client logging middleware
12namespace ugrpc::client::middlewares::deadline_propagation {
13
14/// @ingroup userver_components
15///
16/// @brief Component for gRPC client deadline_propagation. Update deadline
17/// from TaskInheritedData if it exists and more strict than
18/// context deadline.
19///
20/// @see @ref scripts/docs/en/userver/deadline_propagation.md
21class Component final : public MiddlewareComponentBase {
22 public:
23 /// @ingroup userver_component_names
24 /// @brief The default name of
25 /// ugrpc::client::middlewares::deadline_propagation::Component
26 static constexpr std::string_view kName = "grpc-client-deadline-propagation";
27
28 Component(const components::ComponentConfig& config,
29 const components::ComponentContext& context);
30
31 std::shared_ptr<const MiddlewareFactoryBase> GetMiddlewareFactory() override;
32
33 static yaml_config::Schema GetStaticConfigSchema();
34};
35
36} // namespace ugrpc::client::middlewares::deadline_propagation
37
38USERVER_NAMESPACE_END