ImagingTools Core SDK
CAccountControllerComp.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 <QtCore/QJsonObject>
7
8// ImtCore includes
9#include <imtservergql/CObjectCollectionControllerCompBase.h>
10#include <imtauth/ICompanyInfo.h>
11
12
13namespace imtlicgql
14{
15
16
17class CAccountControllerComp: public imtservergql::CObjectCollectionControllerCompBase
18{
19public:
20 typedef imtservergql::CObjectCollectionControllerCompBase BaseClass;
21
22 I_BEGIN_COMPONENT(CAccountControllerComp);
23 I_ASSIGN(m_accountInfoFactCompPtr, "AccountFactory", "Factory used for creation of the new account instance", true, "AccountFactory");
24 I_END_COMPONENT;
25
26protected:
27 // reimplemented (imtservergql::CObjectCollectionControllerCompBase)
28 virtual QJsonObject GetObject(const imtgql::CGqlRequest& gqlRequest, QString& errorMessage) const override;
29 virtual istd::IChangeableUniquePtr CreateObjectFromInputParams(const QList<imtgql::CGqlParamObject>& inputParams, QByteArray &objectId, QString& errorMessage) const override;
30
31private:
32 I_FACT(imtauth::ICompanyInfo, m_accountInfoFactCompPtr);
33};
34
35
36} // namespace imtlicgql
37
38
GraphQL API interface layer for the licensing domain model.