13 #include <restinio/connection_state_listener.hpp> 14 #include <restinio/incoming_http_msg_limits.hpp> 16 #include <restinio/utils/suppress_exceptions.hpp> 39 template<
typename Listener >
44 template<
typename Settings >
46 const Settings & settings )
50 template<
typename Lambda >
57 template<
typename Lambda >
60 Lambda && lambda )
const noexcept 82 template<
typename Lambda >
89 template<
typename Lambda >
109 template <
typename Traits >
115 using timer_manager_t =
typename Traits::timer_manager_t;
120 using logger_t =
typename Traits::logger_t;
122 using connection_state_listener_holder_t =
124 typename Traits::connection_state_listener_t >;
139 template <
typename Settings >
141 Settings && settings,
142 llhttp_settings_t parser_settings,
143 timer_manager_handle_t timer_manager )
164 throw exception_t{
"extra_data_factory is nullptr" };
203 return m_timer_manager->create_timer_guard();
215 return *m_extra_data_factory;
233 template <
typename Traits >
const llhttp_settings_t m_parser_settings
Parser settings.
extra_data_factory_handle_t m_extra_data_factory
A factory for instances of extra-data incorporated into a request.
std::unique_ptr< request_handler_t > m_request_handler
Request handler factory.
connection_settings_t(Settings &&settings, llhttp_settings_t parser_settings, timer_manager_handle_t timer_manager)
state_listener_holder_t(const Settings &settings)
std::chrono::steady_clock::duration m_write_http_response_timelimit
std::chrono::steady_clock::duration m_handle_request_timeout
connection_settings_t & operator=(connection_settings_t &&)=delete
std::enable_if< std::is_same< Parameter_Container, query_string_params_t >::value||std::is_same< Parameter_Container, router::route_params_t >::value, std::optional< Value_Type > >::type opt_value(const Parameter_Container ¶ms, string_view_t key)
Gets the value of a parameter specified by key wrapped in std::optional<Value_Type> if parameter exis...
timer_manager_handle_t m_timer_manager
Timer factory for timout guards.
connection_settings_t(const connection_settings_t &&)=delete
void call_state_listener_suppressing_exceptions(Lambda &&lambda) const noexcept
const std::unique_ptr< logger_t > m_logger
std::size_t m_max_pipelined_requests
Parameters shared between connections.
void call_state_listener(Lambda &&lambda) const
connection_settings_t(const connection_settings_t &)=delete
A class for holding actual state listener.
std::shared_ptr< Listener > m_connection_state_listener
void call_state_listener_suppressing_exceptions(Lambda &&) const noexcept
std::size_t m_buffer_size
Params from server_settings_t.
connection_settings_t & operator=(const connection_settings_t &)=delete
std::chrono::steady_clock::duration m_read_next_http_message_timelimit
auto & extra_data_factory() const noexcept
Get a reference to extra-data-factory object.
auto create_timer_guard()
Create new timer guard.
const incoming_http_msg_limits_t m_incoming_http_msg_limits