Nexus HTTP/3
A QUIC and HTTP/3 library
Public Types | Public Member Functions | List of all members
nexus::h3::server_connection Class Reference

an HTTP/3 connection that can accept incoming streams and push associated outgoing streams More...

#include <nexus/h3/server.hpp>

Public Types

using executor_type = quic::detail::connection_impl::executor_type
 the polymorphic executor type, boost::asio::any_io_executor
 

Public Member Functions

 server_connection (acceptor &a)
 construct a server-side connection for use with accept()
 
executor_type get_executor () const
 return the associated io executor
 
bool is_open () const
 determine whether the connection is open
 
quic::connection_id id (error_code &ec) const
 return the connection id if open
 
quic::connection_id id () const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
udp::endpoint remote_endpoint (error_code &ec) const
 return the remote's address/port if open
 
udp::endpoint remote_endpoint () const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
template<typename CompletionToken >
decltype(auto) async_accept (stream &s, CompletionToken &&token)
 accept an incoming stream
 
void accept (stream &s, error_code &ec)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
void accept (stream &s)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
void go_away (error_code &ec)
 send a GOAWAY frame and stop initiating or accepting new streams
 
void go_away ()
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
void close (error_code &ec)
 close the connection, along with any related streams
 
void close ()
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 

Detailed Description

an HTTP/3 connection that can accept incoming streams and push associated outgoing streams