5#include <bsoncxx/json.hpp>
6#include <bsoncxx/document/view_or_value.hpp>
9#include <imtbase/IMetaInfoCreator.h>
10#include <imtdb/IDatabaseObjectDelegate.h>
36 virtual bsoncxx::document::view_or_value
GetCountQuery(
const iprm::IParamsSet* paramsPtr =
nullptr)
const = 0;
46 const QByteArray& objectId = QByteArray(),
49 const iprm::IParamsSet* paramsPtr =
nullptr)
const = 0;
55 const QByteArray& typeId,
56 const QByteArray& proposedObjectId,
57 const QString& objectName,
58 const QString& objectDescription,
59 const istd::IChangeable* valuePtr)
const = 0;
65 const QByteArray& objectId)
const = 0;
71 const QByteArray& objectId,
72 const istd::IChangeable&
object,
73 bool useExternDelegate =
true)
const = 0;
83 const QByteArray& objectId,
84 const idoc::IDocumentMetaInfo* dataMetaInfoPtr)
const = 0;
91 const QByteArray& objectId,
92 const idoc::IDocumentMetaInfo* collectionItemMetaInfoPtr)
const = 0;
103 const bsoncxx::document::view& doc,
104 idoc::MetaInfoPtr& objectMetaInfoPtr,
105 idoc::MetaInfoPtr& collectionItemMetaInfoPtr)
const = 0;
118 virtual QByteArray GetObjectIdFromMongoId(QByteArray mid)
const = 0;
120 virtual QString GetTableName()
const = 0;
virtual bsoncxx::document::view_or_value GetSelectionQuery(const QByteArray &objectId=QByteArray(), int offset=0, int count=-1, const iprm::IParamsSet *paramsPtr=nullptr) const =0
virtual QVariant GetElementInfoFromRecord(const bsoncxx::document::view &doc, const QString &infoId) const =0
virtual bsoncxx::document::view_or_value CreateDeleteObjectQuery(const QByteArray &objectId) const =0
virtual bsoncxx::document::view_or_value CreateCollectionItemMetaInfoQuery(const imtbase::IObjectCollection &collection, const QByteArray &objectId, const idoc::IDocumentMetaInfo *collectionItemMetaInfoPtr) const =0
virtual const iprm::IOptionsList * GetObjectTypeInfos() const =0
virtual QByteArray GetObjectIdFromRecord(const bsoncxx::document::view &doc) const =0
virtual bsoncxx::document::view_or_value CreateNewObjectQuery(const QByteArray &typeId, const QByteArray &proposedObjectId, const QString &objectName, const QString &objectDescription, const istd::IChangeable *valuePtr) const =0
virtual QByteArray GetObjectTypeId(const QByteArray &objectId) const =0
virtual bool CreateObjectInfoFromRecord(const bsoncxx::document::view &doc, idoc::MetaInfoPtr &objectMetaInfoPtr, idoc::MetaInfoPtr &collectionItemMetaInfoPtr) const =0
virtual istd::IChangeable * CreateObjectFromRecord(const bsoncxx::document::view &doc) const =0
virtual bsoncxx::document::view_or_value CreateUpdateObjectQuery(const QByteArray &objectId, const istd::IChangeable &object, bool useExternDelegate=true) const =0
virtual bsoncxx::document::view_or_value GetCountQuery(const iprm::IParamsSet *paramsPtr=nullptr) const =0
virtual bsoncxx::document::view_or_value CreateDataMetaInfoQuery(const imtbase::IObjectCollection &collection, const QByteArray &objectId, const idoc::IDocumentMetaInfo *dataMetaInfoPtr) const =0