PionNetworkLibrary
|
#include <response_writer.hpp>
Public Member Functions | |
virtual | ~response_writer () |
default destructor More... | |
http::response & | get_response (void) |
returns a non-const reference to the response that will be sent More... | |
Public Member Functions inherited from pion::http::writer | |
virtual | ~writer () |
default destructor More... | |
void | clear (void) |
clears out all of the memory buffers used to cache payload content data More... | |
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 More... | |
size_t | get_content_length (void) const |
returns the length of the payload content (in bytes) More... | |
void | supports_chunked_messages (bool b) |
sets whether or not the client supports chunked messages More... | |
bool | supports_chunked_messages () const |
returns true if the client supports chunked messages More... | |
bool | sending_chunked_message () const |
returns true if we are sending a chunked message to the client More... | |
void | set_logger (logger log_ptr) |
sets the logger to be used More... | |
logger | get_logger (void) |
returns the logger currently in use More... | |
Static Public Member Functions | |
static boost::shared_ptr < response_writer > | create (const tcp::connection_ptr &tcp_conn, const http::response_ptr &http_response_ptr, finished_handler_t handler=finished_handler_t()) |
static boost::shared_ptr < response_writer > | create (const tcp::connection_ptr &tcp_conn, const http::request &http_request, finished_handler_t handler=finished_handler_t()) |
Protected Member Functions | |
response_writer (const tcp::connection_ptr &tcp_conn, const http::response_ptr &http_response_ptr, finished_handler_t handler) | |
response_writer (const tcp::connection_ptr &tcp_conn, const http::request &http_request, 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() More... | |
virtual void | handle_write (const boost::system::error_code &write_error, std::size_t bytes_written) |
Protected Member Functions inherited from pion::http::writer | |
writer (const 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 More... | |
Additional Inherited Members | |
Protected Types inherited from pion::http::writer | |
typedef boost::function1< void, const boost::system::error_code & > | finished_handler_t |
function called after the HTTP message has been sent More... | |
typedef boost::function2< void, const boost::system::error_code &, std::size_t > | write_handler_t |
data type for a function that handles write operations More... | |
response_writer: used to asynchronously send HTTP responses
|
inlinevirtual |
default destructor
|
inlineprotected |
protected constructor restricts creation of objects (use create())
tcp_conn | TCP connection used to send the response |
http_response | pointer to the response that will be sent |
handler | function called after the request has been sent |
References PION_GET_LOGGER.
|
inlineprotected |
protected constructor restricts creation of objects (use create())
tcp_conn | TCP connection used to send the response |
http_request | the request we are responding to |
handler | function called after the request has been sent |
References PION_GET_LOGGER.
|
inlineprotectedvirtual |
returns a function bound to http::writer::handle_write()
Implements pion::http::writer.
References handle_write().
|
inlinestatic |
creates new response_writer objects
tcp_conn | TCP connection used to send the response |
http_response | pointer to the response that will be sent |
handler | function called after the response has been sent |
Referenced by pion::http::server::handle_bad_request(), pion::http::server::handle_forbidden_request(), pion::http::server::handle_method_not_allowed(), pion::http::server::handle_not_found_request(), pion::http::cookie_auth::handle_ok(), pion::http::cookie_auth::handle_redirection(), pion::http::server::handle_server_error(), pion::http::basic_auth::handle_unauthorized(), and pion::http::cookie_auth::handle_unauthorized().
|
inlinestatic |
creates new response_writer objects
tcp_conn | TCP connection used to send the response |
http_request | the request we are responding to |
handler | function called after the request has been sent |
|
inline |
returns a non-const reference to the response that will be sent
|
inlineprotectedvirtual |
called after the response 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.
References PION_LOG_DEBUG.
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.