ImagingTools Core SDK
CGqlRepresentationDataControllerCompBase.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// ImtCore includes
6#include <imtgql/IGqlRepresentationController.h>
7#include <imtservergql/CGqlRequestHandlerCompBase.h>
8
9
10namespace imtservergql
11{
12
13
14class CGqlRepresentationControllerCompBase: virtual public imtgql::IGqlRepresentationController, public CGqlRequestHandlerCompBase
15{
16public:
17 typedef CGqlRequestHandlerCompBase BaseClass;
18
19 I_BEGIN_COMPONENT(CGqlRepresentationControllerCompBase);
20 I_REGISTER_INTERFACE(IGqlRepresentationController);
21 I_END_COMPONENT;
22
23protected:
24 virtual QJsonObject CreateRepresentationFromRequest(const imtgql::CGqlRequest& gqlRequest, QString& errorMessage) const override;
25 virtual bool UpdateModelFromRepresentation(const imtgql::CGqlRequest& request, const QJsonObject& representation) const override;
26
27 // reimplemented (imtservergql::CGqlRequestHandlerCompBase)
28 virtual QJsonObject CreateInternalResponse(const imtgql::CGqlRequest& gqlRequest, QString& errorMessage) const override;
29};
30
31
32} // namespace imtservergql
33
34