RESTinio

Public Types | Public Member Functions | Public Attributes | Private Attributes | List of all members
restinio::impl::connection_settings_t< Traits > Struct Template Referencefinal

Parameters shared between connections. More...

`#include <connection_settings.hpp>`

Inheritance diagram for restinio::impl::connection_settings_t< Traits >:

## Public Types
using | timer_manager_t = typename Traits::timer_manager_t
using | timer_manager_handle_t = std::shared_ptr< timer_manager_t >
using | request_handler_t = request_handler_type_from_traits_t< Traits >
using | logger_t = typename Traits::logger_t
using | connection_state_listener_holder_t = connection_settings_details::state_listener_holder_t< typename Traits::connection_state_listener_t >
using | extra_data_factory_handle_t = std::shared_ptr< typename Traits::extra_data_factory_t >
| An alias for shared-pointer to extra-data-factory. More...

## Public Member Functions
| connection_settings_t (const connection_settings_t &)=delete
| connection_settings_t (const connection_settings_t &&)=delete
connection_settings_t & | operator= (const connection_settings_t &)=delete
connection_settings_t & | operator= (connection_settings_t &&)=delete
template<typename Settings >
| connection_settings_t (Settings &&settings, http_parser_settings parser_settings, timer_manager_handle_t timer_manager)
auto | create_timer_guard ()
| Create new timer guard. More...
RESTINIO_NODISCARD auto & | extra_data_factory () const noexcept
| Get a reference to extra-data-factory object. More...
Public Member Functions inherited from restinio::impl::connection_settings_details::state_listener_holder_t< Traits::connection_state_listener_t >
| state_listener_holder_t (const Settings &settings)
void | call_state_listener (Lambda &&lambda) const
void | call_state_listener_suppressing_exceptions (Lambda &&lambda) const noexcept

## Public Attributes
std::unique_ptr< request_handler_t > | m_request_handler
| Request handler factory. More...
const http_parser_settings | m_parser_settings
| Parser settings. More...
std::size_t | m_buffer_size
| Params from server_settings_t. More...
const incoming_http_msg_limits_t | m_incoming_http_msg_limits
std::chrono::steady_clock::duration | m_read_next_http_message_timelimit { std::chrono::seconds( 60 ) }
std::chrono::steady_clock::duration | m_write_http_response_timelimit { std::chrono::seconds( 5 ) }
std::chrono::steady_clock::duration | m_handle_request_timeout { std::chrono::seconds( 10 ) }
std::size_t | m_max_pipelined_requests
const std::unique_ptr< logger_t > | m_logger
Public Attributes inherited from restinio::impl::connection_settings_details::state_listener_holder_t< Traits::connection_state_listener_t >
std::shared_ptr< Traits::connection_state_listener_t > | m_connection_state_listener

## Private Attributes
timer_manager_handle_t | m_timer_manager
| Timer factory for timout guards. More...
extra_data_factory_handle_t | m_extra_data_factory
| A factory for instances of extra-data incorporated into a request. More...

## Detailed Description

template<typename Traits>
struct restinio::impl::connection_settings_t< Traits >

Parameters shared between connections.

Each connection has access to common params and server-agent throught this object.

Definition at line 110 of file connection_settings.hpp.

## Member Typedef Documentation

## ◆ connection_state_listener_holder_t

template<typename Traits >

using restinio::impl::connection_settings_t< Traits >::connection_state_listener_holder_t = connection_settings_details::state_listener_holder_t< typename Traits::connection_state_listener_t >

Definition at line 122 of file connection_settings.hpp.

## ◆ extra_data_factory_handle_t

template<typename Traits >

using restinio::impl::connection_settings_t< Traits >::extra_data_factory_handle_t = std::shared_ptr< typename Traits::extra_data_factory_t >

An alias for shared-pointer to extra-data-factory.

Since
  v.0.6.13

Definition at line 131 of file connection_settings.hpp.

## ◆ logger_t

template<typename Traits >

using restinio::impl::connection_settings_t< Traits >::logger_t = typename Traits::logger_t

Definition at line 120 of file connection_settings.hpp.

## ◆ request_handler_t

template<typename Traits >

using restinio::impl::connection_settings_t< Traits >::request_handler_t = request_handler_type_from_traits_t< Traits >

Definition at line 118 of file connection_settings.hpp.

## ◆ timer_manager_handle_t

template<typename Traits >

using restinio::impl::connection_settings_t< Traits >::timer_manager_handle_t = std::shared_ptr< timer_manager_t >

Definition at line 116 of file connection_settings.hpp.

## ◆ timer_manager_t

template<typename Traits >

using restinio::impl::connection_settings_t< Traits >::timer_manager_t = typename Traits::timer_manager_t

Definition at line 115 of file connection_settings.hpp.

