26#include <seastar/http/request_parser.hh>
27#include <seastar/core/seastar.hh>
28#include <seastar/core/sstring.hh>
29#include <seastar/core/gate.hh>
30#include <seastar/core/queue.hh>
31#include <seastar/core/when_all.hh>
32#include <seastar/websocket/common.hh>
34namespace seastar::experimental::websocket {
45 http_request_parser _http_parser;
66 future<> read_http_upgrade_request();
67 void on_new_connection();
77 std::vector<server_socket> _listeners;
78 boost::intrusive::list<server_connection> _connections;
79 std::map<std::string, handler_t> _handlers;
99 bool is_handler_registered(std::string
const& name);
a server WebSocket connection
Definition: common.hh:58
a server WebSocket connection
Definition: server.hh:42
a WebSocket server
Definition: server.hh:76
A representation of a possibly not-yet-computed value.
Definition: future.hh:1219
A listening socket, waiting to accept incoming network connections.
Definition: api.hh:326
Definition: socket_defs.hh:47
future process()
serve WebSocket protocol on a server_connection
void listen(socket_address addr)
listen for a WebSocket connection on given address
void register_handler(const std::string &name, handler_t handler)
Register a handler for specific subprotocol.
void listen(socket_address addr, listen_options lo)
listen for a WebSocket connection on given address with custom options
server_connection(server &server, connected_socket &&fd)
Definition: server.hh:52