diff options
author | 2018-11-07 11:09:54 +0900 | |
---|---|---|
committer | 2018-11-07 11:09:54 +0900 | |
commit | 31e4ddecb2e704ab81303568102f786ea727d0cf (patch) | |
tree | d64b09220e072946f022901bb121cab35ac78716 /app/src/httpclient.h | |
parent | ca756b3f04bb2cb89e0f1f19e197dfa6a809be8d (diff) |
add warehouse source
Diffstat (limited to 'app/src/httpclient.h')
-rw-r--r-- | app/src/httpclient.h | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/app/src/httpclient.h b/app/src/httpclient.h new file mode 100644 index 0000000..42f002c --- /dev/null +++ b/app/src/httpclient.h @@ -0,0 +1,48 @@ + +#ifndef HTTPCLIENT_H +#define HTTPCLIENT_H + +#include <functional> +#include <QtGlobal> + +class QString; +class QByteArray; +class QNetworkRequest; +class QNetworkReply; +class QNetworkAccessManager; +class HttpClientPrivate; + +class HttpClient { + public: + HttpClient(const QString& url); + ~HttpClient(); + + HttpClient& manager(QNetworkAccessManager* manager); + + HttpClient& debug(bool debug); + + HttpClient& param(const QString& name, const QString& value); + + HttpClient& header(const QString& header, const QString& value); + + void get(std::function<void(const QString&)> successHandler, + std::function<void(const QString&)> errorHandler = NULL, + const char* encoding = "UTF-8"); + + void download( + const QString& savePath, + std::function<void(const QString&)> successHandler = NULL, + std::function<void(const QString&)> errorHandler = NULL, + std::function<void(const qint64, const qint64)> progressHandler = NULL); + + void download( + std::function<void(const QByteArray&)> readyRead, + std::function<void(const QString&)> successHandler = NULL, + std::function<void(const QString&)> errorHandler = NULL, + std::function<void(const qint64, const qint64)> progressHandler = NULL); + + private: + HttpClientPrivate* d; +}; + +#endif // !HTTPCLIENT_H |