From c1d3e2aabb6fb72fd6e3b1275261b7fc4c23e04b Mon Sep 17 00:00:00 2001 From: Mathew Sutcliffe Date: Wed, 3 Feb 2016 21:26:52 +0000 Subject: [PATCH] refs #581 Refactoring: extract method applyDeferredChanges. --- src/blackmisc/datacache.cpp | 16 ++++++++-------- src/blackmisc/datacache.h | 1 + 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/blackmisc/datacache.cpp b/src/blackmisc/datacache.cpp index d22e20ced..b77600fdd 100644 --- a/src/blackmisc/datacache.cpp +++ b/src/blackmisc/datacache.cpp @@ -141,12 +141,7 @@ namespace BlackMisc m_cache->saveToFiles(persistentStore(), values); - if (! m_deferredChanges.isEmpty()) // apply changes which we grabbed at the last minute above - { - m_deferredChanges.setSaved(); - emit valuesLoadedFromStore(m_deferredChanges, CIdentifier::anonymous()); - m_deferredChanges.clear(); - } + applyDeferredChanges(); // apply changes which we grabbed at the last minute above } CDataCacheRevision::LockGuard CDataCacheSerializer::loadFromStore(const BlackMisc::CValueCachePacket &baseline, bool defer) @@ -159,13 +154,18 @@ namespace BlackMisc m_deferredChanges.insert(newValues); } - if (! (m_deferredChanges.isEmpty() || defer)) + if (! defer) { applyDeferredChanges(); } + return lock; + } + + void CDataCacheSerializer::applyDeferredChanges() + { + if (! m_deferredChanges.isEmpty()) { m_deferredChanges.setSaved(); emit valuesLoadedFromStore(m_deferredChanges, CIdentifier::anonymous()); m_deferredChanges.clear(); } - return lock; } CDataCacheRevision::LockGuard CDataCacheRevision::beginUpdate(const QMap ×tamps) diff --git a/src/blackmisc/datacache.h b/src/blackmisc/datacache.h index 08455f271..7d784367b 100644 --- a/src/blackmisc/datacache.h +++ b/src/blackmisc/datacache.h @@ -107,6 +107,7 @@ namespace BlackMisc private: const QString &persistentStore() const; + void applyDeferredChanges(); CDataCache *const m_cache = nullptr; QUuid m_revision;