3030
3131namespace boost {namespace network {namespace http {
3232
33- using boost::asio::io_service;
34- namespace system = boost::system;
35- using boost::asio::ip::tcp;
36- using boost::array;
37- using boost::tribool;
38- using boost::tuple;
39- namespace tuples = boost::tuples;
40- using boost::tuples::tie;
41- using boost::bind;
42- using boost::to_lower_copy;
43-
4433template <class Tag ,class Handler >
4534struct connection : boost::enable_shared_from_this<connection<Tag,Handler> > {
4635
47- connection (io_service & service, Handler & handler)
36+ connection (boost::asio:: io_service & service, Handler & handler)
4837 : service_(service)
4938 , handler_(handler)
5039 , socket_(service_)
5140 , wrapper_(service_)
5241 {
5342 }
5443
55- tcp::socket &socket () {
44+ boost::asio::ip:: tcp::socket &socket () {
5645return socket_;
5746 }
5847
@@ -62,13 +51,14 @@ namespace boost { namespace network { namespace http {
6251// and then pass that request object to the
6352// handler_ instance.
6453//
54+ using boost::asio::ip::tcp;
6555 boost::system::error_code option_error;
6656 socket_.set_option (tcp::no_delay (true ), option_error);
67- if (option_error) handler_.log (system::system_error (option_error).what ());
57+ if (option_error) handler_.log (boost:: system::system_error (option_error).what ());
6858 socket_.async_read_some (
6959boost::asio::buffer (buffer_),
7060 wrapper_.wrap (
71- bind (
61+ boost:: bind (
7262 &connection<Tag,Handler>::handle_read_headers,
7363 connection<Tag,Handler>::shared_from_this (),
7464 boost::asio::placeholders::error,
@@ -83,14 +73,14 @@ namespace boost { namespace network { namespace http {
8373struct is_content_length {
8474template <class Header >
8575bool operator ()(Headerconst & header) {
86- return to_lower_copy (header.name ) ==" content-length" ;
76+ return boost:: to_lower_copy (header.name ) ==" content-length" ;
8777 }
8878 };
8979
90- void handle_read_headers (system::error_codeconst &ec,size_t bytes_transferred) {
80+ void handle_read_headers (boost:: system::error_codeconst &ec,size_t bytes_transferred) {
9181if (!ec) {
92- tribool done;
93- array<char , BOOST_HTTP_SERVER_BUFFER_SIZE>::iterator new_start;
82+ boost:: tribool done;
83+ boost:: array<char , BOOST_HTTP_SERVER_BUFFER_SIZE>::iterator new_start;
9484tie (done,new_start) = parser_.parse_headers (request_, buffer_.data (), buffer_.data () + bytes_transferred);
9585if (done) {
9686if (request_.method [0 ] ==' P' ) {
@@ -107,7 +97,7 @@ namespace boost { namespace network { namespace http {
10797 socket_,
10898 response_.to_buffers (),
10999 wrapper_.wrap (
110- bind (
100+ boost:: bind (
111101 &connection<Tag,Handler>::handle_write,
112102 connection<Tag,Handler>::shared_from_this (),
113103 boost::asio::placeholders::error
@@ -127,7 +117,7 @@ namespace boost { namespace network { namespace http {
127117 socket_,
128118 response_.to_buffers (),
129119 wrapper_.wrap (
130- bind (
120+ boost:: bind (
131121 &connection<Tag,Handler>::handle_write,
132122 connection<Tag,Handler>::shared_from_this (),
133123 boost::asio::placeholders::error
@@ -146,7 +136,7 @@ namespace boost { namespace network { namespace http {
146136 socket_.async_read_some (
147137boost::asio::buffer (buffer_),
148138 wrapper_.wrap (
149- bind (
139+ boost:: bind (
150140 &connection<Tag,Handler>::handle_read_body_contents,
151141 connection<Tag,Handler>::shared_from_this (),
152142 boost::asio::placeholders::error,
@@ -164,7 +154,7 @@ namespace boost { namespace network { namespace http {
164154 socket_,
165155 response_.to_buffers (),
166156 wrapper_.wrap (
167- bind (
157+ boost:: bind (
168158 &connection<Tag,Handler>::handle_write,
169159 connection<Tag,Handler>::shared_from_this (),
170160 boost::asio::placeholders::error
@@ -177,7 +167,7 @@ namespace boost { namespace network { namespace http {
177167 socket_,
178168 response_.to_buffers (),
179169 wrapper_.wrap (
180- bind (
170+ boost:: bind (
181171 &connection<Tag,Handler>::handle_write,
182172 connection<Tag,Handler>::shared_from_this (),
183173 boost::asio::placeholders::error
@@ -191,7 +181,7 @@ namespace boost { namespace network { namespace http {
191181 socket_,
192182 response_.to_buffers (),
193183 wrapper_.wrap (
194- bind (
184+ boost:: bind (
195185 &connection<Tag,Handler>::handle_write,
196186 connection<Tag,Handler>::shared_from_this (),
197187 boost::asio::placeholders::error
@@ -202,7 +192,7 @@ namespace boost { namespace network { namespace http {
202192 socket_.async_read_some (
203193boost::asio::buffer (buffer_),
204194 wrapper_.wrap (
205- bind (
195+ boost:: bind (
206196 &connection<Tag,Handler>::handle_read_headers,
207197 connection<Tag,Handler>::shared_from_this (),
208198 boost::asio::placeholders::error,
@@ -218,7 +208,7 @@ namespace boost { namespace network { namespace http {
218208void handle_read_body_contents (boost::system::error_codeconst & ec,size_t bytes_to_read,size_t bytes_transferred) {
219209if (!ec) {
220210size_t difference = bytes_to_read - bytes_transferred;
221- array<char ,BOOST_HTTP_SERVER_BUFFER_SIZE>::iterator start = buffer_.begin (),
211+ boost:: array<char ,BOOST_HTTP_SERVER_BUFFER_SIZE>::iterator start = buffer_.begin (),
222212 past_end = start;
223213std::advance (past_end, (std::min)(bytes_to_read,bytes_transferred));
224214 request_.body .append (buffer_.begin (), past_end);
@@ -228,7 +218,7 @@ namespace boost { namespace network { namespace http {
228218 socket_,
229219 response_.to_buffers (),
230220 wrapper_.wrap (
231- bind (
221+ boost:: bind (
232222 &connection<Tag,Handler>::handle_write,
233223 connection<Tag,Handler>::shared_from_this (),
234224 boost::asio::placeholders::error
@@ -239,7 +229,7 @@ namespace boost { namespace network { namespace http {
239229 socket_.async_read_some (
240230boost::asio::buffer (buffer_),
241231 wrapper_.wrap (
242- bind (
232+ boost:: bind (
243233 &connection<Tag,Handler>::handle_read_body_contents,
244234 connection<Tag,Handler>::shared_from_this (),
245235 boost::asio::placeholders::error,
@@ -255,17 +245,18 @@ namespace boost { namespace network { namespace http {
255245
256246void handle_write (boost::system::error_codeconst & ec) {
257247if (!ec) {
248+ using boost::asio::ip::tcp;
258249 boost::system::error_code ignored_ec;
259250 socket_.shutdown (tcp::socket::shutdown_both, ignored_ec);
260251 socket_.close (ignored_ec);
261252 }
262253 }
263254
264- io_service & service_;
255+ boost::asio:: io_service & service_;
265256 Handler & handler_;
266- tcp::socket socket_;
267- io_service::strand wrapper_;
268- array<char ,BOOST_HTTP_SERVER_BUFFER_SIZE> buffer_;
257+ boost::asio::ip:: tcp::socket socket_;
258+ boost::asio:: io_service::strand wrapper_;
259+ boost:: array<char ,BOOST_HTTP_SERVER_BUFFER_SIZE> buffer_;
269260 request_parser parser_;
270261 basic_request<Tag> request_;
271262 basic_response<Tag> response_;