6#include <userver/components/component_config.hpp>
7#include <userver/components/component_context.hpp>
8#include <userver/server/handlers/http_handler_base.hpp>
9#include <userver/server/websocket/server.hpp>
11USERVER_NAMESPACE_BEGIN
13namespace server::websocket {
36 WebsocketHandlerBase(
const components::ComponentConfig&,
const components::ComponentContext&);
44 HandleHandshake(
const server::http::HttpRequest&, server::http::HttpResponse&, server::request::RequestContext&)
50 void WriteMetrics(utils::statistics::Writer& writer)
const;
52 static yaml_config::Schema GetStaticConfigSchema();
58 [[
maybe_unused]]
const server::http::HttpRequest& request,
59 [[
maybe_unused]] server::request::RequestContext& context
61 LOG_WARNING() <<
"Not a GET 'Upgrade: websocket' and 'Connection: Upgrade' request";
62 throw server::handlers::ClientError();
66 std::string HandleRequestThrow(
const server::http::HttpRequest& request, server::request::RequestContext& context)
69 websocket::Config config_;
70 mutable Statistics stats_;