ImagingTools Core SDK
CTicketCollectionControllerComp.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// ImtCore includes
5#include <imtdesk/ISupportTicket.h>
6#include <GeneratedFiles/imtdesksdl/SDL/1.0/CPP/ImtDesk.h>
7
8
9namespace imtdeskgql
10{
11
12
13class CTicketCollectionControllerComp:
14 public sdl::imtdesk::ImtDesk::CTicketCollectionControllerCompBase
15{
16public:
17 typedef sdl::imtdesk::ImtDesk::CTicketCollectionControllerCompBase BaseClass;
18
19 I_BEGIN_COMPONENT(CTicketCollectionControllerComp);
20 I_ASSIGN(m_ticketFactCompPtr, "TicketFactory", "Factory for creating ticket instances", true, "TicketFactory");
21 I_END_COMPONENT;
22
23protected:
24 // reimplemented (sdl::imtdesk::ImtDesk::CTicketCollectionControllerCompBase)
25 virtual bool CreateRepresentationFromObject(
26 const imtbase::IObjectCollectionIterator& objectCollectionIterator,
27 const sdl::imtdesk::ImtDesk::CTicketsListGqlRequest& listRequest,
28 sdl::imtdesk::ImtDesk::CTicketItemData::V1_0& representationObject,
29 QString& errorMessage) const override;
30 virtual istd::IChangeableUniquePtr CreateObjectFromRepresentation(
31 const sdl::imtdesk::ImtDesk::CTicketData::V1_0& dataRepresentation,
32 QByteArray& newObjectId,
33 QString& errorMessage) const override;
34 virtual bool CreateRepresentationFromObject(
35 const istd::IChangeable& data,
36 const sdl::imtdesk::ImtDesk::CTicketItemGqlRequest& itemRequest,
37 sdl::imtdesk::ImtDesk::CTicketData::V1_0& representationPayload,
38 QString& errorMessage) const override;
39 virtual bool UpdateObjectFromRepresentationRequest(
40 const imtgql::CGqlRequest& rawGqlRequest,
41 const sdl::imtdesk::ImtDesk::CTicketUpdateGqlRequest& updateRequest,
42 istd::IChangeable& object,
43 QString& errorMessage) const override;
44
45private:
46 bool FillObjectFromRepresentation(
47 const sdl::imtdesk::ImtDesk::CTicketData::V1_0& representation,
48 istd::IChangeable& object,
49 QByteArray& objectId,
50 QString& errorMessage) const;
51
52protected:
53 I_FACT(imtdesk::ISupportTicket, m_ticketFactCompPtr);
54};
55
56
57} // namespace imtdeskgql
Service Desk GraphQL API Layer Module.