ImagingTools Core SDK
CGqlRemoteRepresentationControllerCompBase.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// Qt includes
5#include <QtCore/QJsonObject>
6
7// ACF includes
8#include <ilog/CMessageContainer.h>
9
10// ImtCore includes
11#include <imtservergql/CGqlRequestHandlerCompBase.h>
12#include <imtclientgql/CApiClientComp.h>
13#include <imtgql/IGqlResponse.h>
14
15
16namespace imtclientgql
17{
18
19
20class CGqlRemoteRepresentationControllerCompBase: public imtservergql::CGqlRequestHandlerCompBase
21{
22public:
23 typedef imtservergql::CGqlRequestHandlerCompBase BaseClass;
24
25 I_BEGIN_COMPONENT(CGqlRemoteRepresentationControllerCompBase)
26 I_ASSIGN(m_apiClientCompPtr, "ApiClient", "Api Client", true, "ApiClient");
27 I_END_COMPONENT;
28
29protected:
30 // reimplemented (imtservergql::CGqlRepresentationDataControllerComp)
31 virtual QJsonObject CreateInternalResponse(
32 const imtgql::CGqlRequest& gqlRequest,
33 QString& errorMessage) const override;
34
35protected:
36 QJsonObject CreateJsonObjectFromResponse(const QByteArray& commandId, const imtgql::IGqlResponse& response) const;
37
38protected:
39 I_REF(imtclientgql::IGqlClient, m_apiClientCompPtr);
40};
41
42
43} // namespace imtclientgql
44
45