6#include <iprm/CParamsSet.h>
9#include <imtbase/IHierarchicalStructure.h>
10#include <imtbase/IDocumentChangeGenerator.h>
11#include <imtservergql/CGqlRequestHandlerCompBase.h>
12#include <imtbase/IOperationContextController.h>
13#include <imtgql/IGqlRequestExtractor.h>
23class CStructureControllerCompBase:
public imtservergql::CGqlRequestHandlerCompBase
26 typedef imtservergql::CGqlRequestHandlerCompBase BaseClass;
28 I_BEGIN_COMPONENT(CStructureControllerCompBase);
29 I_ASSIGN(m_collectionStructureCompPtr,
"CollectionStructure",
"Collection structure",
true,
"CollectionStructure");
30 I_ASSIGN(m_objectCollectionCompPtr,
"ObjectCollection",
"Object collection",
true,
"ObjectCollection");
31 I_ASSIGN(m_gqlRequestExtractorCompPtr,
"GqlRequestExtractor",
"GraphQL request extractor",
true,
"GqlRequestExtractor");
32 I_ASSIGN(m_operationContextControllerCompPtr,
"OperationContextController",
"Operation context controller",
false,
"OperationContextController");
33 I_ASSIGN(m_structureIdAttrPtr,
"StructureId",
"Structure-ID",
true,
"");
41 OT_SET_NODE_DESCRIPTION,
51 OT_GET_OBJECT_PARENT_NODE_IDS,
54 OT_USER_OPERATION = 1000
58 virtual bool IsRequestSupported(
const imtgql::CGqlRequest& gqlRequest)
const override;
61 virtual QJsonObject CreateInternalResponse(
const imtgql::CGqlRequest& gqlRequest, QString& errorMessage)
const override;
64 virtual bool GetOperationFromRequest(
const imtgql::CGqlRequest& gqlRequest, imtgql::CGqlParamObject& gqlObject, QString& errorMessage,
int& operationType)
const;
65 virtual QByteArray GetObjectIdFromInputParams(
const QList<imtgql::CGqlParamObject>& inputParams)
const;
66 virtual QJsonObject InsertNewNode(
const imtgql::CGqlRequest& gqlRequest, QString& errorMessage)
const;
67 virtual QJsonObject SetNodeName(
const imtgql::CGqlRequest& gqlRequest, QString& errorMessage)
const;
68 virtual QJsonObject SetNodeDescription(
const imtgql::CGqlRequest& gqlRequest, QString& errorMessage)
const;
69 virtual QJsonObject SetNodeMetaInfo(
const imtgql::CGqlRequest& gqlRequest, QString& errorMessage)
const;
70 virtual QJsonObject MoveNode(
const imtgql::CGqlRequest& gqlRequest, QString& errorMessage)
const;
71 virtual QJsonObject RemoveNode(
const imtgql::CGqlRequest& gqlRequest, QString& errorMessage)
const;
72 virtual QJsonObject InsertNewObject(
const imtgql::CGqlRequest& gqlRequest, QString& errorMessage)
const;
73 virtual QJsonObject MoveObject(
const imtgql::CGqlRequest& gqlRequest, QString& errorMessage)
const;
74 virtual QJsonObject RemoveObject(
const imtgql::CGqlRequest& gqlRequest, QString& errorMessage)
const;
75 virtual QJsonObject GetNodeCount(
const imtgql::CGqlRequest& gqlRequest, QString& errorMessage)
const;
76 virtual QJsonObject GetNodeIds(
const imtgql::CGqlRequest& gqlRequest, QString& errorMessage)
const;
77 virtual QJsonObject GetItemInfo(
const imtgql::CGqlRequest& gqlRequest, QString& errorMessage)
const;
78 virtual QJsonObject GetObjectParentNodeIds(
const imtgql::CGqlRequest& gqlRequest, QString& errorMessage)
const;
79 virtual QJsonObject GetNodes(
const imtgql::CGqlRequest& gqlRequest, QString& errorMessage)
const;
80 virtual QJsonObject GetElements(
const imtgql::CGqlRequest& gqlRequest, QString& errorMessage)
const;
85 virtual bool SetupNodeItem(
86 const imtgql::CGqlRequest& gqlRequest,
89 QString& errorMessage)
const;
94 virtual bool SetupObjectItem(
95 const imtgql::CGqlRequest& gqlRequest,
98 QString& errorMessage)
const;
103 virtual QByteArrayList GetInformationIds(
const imtgql::CGqlRequest& gqlRequest,
const QByteArray& objectId)
const;
106 I_REF(imtbase::IHierarchicalStructure, m_collectionStructureCompPtr);
108 I_REF(imtgql::IGqlRequestExtractor, m_gqlRequestExtractorCompPtr);
109 I_REF(imtbase::IOperationContextController, m_operationContextControllerCompPtr);
110 I_ATTR(QByteArray, m_structureIdAttrPtr);