ImagingTools Core SDK
CObjectCollectionMigrationControllerComp.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// ACF includes
6#include <ilog/TLoggerCompWrap.h>
7#include <ifile/IFileNameParam.h>
8
9// ImtCore includes
10#include <imtdb/CMigrationControllerCompBase.h>
11#include <imtdb/ISqlDatabaseObjectDelegate.h>
12
13
14namespace imtdb
15{
16
17
18class CObjectCollectionMigrationControllerComp: virtual public imtdb::CMigrationControllerCompBase
19{
20public:
21 typedef imtdb::CMigrationControllerCompBase BaseClass;
22
23 I_BEGIN_COMPONENT(CObjectCollectionMigrationControllerComp);
24 I_ASSIGN_MULTI_0(m_sqlDatabaseObjectDelegatesCompPtr, "SqlDatabaseObjectDelegates", "List of object collection sql delegates", false);
25 I_END_COMPONENT;
26
27protected:
28 // reimplemented (imtdb::IMigrationController)
29 virtual bool DoMigration(int& resultRevision, const istd::CIntRange& subRange = istd::CIntRange()) const override;
30
31private:
32 I_MULTIREF(imtdb::ISqlDatabaseObjectDelegate, m_sqlDatabaseObjectDelegatesCompPtr);
33};
34
35
36} // namespace imtdb
37
38
Database Abstraction Layer (ORM Framework) for ImtCore applications.