6#include <idoc/IDocumentMetaInfo.h>
9#include <imtbase/IMetaInfoCreator.h>
10#include <imtbase/IOperationContext.h>
11#include <imtbase/IObjectCollection.h>
12#include <imtgql/IGqlResponse.h>
19class IGqlObjectCollectionDelegate:
virtual public istd::IPolymorphic
22 typedef QByteArray Id;
23 typedef QByteArrayList Ids;
37 QSharedPointer<idoc::IDocumentMetaInfo> dataMetaInfoPtr;
47 typedef QList<ObjectInfo> ObjectInfoList;
49 virtual imtgql::IGqlRequest* CreateGetObjectTypeIdRequest(
const QByteArray& objectId)
const = 0;
50 virtual imtgql::IGqlRequest* CreateGetObjectInfoRequest(
const QByteArray& objectId)
const = 0;
51 virtual imtgql::IGqlRequest* CreateGetObjectMetaInfoRequest(
const QByteArray& objectId)
const = 0;
52 virtual imtgql::IGqlRequest* CreateGetObjectDataMetaInfoRequest(
const QByteArray& objectId)
const = 0;
54 const QByteArray& typeId,
56 const QString& description,
57 const istd::IChangeable* objectPtr,
58 const QString& uploadUrl = QString(),
59 const QByteArray& proposedObjectId = QByteArray(),
60 const QByteArray& nodeId = QByteArray(),
61 const idoc::IDocumentMetaInfo* dataMetaInfoPtr =
nullptr,
62 const idoc::IDocumentMetaInfo* collectionItemMetaInfoPtr =
nullptr,
65 const QByteArray& objectId,
67 int clientVersion = -1,
70 const QByteArray& objectId,
71 const QString& description,
72 int clientVersion = -1,
74 virtual imtgql::IGqlRequest* CreateGetObjectRequest(
const QByteArray& objectId,
const iprm::IParamsSet* paramsPtr =
nullptr)
const = 0;
76 const QByteArray& objectId,
77 const QByteArray& typeId,
78 const istd::IChangeable* objectPtr,
79 const QString& uploadUrl = QString(),
80 const idoc::IDocumentMetaInfo* dataMetaInfoPtr =
nullptr,
81 const idoc::IDocumentMetaInfo* collectionItemMetaInfoPtr =
nullptr,
82 int clientVersion = -1,
85 const imtbase::ICollectionInfo::Ids& objectIds,
86 int clientElementVersion = -1,
89 const iprm::IParamsSet* selectionParamsPtr =
nullptr,
90 int clientElementVersion = -1,
93 const iprm::IParamsSet* selectionParamsPtr =
nullptr)
const = 0;
97 const iprm::IParamsSet* selectionParamsPtr =
nullptr)
const = 0;
101 const iprm::IParamsSet* selectionParamsPtr =
nullptr)
const = 0;
103 virtual bool IsValid(
const imtgql::IGqlResponse& response)
const = 0;
104 virtual bool GetOperationResult(
const imtgql::IGqlResponse& response,
bool& out)
const = 0;
105 virtual bool GetObjectId(
const imtgql::IGqlResponse& response, Id& out)
const = 0;
106 virtual bool GetObjectTypeId(
const imtgql::IGqlResponse& response, Id& out)
const = 0;
107 virtual bool GetObjectInfo(
const imtgql::IGqlResponse& response, ObjectInfo& out)
const = 0;
108 virtual bool GetObjectData(
const imtgql::IGqlResponse& response, istd::IChangeable& out)
const = 0;
109 virtual bool GetMetaInfo(
const imtgql::IGqlResponse& response, idoc::IDocumentMetaInfo& out)
const = 0;
110 virtual bool GetItemCount(
const imtgql::IGqlResponse& response,
int& out)
const = 0;
111 virtual bool GetItemIds(
const imtgql::IGqlResponse& response, Ids& out)
const = 0;
114 const imtgql::IGqlResponse& response,
115 QList<imtbase::IMetaInfoCreator*> metaInfoCreatorList)
const = 0;