summaryrefslogtreecommitdiffstats
path: root/common/storage/entitystore.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'common/storage/entitystore.cpp')
-rw-r--r--common/storage/entitystore.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/common/storage/entitystore.cpp b/common/storage/entitystore.cpp
index 6c341e2..51e5da7 100644
--- a/common/storage/entitystore.cpp
+++ b/common/storage/entitystore.cpp
@@ -111,6 +111,7 @@ EntityStore::EntityStore(const ResourceContext &context, const Log::Context &ctx
111void EntityStore::startTransaction(Sink::Storage::DataStore::AccessMode accessMode) 111void EntityStore::startTransaction(Sink::Storage::DataStore::AccessMode accessMode)
112{ 112{
113 SinkTraceCtx(d->logCtx) << "Starting transaction: " << accessMode; 113 SinkTraceCtx(d->logCtx) << "Starting transaction: " << accessMode;
114 Q_ASSERT(!d->transaction);
114 Sink::Storage::DataStore store(Sink::storageLocation(), d->resourceContext.instanceId(), accessMode); 115 Sink::Storage::DataStore store(Sink::storageLocation(), d->resourceContext.instanceId(), accessMode);
115 d->transaction = store.createTransaction(accessMode); 116 d->transaction = store.createTransaction(accessMode);
116 Q_ASSERT(d->transaction.validateNamedDatabases()); 117 Q_ASSERT(d->transaction.validateNamedDatabases());
@@ -119,6 +120,7 @@ void EntityStore::startTransaction(Sink::Storage::DataStore::AccessMode accessMo
119void EntityStore::commitTransaction() 120void EntityStore::commitTransaction()
120{ 121{
121 SinkTraceCtx(d->logCtx) << "Committing transaction"; 122 SinkTraceCtx(d->logCtx) << "Committing transaction";
123 Q_ASSERT(d->transaction);
122 d->transaction.commit(); 124 d->transaction.commit();
123 d->transaction = Storage::DataStore::Transaction(); 125 d->transaction = Storage::DataStore::Transaction();
124} 126}
@@ -130,6 +132,11 @@ void EntityStore::abortTransaction()
130 d->transaction = Storage::DataStore::Transaction(); 132 d->transaction = Storage::DataStore::Transaction();
131} 133}
132 134
135bool EntityStore::hasTransaction() const
136{
137 return d->transaction;
138}
139
133void EntityStore::copyBlobs(ApplicationDomain::ApplicationDomainType &entity, qint64 newRevision) 140void EntityStore::copyBlobs(ApplicationDomain::ApplicationDomainType &entity, qint64 newRevision)
134{ 141{
135 const auto directory = d->entityBlobStoragePath(entity.identifier()); 142 const auto directory = d->entityBlobStoragePath(entity.identifier());