|
rippled
|
A listening socket. More...
#include <Door.h>


Classes | |
| class | Detector |
| struct | FDStats |
Public Member Functions | |
| Door (Handler &handler, boost::asio::io_context &io_context, Port const &port, beast::Journal j) | |
| void | run () |
| void | close () override |
| Close the Door listening socket and connections. | |
| endpoint_type | get_endpoint () const |
| io_list & | ios () |
| Return the io_list associated with the work. | |
| T | shared_from_this (T... args) |
| T | weak_from_this (T... args) |
Private Types | |
| using | clock_type = std::chrono::steady_clock |
| using | timer_type = boost::asio::basic_waitable_timer< clock_type > |
| using | error_code = boost::system::error_code |
| using | yield_context = boost::asio::yield_context |
| using | protocol_type = boost::asio::ip::tcp |
| using | acceptor_type = protocol_type::acceptor |
| using | endpoint_type = protocol_type::endpoint |
| using | socket_type = boost::asio::ip::tcp::socket |
| using | stream_type = boost::beast::tcp_stream |
Private Member Functions | |
| void | reOpen () |
| std::optional< FDStats > | query_fd_stats () const |
| bool | should_throttle_for_fds () |
| template<class ConstBufferSequence > | |
| void | create (bool ssl, ConstBufferSequence const &buffers, stream_type &&stream, endpoint_type remote_address) |
| void | do_accept (yield_context yield) |
| template<class = void> | |
| void | destroy () |
Private Attributes | |
| beast::Journal const | j_ |
| Port const & | port_ |
| Handler & | handler_ |
| boost::asio::io_context & | ioc_ |
| acceptor_type | acceptor_ |
| boost::asio::strand< boost::asio::io_context::executor_type > | strand_ |
| bool | ssl_ |
| bool | plain_ |
| std::chrono::milliseconds | accept_delay_ {INITIAL_ACCEPT_DELAY} |
| boost::asio::steady_timer | backoff_timer_ |
| io_list * | ios_ = nullptr |
Static Private Attributes | |
| static constexpr std::chrono::milliseconds | INITIAL_ACCEPT_DELAY {50} |
| static constexpr std::chrono::milliseconds | MAX_ACCEPT_DELAY {2000} |
| static constexpr double | FREE_FD_THRESHOLD = 0.70 |
A listening socket.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
| ripple::Door< Handler >::Door | ( | Handler & | handler, |
| boost::asio::io_context & | io_context, | ||
| Port const & | port, | ||
| beast::Journal | j | ||
| ) |
|
private |
|
private |
|
private |
| void ripple::Door< Handler >::run | ( | ) |
|
overridevirtual |
Close the Door listening socket and connections.
The listening socket is closed, and all open connections belonging to the Door are closed. Thread Safety: May be called concurrently
Implements ripple::io_list::work.
| endpoint_type ripple::Door< Handler >::get_endpoint | ( | ) | const |
|
private |
|
private |
|
privateinherited |
|
inherited |
Return the io_list associated with the work.
Requirements: The call to io_list::emplace to create the work has already returned.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
staticconstexprprivate |
|
staticconstexprprivate |
|
private |
|
private |
|
staticconstexprprivate |