XX CMake Package
Loading...
Searching...
No Matches
XXRestApiAsync.h
Go to the documentation of this file.
1#ifndef XXRestApiAsyncH
2#define XXRestApiAsyncH
3
5#include "XXRestApiBlocking.h"
6
7namespace XX
8{
9 namespace RestApi
10 {
13
15 {
16 Q_OBJECT
17
18 public:
19 using CallbackFunction = std::function<void(Result result)>;
20
21 public:
22 Async(QObject* parent, const QString& baseUrl);
23
24 public:
25 virtual void getAsync(CallbackFunction callback, const QString& endpoint, const QUrlQuery& params = QUrlQuery());
26 virtual void postAsync(CallbackFunction callback, const QString& endpoint, const QJsonObject& payload = QJsonObject(), const QUrlQuery& params = QUrlQuery());
27 virtual void putAsync(CallbackFunction callback, const QString& endpoint, const QJsonObject& payload = QJsonObject(), const QUrlQuery& params = QUrlQuery());
28
29 private:
30 void handleReplyAsync(CallbackFunction callback, QNetworkRequest request, ReplyGeneratorFunction replyGenerator);
31 };
32 } // namespace RestApi
33} // namespace XX
34
35#endif // NOT XXRestApiAsyncH
#define XXNETWORK_DECLSPEC
Definition XXNetworkExportDef.h:11
virtual void postAsync(CallbackFunction callback, const QString &endpoint, const QJsonObject &payload=QJsonObject(), const QUrlQuery &params=QUrlQuery())
virtual void putAsync(CallbackFunction callback, const QString &endpoint, const QJsonObject &payload=QJsonObject(), const QUrlQuery &params=QUrlQuery())
virtual void getAsync(CallbackFunction callback, const QString &endpoint, const QUrlQuery &params=QUrlQuery())
std::function< void(Result result)> CallbackFunction
Definition XXRestApiAsync.h:19
Async(QObject *parent, const QString &baseUrl)
Blocking(QObject *parent, const QString &baseUrl)
QString baseUrl
Definition XXRestApiBlocking.h:56
std::function< QNetworkReply *(QNetworkRequest request)> ReplyGeneratorFunction
Definition XXRestApiBlocking.h:45
Definition XXRestApiAsync.h:10
Definition XXPopulatedAbstract.h:11
REST API with json content.
Definition XXRestApiResult.h:27