net-cpp
2.0.0
C++11 library for networking purposes
|
The StreamingRequest class encapsulates a request for a web resource, streaming data to the receiver as it receives in addition to accumulating all incoming data. More...
#include <streaming_request.h>
Public Types | |
typedef std::function< void(const std::string &)> | DataHandler |
![]() | |
enum | State { State::ready, State::active, State::done } |
The State enum describes the different states a request can be in. More... | |
typedef std::function< void(const core::net::Error &)> | ErrorHandler |
ErrorHandler is invoked in case of errors arising while executing the request. More... | |
typedef std::function< Progress::Next(const Progress &)> | ProgressHandler |
ProgressHandler is invoked for progress updates while executing the request. More... | |
typedef std::function< void(const Response &)> | ResponseHandler |
ResponseHandler is invoked when a request completes. More... | |
typedef std::function< Credentials(const std::string &)> | AuthenicationHandler |
Public Member Functions | |
virtual Response | execute (const ProgressHandler &ph, const DataHandler &dh)=0 |
Synchronously executes the request. More... | |
virtual void | async_execute (const Handler &handler, const DataHandler &dh)=0 |
Asynchronously executes the request, reporting errors, progress and completion to the given handlers. More... | |
![]() | |
Request (const Request &)=delete | |
virtual | ~Request ()=default |
Request & | operator= (const Request &)=delete |
bool | operator== (const Request &) const =delete |
virtual State | state ()=0 |
state queries the current state of the operation. More... | |
virtual void | set_timeout (const std::chrono::milliseconds &timeout)=0 |
Adjusts the timeout of a State::ready request. More... | |
virtual Response | execute (const ProgressHandler &ph)=0 |
Synchronously executes the request. More... | |
virtual void | async_execute (const Handler &handler)=0 |
Asynchronously executes the request, reporting errors, progress and completion to the given handlers. More... | |
virtual std::string | url_escape (const std::string &s)=0 |
Returns the input string in URL-escaped format. More... | |
virtual std::string | url_unescape (const std::string &s)=0 |
Returns the input string in URL-unescaped format. More... | |
The StreamingRequest class encapsulates a request for a web resource, streaming data to the receiver as it receives in addition to accumulating all incoming data.
Definition at line 33 of file streaming_request.h.
typedef std::function<void(const std::string&)> core::net::http::StreamingRequest::DataHandler |
DataHandler is invoked when a new chunk of data arrives from the server.
Definition at line 38 of file streaming_request.h.
|
pure virtual |
Asynchronously executes the request, reporting errors, progress and completion to the given handlers.
handler | The handlers to called for events happening during execution of the request. |
dh | The data handler receiving chunks of data while executing the request. |
|
pure virtual |
Synchronously executes the request.
core::net::http::Error | in case of http-related errors. |
core::net::Error | in case of network-related errors. |