digiKam
Loading...
Searching...
No Matches
coredbcopymanager.h
Go to the documentation of this file.
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2009-11-14
7 * Description : Core database copy manager for migration operations.
8 *
9 * SPDX-FileCopyrightText: 2009-2010 by Holger Foerster <Hamsi2k at freenet dot de>
10 * SPDX-FileCopyrightText: 2010-2024 by Gilles Caulier <caulier dot gilles at gmail dot com>
11 *
12 * SPDX-License-Identifier: GPL-2.0-or-later
13 *
14 * ============================================================ */
15
16#pragma once
17
18// Qt includes
19
20#include <QObject>
21
22// Local includes
23
24#include "digikam_export.h"
25#include "coredbbackend.h"
26
27namespace Digikam
28{
29
30class DIGIKAM_DATABASE_EXPORT CoreDbCopyManager : public QObject
31{
32 Q_OBJECT
33
34public:
35
37 {
40 canceled
41 };
42
43public:
44
45 CoreDbCopyManager() = default;
46 ~CoreDbCopyManager() override = default;
47
48 void copyDatabases(const DbEngineParameters& fromDBParameters,
49 const DbEngineParameters& toDBParameters);
50
51Q_SIGNALS:
52
53 void stepStarted(const QString& stepName);
54 void smallStepStarted(int currValue, int maxValue);
55 void finished(int finishState, const QString& errorMsg);
56
57public Q_SLOTS:
58
59 void stopProcessing();
60
61private:
62
63 // Disabled
64 explicit CoreDbCopyManager(QObject*) = delete;
65
66 bool copyTable(CoreDbBackend& fromDBbackend,
67 const QString& fromActionName,
68 CoreDbBackend& toDBbackend,
69 const QString& toActionName);
70
71 void handleClosing(bool isstopThread,
72 CoreDbBackend& fromDBbackend,
73 CoreDbBackend& toDBbackend);
74
75private:
76
77 volatile bool m_isStopProcessing = false;
78};
79
80} // namespace Digikam
Definition coredbbackend.h:32
Definition coredbcopymanager.h:31
void stepStarted(const QString &stepName)
void finished(int finishState, const QString &errorMsg)
FinishStates
Definition coredbcopymanager.h:37
@ failed
Definition coredbcopymanager.h:39
@ success
Definition coredbcopymanager.h:38
~CoreDbCopyManager() override=default
void smallStepStarted(int currValue, int maxValue)
Definition dbengineparameters.h:39
Definition datefolderview.cpp:34