ImagingTools Core SDK
CGqlModel.h
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ImtCore-Commercial
2#pragma once
3
4
5// Qt includes
6#include <QtNetwork/QNetworkReply>
7
8// ImtCore includes
9#include <imtbase/CTreeItemModel.h>
10
11
12namespace imtqml
13{
14
15
16class CGqlModel: public imtbase::CTreeItemModel
17{
18 Q_OBJECT
19
20public:
21 typedef imtbase::CTreeItemModel BaseClass;
22
23 Q_INVOKABLE inline bool setGqlQuery(QString query, QVariantMap headers = QVariantMap()){ return SetGqlQuery(query, headers); }
24
25 explicit CGqlModel(QObject* parent = nullptr);
26 ~CGqlModel();
27
28public Q_SLOTS:
29 bool SetGqlQuery(QString query, QVariantMap headers = QVariantMap());
30 void replyFinished();
31 void errorOccurred(QNetworkReply::NetworkError code);
32
33 static void SetGlobalAccessToken(const QString& accessToken);
34 static void SetRefreshToken(const QString& refreshToken);
35 static void SetProductId(const QString& productId);
36
37public:
38 static QString s_accessToken;
39 static QString s_refreshToken;
40 static QString s_productId;
41};
42
43
44} // namespace imtqml
45
46
47Q_DECLARE_METATYPE(imtqml::CGqlModel*)
48
49