pion
5.0.6
|
#include <request_writer.hpp>
Inherits pion::http::writer, and enable_shared_from_this< request_writer >.
Public Member Functions | |
virtual | ~request_writer () |
default destructor | |
http::request & | get_request (void) |
returns a non-const reference to the request that will be sent | |
![]() | |
virtual | ~writer () |
default destructor | |
void | clear (void) |
clears out all of the memory buffers used to cache payload content data | |
template<typename T > | |
void | write (const T &data) |
void | write (std::ostream &(*iomanip)(std::ostream &)) |
void | write (const void *data, size_t length) |
void | write_no_copy (const std::string &data) |
void | write_no_copy (void *data, size_t length) |
void | send (void) |
template<typename SendHandler > | |
void | send (SendHandler send_handler) |
template<typename SendHandler > | |
void | send_chunk (SendHandler send_handler) |
template<typename SendHandler > | |
void | send_final_chunk (SendHandler send_handler) |
void | send_final_chunk (void) |
tcp::connection_ptr & | get_connection (void) |
returns a shared pointer to the TCP connection | |
size_t | get_content_length (void) const |
returns the length of the payload content (in bytes) | |
void | supports_chunked_messages (bool b) |
sets whether or not the client supports chunked messages | |
bool | supports_chunked_messages () const |
returns true if the client supports chunked messages | |
bool | sending_chunked_message () const |
returns true if we are sending a chunked message to the client | |
void | set_logger (logger log_ptr) |
sets the logger to be used | |
logger | get_logger (void) |
returns the logger currently in use | |
Static Public Member Functions | |
static boost::shared_ptr< request_writer > | create (tcp::connection_ptr &tcp_conn, finished_handler_t handler=finished_handler_t()) |
static boost::shared_ptr< request_writer > | create (tcp::connection_ptr &tcp_conn, http::request_ptr &http_request_ptr, finished_handler_t handler=finished_handler_t()) |
Protected Member Functions | |
request_writer (tcp::connection_ptr &tcp_conn, finished_handler_t handler) | |
request_writer (tcp::connection_ptr &tcp_conn, http::request_ptr &http_request_ptr, finished_handler_t handler) | |
virtual void | prepare_buffers_for_send (http::message::write_buffers_t &write_buffers) |
virtual write_handler_t | bind_to_write_handler (void) |
returns a function bound to http::writer::handle_write() | |
virtual void | handle_write (const boost::system::error_code &write_error, std::size_t bytes_written) |
![]() | |
writer (tcp::connection_ptr &tcp_conn, finished_handler_t handler) | |
void | finished_writing (const boost::system::error_code &ec) |
called after we have finished sending the HTTP message | |
Additional Inherited Members | |
![]() | |
typedef boost::function1< void, const boost::system::error_code & > | finished_handler_t |
function called after the HTTP message has been sent | |
typedef boost::function2< void, const boost::system::error_code &, std::size_t > | write_handler_t |
data type for a function that handles write operations | |
request_writer: used to asynchronously send HTTP requests
Definition at line 30 of file request_writer.hpp.
|
inlineprotected |
protected constructor restricts creation of objects (use create())
tcp_conn | TCP connection used to send the request |
handler | function called after the request has been sent |
Definition at line 83 of file request_writer.hpp.
References pion::http::writer::set_logger().
Referenced by create().
|
inlineprotected |
protected constructor restricts creation of objects (use create())
tcp_conn | TCP connection used to send the request |
http_request_ptr | pointer to the request that will be sent |
handler | function called after the request has been sent |
Definition at line 96 of file request_writer.hpp.
References pion::http::writer::set_logger(), and pion::http::writer::write_no_copy().
|
inlinestatic |
creates new request_writer objects
tcp_conn | TCP connection used to send the request |
handler | function called after the request has been sent |
Definition at line 48 of file request_writer.hpp.
References request_writer().
|
inlinestatic |
creates new request_writer objects
tcp_conn | TCP connection used to send the request |
http_request_ptr | pointer to the request that will be sent |
handler | function called after the request has been sent |
Definition at line 64 of file request_writer.hpp.
References request_writer().
|
inlineprotectedvirtual |
called after the request is sent
write_error | error status from the last write operation |
bytes_written | number of bytes sent by the last write operation |
Implements pion::http::writer.
Definition at line 139 of file request_writer.hpp.
References pion::http::writer::clear(), pion::http::writer::finished_writing(), pion::http::writer::get_logger(), and pion::http::writer::sending_chunked_message().
Referenced by bind_to_write_handler().
|
inlineprotectedvirtual |
initializes a vector of write buffers with the HTTP message information
write_buffers | vector of write buffers to initialize |
Implements pion::http::writer.
Definition at line 118 of file request_writer.hpp.
References pion::http::writer::get_connection(), pion::http::writer::get_content_length(), and pion::http::writer::sending_chunked_message().