1313#include < boost/capy/cond.hpp>
1414#include < boost/capy/ex/strand.hpp>
1515#include < boost/capy/io/any_read_source.hpp>
16- #include < boost/capy/io/any_write_sink.hpp>
16+ #include < boost/capy/io/any_buffer_sink.hpp>
17+ #include < boost/capy/io/owning.hpp>
1718#include < boost/beast2/corosio_router.hpp>
1819#include < boost/http/request_parser.hpp>
1920#include < boost/http/response.hpp>
@@ -49,9 +50,8 @@ struct http_server::
4950 capy::strand<corosio::io_context::executor_type> strand;
5051 corosio::socket sock;
5152 corosio_route_params rp;
52- http::serializer::sink<corosio::socket> ss;
5353 http::parser::source<corosio::socket> ps;
54- http::parser::buffer_source_adapter <corosio::socket> bs ;
54+ http::serializer::sink <corosio::socket> ss ;
5555
5656 worker (
5757 corosio::io_context& ctx_,
@@ -61,18 +61,17 @@ struct http_server::
6161 , strand(ctx_.get_executor())
6262 , sock(ctx_)
6363 , rp(sock)
64+ , ps(rp.parser.source_for(sock))
65+ , ss(rp.serializer.sink_for(sock))
6466 {
6567 sock.open ();
6668
6769 rp.parser = http::request_parser (srv->impl_ ->parser_cfg );
68- ps = rp.parser .source_for (sock);
69- bs = rp.parser .buffer_source_for (sock);
70- rp.req_body = capy::any_read_source (ps);
71- rp.req_bufs = capy::any_buffer_source (bs);
7270 rp.serializer = http::serializer (srv->impl_ ->serializer_cfg );
7371 rp.serializer .set_message (rp.res );
74- ss = rp.serializer .sink_for ( sock );
75- rp.res_body = capy::any_write_sink (ss);
72+
73+ rp.req_body = capy::any_buffer_source (ps);
74+ rp.res_body = capy::any_buffer_sink (ss);
7675 }
7776
7877 corosio::socket& socket () override
0 commit comments