Changeset View
Changeset View
Standalone View
Standalone View
runners/bookmarks/fetchsqlite.h
Show All 22 Lines | |||||
23 | #include <QSqlDatabase> | 23 | #include <QSqlDatabase> | ||
24 | #include <QList> | 24 | #include <QList> | ||
25 | #include <QVariantMap> | 25 | #include <QVariantMap> | ||
26 | 26 | | |||
27 | #include <QVariant> | 27 | #include <QVariant> | ||
28 | #include <QString> | 28 | #include <QString> | ||
29 | 29 | | |||
30 | #include <QObject> | 30 | #include <QObject> | ||
31 | #include <QMutex> | ||||
31 | 32 | | |||
32 | 33 | | |||
33 | class BuildQuery { | 34 | class BuildQuery { | ||
34 | public: | 35 | public: | ||
35 | virtual QString query(QSqlDatabase *database) const = 0; | 36 | virtual QString query(QSqlDatabase *database) const = 0; | ||
36 | virtual ~BuildQuery() {} | 37 | virtual ~BuildQuery() {} | ||
37 | }; | 38 | }; | ||
38 | 39 | | |||
39 | class FetchSqlite : public QObject | 40 | class FetchSqlite : public QObject | ||
40 | { | 41 | { | ||
41 | Q_OBJECT | 42 | Q_OBJECT | ||
42 | public: | 43 | public: | ||
43 | explicit FetchSqlite(const QString &originalFile, const QString ©To, QObject *parent = nullptr); | 44 | explicit FetchSqlite(const QString &originalFile, const QString ©To, QObject *parent = nullptr); | ||
44 | ~FetchSqlite() override; | 45 | ~FetchSqlite() override; | ||
45 | void prepare(); | 46 | void prepare(); | ||
46 | void teardown(); | 47 | void teardown(); | ||
47 | QList<QVariantMap> query(const QString &sql, QMap<QString,QVariant> bindObjects); | 48 | QList<QVariantMap> query(const QString &sql, QMap<QString,QVariant> bindObjects); | ||
48 | QList<QVariantMap> query(BuildQuery *buildQuery, QMap<QString,QVariant> bindObjects); | 49 | QList<QVariantMap> query(BuildQuery *buildQuery, QMap<QString,QVariant> bindObjects); | ||
49 | QList<QVariantMap> query(const QString &sql); | 50 | QList<QVariantMap> query(const QString &sql); | ||
50 | 51 | | |||
51 | private: | 52 | private: | ||
52 | QString const m_databaseFile; | 53 | QString const m_databaseFile; | ||
54 | QMutex m_mutex; | ||||
53 | QSqlDatabase m_db; | 55 | QSqlDatabase m_db; | ||
54 | }; | 56 | }; | ||
55 | 57 | | |||
56 | #endif // FETCHSQLITE_H | 58 | #endif // FETCHSQLITE_H |