diff options
Diffstat (limited to 'common/storage.h')
-rw-r--r-- | common/storage.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/common/storage.h b/common/storage.h index 71e9401..8c129df 100644 --- a/common/storage.h +++ b/common/storage.h | |||
@@ -25,10 +25,19 @@ | |||
25 | #include <string> | 25 | #include <string> |
26 | #include <functional> | 26 | #include <functional> |
27 | #include <QString> | 27 | #include <QString> |
28 | #include <QMap> | ||
28 | 29 | ||
29 | namespace Sink { | 30 | namespace Sink { |
30 | namespace Storage { | 31 | namespace Storage { |
31 | 32 | ||
33 | struct SINK_EXPORT DbLayout { | ||
34 | typedef QMap<QByteArray, int> Databases; | ||
35 | DbLayout(); | ||
36 | DbLayout(const QByteArray &, const Databases &); | ||
37 | QByteArray name; | ||
38 | Databases tables; | ||
39 | }; | ||
40 | |||
32 | class SINK_EXPORT DataStore | 41 | class SINK_EXPORT DataStore |
33 | { | 42 | { |
34 | public: | 43 | public: |
@@ -132,7 +141,6 @@ public: | |||
132 | void abort(); | 141 | void abort(); |
133 | 142 | ||
134 | QList<QByteArray> getDatabaseNames() const; | 143 | QList<QByteArray> getDatabaseNames() const; |
135 | bool validateNamedDatabases(); | ||
136 | 144 | ||
137 | NamedDatabase openDatabase(const QByteArray &name = {"default"}, | 145 | NamedDatabase openDatabase(const QByteArray &name = {"default"}, |
138 | const std::function<void(const DataStore::Error &error)> &errorHandler = {}, bool allowDuplicates = false) const; | 146 | const std::function<void(const DataStore::Error &error)> &errorHandler = {}, bool allowDuplicates = false) const; |
@@ -152,6 +160,7 @@ public: | |||
152 | }; | 160 | }; |
153 | 161 | ||
154 | DataStore(const QString &storageRoot, const QString &name, AccessMode mode = ReadOnly); | 162 | DataStore(const QString &storageRoot, const QString &name, AccessMode mode = ReadOnly); |
163 | DataStore(const QString &storageRoot, const DbLayout &layout, AccessMode mode = ReadOnly); | ||
155 | ~DataStore(); | 164 | ~DataStore(); |
156 | 165 | ||
157 | Transaction createTransaction(AccessMode mode = ReadWrite, const std::function<void(const DataStore::Error &error)> &errorHandler = std::function<void(const DataStore::Error &error)>()); | 166 | Transaction createTransaction(AccessMode mode = ReadWrite, const std::function<void(const DataStore::Error &error)> &errorHandler = std::function<void(const DataStore::Error &error)>()); |