|
SuperTuxKart
|
A http request. More...
#include <http_request.hpp>

Public Member Functions | |
| HTTPRequest (int priority=1) | |
| Creates a HTTP(S) request that will have a raw string as result. More... | |
| HTTPRequest (const std::string &filename, int priority=1) | |
| This constructor configures this request to save the data in a file. More... | |
| HTTPRequest (const char *const filename, int priority=1) | |
| Char * needs a separate constructor, otherwise it will be considered to be the no-filename constructor (char* -> bool). | |
| virtual bool | isAllowedToAdd () const OVERRIDE |
| Checks the request if it has enough (correct) information to be executed (and thus allowed to add to the queue). | |
| void | setApiURL (const std::string &url, const std::string &action) |
| A handy shortcut that appends the given path to the URL of the mutiplayer server. More... | |
| void | setAddonsURL (const std::string &path) |
| A handy shortcut that appends the given path to the URL of the addons server. More... | |
| virtual bool | hadDownloadError () const |
| Returns true if there was an error downloading the file. | |
| void | setDownloadAssetsRequest (bool val) |
| const char * | getDownloadErrorMessage () const |
| Returns the error message if an error has occurred. | |
| const std::string & | getData () const |
| Returns the downloaded string. More... | |
| void | addParameter (const std::string &name, const std::string &value) |
| Sets a parameter to 'value' (std::string). | |
| void | addParameter (const std::string &name, const irr::core::stringw &value) |
| Sets a parameter to 'value' (stringw). | |
| template<typename T > | |
| void | addParameter (const std::string &name, const T &value) |
| Sets a parameter to 'value' (arbitrary types). | |
| float | getProgress () const |
| Returns the current progress. | |
| void | setProgress (float f) |
| Sets the current progress. | |
| const std::string & | getURL () const |
| void | setURL (const std::string &url) |
| Sets the URL for this request. | |
| const std::string & | getFileName () const |
| double | getTotalSize () const |
| void | setTotalSize (double d) |
Public Member Functions inherited from Online::Request | |
| Request (int priority, int type) | |
| Creates a request that can be handled by the RequestManager. More... | |
| void | execute () |
| Executes the request. More... | |
| void | executeNow () |
| Executes the request now, i.e. More... | |
| void | queue () |
| Inserts this request into the RequestManager's queue for executing. | |
| virtual void | callback () |
| Executed when a request has finished. | |
| int | getType () const |
| Returns the type of the request. | |
| int | getPriority () const |
| Returns the priority of this request. | |
| void | cancel () |
| Signals that this request should be canceled. | |
| bool | isCancelled () const |
| Returns if this request is to be canceled. | |
| bool | isAbortable () const |
| Returns if this request can be aborted. | |
| void | setAbortable (bool b) |
| Sets if this request is abortable or not. | |
| void | setBusy () |
| Sets the request state to busy. | |
| void | setExecuted () |
| Sets the request to be completed. | |
| void | setDone () |
| Should only be called by the manager. | |
| bool | isDone () const |
| Returns if this request is done. | |
| bool | isPreparing () const |
| Returns if this request is being prepared. | |
| bool | isBusy () const |
| Returns if this request is busy. | |
| bool | hasBeenExecuted () const |
| Checks if the request has completed or done (i.e. More... | |
Protected Member Functions | |
| virtual void | operation () OVERRIDE |
| The actual operation to be executed. More... | |
| void | init () |
| Initialises all member variables. | |
Protected Member Functions inherited from Online::Request | |
| virtual void | prepareOperation () |
| Virtual function to be called before an operation. | |
| virtual void | afterOperation () |
| Virtual function to be called after an operation. | |
Protected Attributes | |
| std::string | m_filename |
| Contains a filename if the data should be saved into a file instead of being kept in memory. More... | |
| bool | m_disable_sending_log |
| bool | m_download_assets_request |
Protected Attributes inherited from Online::Request | |
| Synchronised< bool > | m_cancel |
| Cancel this request if it is active. | |
| Synchronised< bool > | m_is_abortable |
| If this request can be aborted (at the end of STK). More... | |
| Synchronised< State > | m_state |
| Set to though if the reply of the request is in and callbacks are executed. | |
Private Member Functions | |
| std::string | urlEncode (const std::string &value) |
| void | logMessage () |
Private Attributes | |
| std::atomic< float > | m_progress |
| The progress indicator. More... | |
| std::atomic< double > | m_total_size |
| std::string | m_url |
| The url to download. | |
| std::string | m_parameters |
| The POST parameters that will be sent with the request. | |
| int64_t | m_result_code |
| Result code from request implementation, 0 if succeeded. | |
| std::string | m_string_buffer |
| String to store the received data in. | |
Additional Inherited Members | |
Public Types inherited from Online::Request | |
| enum | RequestType { RT_QUIT = 1 } |
A http request.
| Online::HTTPRequest::HTTPRequest | ( | int | priority = 1 | ) |
Creates a HTTP(S) request that will have a raw string as result.
(Can of course be used if the result doesn't matter.)
| priority | by what priority should the RequestManager take care of this request. |
| Online::HTTPRequest::HTTPRequest | ( | const std::string & | filename, |
| int | priority = 1 |
||
| ) |
This constructor configures this request to save the data in a file.
| filename | Name of the file to save the data to. |
| priority | by what priority should the RequestManager take care of this request. |
|
inline |
Returns the downloaded string.
|
protectedvirtual |
The actual operation to be executed.
Empty as default, which allows to create a 'quit' request without any additional code.
Reimplemented from Online::Request.
| void Online::HTTPRequest::setAddonsURL | ( | const std::string & | path | ) |
A handy shortcut that appends the given path to the URL of the addons server.
| path | The path to add to the server, without the trailing slash |
| void Online::HTTPRequest::setApiURL | ( | const std::string & | path, |
| const std::string & | action | ||
| ) |
A handy shortcut that appends the given path to the URL of the mutiplayer server.
It also supports the old (version 1) api, where a 'action' parameter was sent to 'client-user.php'.
| path | The path to add to the server.(see API::USER_*) |
| action | The action to perform. eg: connect, pool |
|
protected |
Contains a filename if the data should be saved into a file instead of being kept in memory.
Otherwise this is "".
|
private |
The progress indicator.
0 until it is started and the first packet is downloaded. Guaranteed to be <1 while the download is in progress, it will be set to either -1 (error) or 1 (everything ok) at the end.