## Constructor & Destructor Documentation

## ◆ connection_settings_t() [1/3]

template<typename Traits >

restinio::impl::connection_settings_t< Traits >::connection_settings_t | ( | const connection_settings_t< Traits > & |  | ) |
| delete

## ◆ connection_settings_t() [2/3]

template<typename Traits >

restinio::impl::connection_settings_t< Traits >::connection_settings_t | ( | const connection_settings_t< Traits > && |  | ) |
| delete

## ◆ connection_settings_t() [3/3]

template<typename Traits >
template<typename Settings >

restinio::impl::connection_settings_t< Traits >::connection_settings_t | ( | Settings && | settings,
|  | http_parser_settings | parser_settings,
|  | timer_manager_handle_t | timer_manager
| ) |  |
| inline

Definition at line 140 of file connection_settings.hpp.

## Member Function Documentation

## ◆ create_timer_guard()

template<typename Traits >

auto restinio::impl::connection_settings_t< Traits >::create_timer_guard | ( |  | ) |
| inline

Create new timer guard.

Definition at line 201 of file connection_settings.hpp.

## ◆ extra_data_factory()

template<typename Traits >

RESTINIO_NODISCARD auto & restinio::impl::connection_settings_t< Traits >::extra_data_factory | ( |  | ) | const
| inline noexcept

Get a reference to extra-data-factory object.

Since
  v.0.6.13

Definition at line 213 of file connection_settings.hpp.

## ◆ operator=() [1/2]

template<typename Traits >

connection_settings_t & restinio::impl::connection_settings_t< Traits >::operator= | ( | connection_settings_t< Traits > && |  | ) |
| delete

## ◆ operator=() [2/2]

template<typename Traits >

connection_settings_t & restinio::impl::connection_settings_t< Traits >::operator= | ( | const connection_settings_t< Traits > & |  | ) |
| delete

## Member Data Documentation

## ◆ m_buffer_size

template<typename Traits >

std::size_t restinio::impl::connection_settings_t< Traits >::m_buffer_size

Params from server_settings_t.

Definition at line 178 of file connection_settings.hpp.

## ◆ m_extra_data_factory

template<typename Traits >

extra_data_factory_handle_t restinio::impl::connection_settings_t< Traits >::m_extra_data_factory
| private

A factory for instances of extra-data incorporated into a request.

Attention
  This value is expected to be not-null.

Since
  v.0.6.13

Definition at line 230 of file connection_settings.hpp.

## ◆ m_handle_request_timeout

template<typename Traits >

std::chrono::steady_clock::duration restinio::impl::connection_settings_t< Traits >::m_handle_request_timeout { std::chrono::seconds( 10 ) }

Definition at line 192 of file connection_settings.hpp.

## ◆ m_incoming_http_msg_limits

template<typename Traits >

const incoming_http_msg_limits_t restinio::impl::connection_settings_t< Traits >::m_incoming_http_msg_limits

Since
  v.0.6.12

Definition at line 183 of file connection_settings.hpp.

## ◆ m_logger

template<typename Traits >

const std::unique_ptr< logger_t > restinio::impl::connection_settings_t< Traits >::m_logger

Definition at line 196 of file connection_settings.hpp.

## ◆ m_max_pipelined_requests

template<typename Traits >

std::size_t restinio::impl::connection_settings_t< Traits >::m_max_pipelined_requests

Definition at line 194 of file connection_settings.hpp.

## ◆ m_parser_settings

template<typename Traits >

const http_parser_settings restinio::impl::connection_settings_t< Traits >::m_parser_settings

Parser settings.

Parsing settings are common for each connection.

Definition at line 174 of file connection_settings.hpp.

## ◆ m_read_next_http_message_timelimit

template<typename Traits >

std::chrono::steady_clock::duration restinio::impl::connection_settings_t< Traits >::m_read_next_http_message_timelimit { std::chrono::seconds( 60 ) }

Definition at line 186 of file connection_settings.hpp.

## ◆ m_request_handler

template<typename Traits >

std::unique_ptr< request_handler_t > restinio::impl::connection_settings_t< Traits >::m_request_handler

Request handler factory.

Definition at line 168 of file connection_settings.hpp.

## ◆ m_timer_manager

template<typename Traits >

timer_manager_handle_t restinio::impl::connection_settings_t< Traits >::m_timer_manager
| private

Timer factory for timout guards.

Definition at line 220 of file connection_settings.hpp.

## ◆ m_write_http_response_timelimit

template<typename Traits >

std::chrono::steady_clock::duration restinio::impl::connection_settings_t< Traits >::m_write_http_response_timelimit { std::chrono::seconds( 5 ) }

Definition at line 189 of file connection_settings.hpp.

The documentation for this struct was generated from the following file:

- restinio/impl/connection_settings.hpp