@@ -624,28 +624,28 @@ class Server {
624624 bool set_mount_point (const char *mount_point, const char *dir,
625625 Headers headers = Headers());
626626 bool remove_mount_point (const char *mount_point);
627- void set_file_extension_and_mimetype_mapping (const char *ext,
627+ Server & set_file_extension_and_mimetype_mapping (const char *ext,
628628 const char *mime);
629- void set_file_request_handler (Handler handler);
629+ Server & set_file_request_handler (Handler handler);
630630
631- void set_error_handler (HandlerWithReturn handler);
632- void set_error_handler (Handler handler);
633- void set_pre_routing_handler (HandlerWithReturn handler);
634- void set_post_routing_handler (Handler handler);
631+ Server & set_error_handler (HandlerWithReturn handler);
632+ Server & set_error_handler (Handler handler);
633+ Server & set_pre_routing_handler (HandlerWithReturn handler);
634+ Server & set_post_routing_handler (Handler handler);
635635
636- void set_expect_100_continue_handler (Expect100ContinueHandler handler);
637- void set_logger (Logger logger);
636+ Server & set_expect_100_continue_handler (Expect100ContinueHandler handler);
637+ Server & set_logger (Logger logger);
638638
639- void set_tcp_nodelay (bool on);
640- void set_socket_options (SocketOptions socket_options);
639+ Server & set_tcp_nodelay (bool on);
640+ Server & set_socket_options (SocketOptions socket_options);
641641
642- void set_keep_alive_max_count (size_t count);
643- void set_keep_alive_timeout (time_t sec);
644- void set_read_timeout (time_t sec, time_t usec = 0 );
645- void set_write_timeout (time_t sec, time_t usec = 0 );
646- void set_idle_interval (time_t sec, time_t usec = 0 );
642+ Server & set_keep_alive_max_count (size_t count);
643+ Server & set_keep_alive_timeout (time_t sec);
644+ Server & set_read_timeout (time_t sec, time_t usec = 0 );
645+ Server & set_write_timeout (time_t sec, time_t usec = 0 );
646+ Server & set_idle_interval (time_t sec, time_t usec = 0 );
647647
648- void set_payload_max_length (size_t length);
648+ Server & set_payload_max_length (size_t length);
649649
650650 bool bind_to_port (const char *host, int port, int socket_flags = 0 );
651651 int bind_to_any_port (const char *host, int socket_flags = 0 );
@@ -4158,72 +4158,104 @@ inline bool Server::remove_mount_point(const char *mount_point) {
41584158 return false ;
41594159}
41604160
4161- inline void Server::set_file_extension_and_mimetype_mapping (const char *ext,
4161+ inline Server & Server::set_file_extension_and_mimetype_mapping (const char *ext,
41624162 const char *mime) {
41634163 file_extension_and_mimetype_map_[ext] = mime;
4164+
4165+ return *this ;
41644166}
41654167
4166- inline void Server::set_file_request_handler (Handler handler) {
4168+ inline Server & Server::set_file_request_handler (Handler handler) {
41674169 file_request_handler_ = std::move (handler);
4170+
4171+ return *this ;
41684172}
41694173
4170- inline void Server::set_error_handler (HandlerWithReturn handler) {
4174+ inline Server & Server::set_error_handler (HandlerWithReturn handler) {
41714175 error_handler_ = std::move (handler);
4176+ return *this ;
41724177}
41734178
4174- inline void Server::set_error_handler (Handler handler) {
4179+ inline Server & Server::set_error_handler (Handler handler) {
41754180 error_handler_ = [handler](const Request &req, Response &res) {
41764181 handler (req, res);
41774182 return true ;
41784183 };
4184+ return *this ;
41794185}
41804186
4181- inline void Server::set_pre_routing_handler (HandlerWithReturn handler) {
4187+ inline Server & Server::set_pre_routing_handler (HandlerWithReturn handler) {
41824188 pre_routing_handler_ = std::move (handler);
4189+ return *this ;
41834190}
41844191
4185- inline void Server::set_post_routing_handler (Handler handler) {
4192+ inline Server & Server::set_post_routing_handler (Handler handler) {
41864193 post_routing_handler_ = std::move (handler);
4194+ return *this ;
41874195}
41884196
4189- inline void Server::set_logger (Logger logger) { logger_ = std::move (logger); }
4197+ inline Server &Server::set_logger (Logger logger) {
4198+ logger_ = std::move (logger);
41904199
4191- inline void
4192- Server::set_expect_100_continue_handler (Expect100ContinueHandler handler) {
4200+ return *this ;
4201+ }
4202+
4203+ inline Server
4204+ &Server::set_expect_100_continue_handler (Expect100ContinueHandler handler) {
41934205 expect_100_continue_handler_ = std::move (handler);
4206+
4207+ return *this ;
41944208}
41954209
4196- inline void Server::set_tcp_nodelay (bool on) { tcp_nodelay_ = on; }
4210+ inline Server &Server::set_tcp_nodelay (bool on) {
4211+ tcp_nodelay_ = on;
41974212
4198- inline void Server::set_socket_options (SocketOptions socket_options) {
4213+ return *this ;
4214+ }
4215+
4216+ inline Server &Server::set_socket_options (SocketOptions socket_options) {
41994217 socket_options_ = std::move (socket_options);
4218+
4219+ return *this ;
42004220}
42014221
4202- inline void Server::set_keep_alive_max_count (size_t count) {
4222+ inline Server & Server::set_keep_alive_max_count (size_t count) {
42034223 keep_alive_max_count_ = count;
4224+
4225+ return *this ;
42044226}
42054227
4206- inline void Server::set_keep_alive_timeout (time_t sec) {
4228+ inline Server & Server::set_keep_alive_timeout (time_t sec) {
42074229 keep_alive_timeout_sec_ = sec;
4230+
4231+ return *this ;
42084232}
42094233
4210- inline void Server::set_read_timeout (time_t sec, time_t usec) {
4234+ inline Server & Server::set_read_timeout (time_t sec, time_t usec) {
42114235 read_timeout_sec_ = sec;
42124236 read_timeout_usec_ = usec;
4237+
4238+ return *this ;
42134239}
42144240
4215- inline void Server::set_write_timeout (time_t sec, time_t usec) {
4241+ inline Server & Server::set_write_timeout (time_t sec, time_t usec) {
42164242 write_timeout_sec_ = sec;
42174243 write_timeout_usec_ = usec;
4244+
4245+ return *this ;
42184246}
42194247
4220- inline void Server::set_idle_interval (time_t sec, time_t usec) {
4248+ inline Server & Server::set_idle_interval (time_t sec, time_t usec) {
42214249 idle_interval_sec_ = sec;
42224250 idle_interval_usec_ = usec;
4251+
4252+ return *this ;
42234253}
42244254
4225- inline void Server::set_payload_max_length (size_t length) {
4255+ inline Server & Server::set_payload_max_length (size_t length) {
42264256 payload_max_length_ = length;
4257+
4258+ return *this ;
42274259}
42284260
42294261inline bool Server::bind_to_port (const char *host, int port, int socket_flags) {
0 commit comments