5#include <userver/components/component_config.hpp>
6#include <userver/components/component_context.hpp>
7#include <userver/ugrpc/server/server.hpp>
8#include <userver/ugrpc/server/service_component_base.hpp>
10USERVER_NAMESPACE_BEGIN
17class ProtoServerReflection;
21 static constexpr std::string_view kName =
"grpc-reflection-service";
23 ReflectionServiceComponent(
const components::ComponentConfig& config,
const components::ComponentContext& context);
25 ~ReflectionServiceComponent();
28 void OnAllComponentsLoaded() override;
30 components::ComponentHealth GetComponentHealth()
const override;
32 void AddService(std::string_view service_name);
34 std::unique_ptr<grpc_reflection::ProtoServerReflection> service_;
35 ugrpc::
server::Server& ugrpc_server_;
36 std::atomic<
bool> ready_{
false};