diff --git a/src/engine/databasesanitizer.h b/src/engine/databasesanitizer.h --- a/src/engine/databasesanitizer.h +++ b/src/engine/databasesanitizer.h @@ -23,10 +23,10 @@ #define BALOODATABASESANITIZER_H #include "transaction.h" -class DatabaseSanitizerImpl; namespace Baloo { +class DatabaseSanitizerImpl; /** * \brief Provide methods to show database problems and * sanitize them. @@ -62,12 +62,6 @@ */ void printDevices(const QVector& deviceIds, const bool missingOnly = false); - /** - * Internal use only. - * TODO: Hide this - */ - DocumentUrlDB getDocuments(Transaction* txn); - private: DatabaseSanitizer(const DatabaseSanitizer& rhs) = delete; DatabaseSanitizerImpl* m_pimpl; diff --git a/src/engine/databasesanitizer.cpp b/src/engine/databasesanitizer.cpp --- a/src/engine/databasesanitizer.cpp +++ b/src/engine/databasesanitizer.cpp @@ -26,14 +26,13 @@ #include #include -using namespace Baloo; - - +namespace Baloo +{ + class DatabaseSanitizerImpl { public: - DatabaseSanitizerImpl(const Database& db, Baloo::Transaction::TransactionType type, DatabaseSanitizer* q) - : q_ptr(q) - , m_transaction(new Transaction(db, type)) + DatabaseSanitizerImpl(const Database& db, Transaction::TransactionType type) + : m_transaction(new Transaction(db, type)) { } @@ -77,7 +76,9 @@ { Q_ASSERT(m_transaction); - const auto docUrlDb = q_ptr->getDocuments(m_transaction); + const auto docUrlDb = DocumentUrlDB(m_transaction->m_dbis.idTreeDbi, + m_transaction->m_dbis.idFilenameDbi, + m_transaction->m_txn); const auto map = docUrlDb.toTestMap(); const auto keys = map.keys(); QVector result; @@ -128,12 +129,15 @@ } private: - DatabaseSanitizer* q_ptr; Transaction* m_transaction; }; +} + +using namespace Baloo; + DatabaseSanitizer::DatabaseSanitizer(const Database& db, Baloo::Transaction::TransactionType type) - : m_pimpl(new DatabaseSanitizerImpl(db, type, this)) + : m_pimpl(new DatabaseSanitizerImpl(db, type)) { } @@ -208,10 +212,3 @@ err << i18n("Found %1 matching items", usedDevices.count()) << endl; } - -DocumentUrlDB DatabaseSanitizer::getDocuments(Transaction* txn) -{ - return DocumentUrlDB(txn->m_dbis.idTreeDbi, txn->m_dbis.idFilenameDbi, txn->m_txn); -} - - diff --git a/src/engine/transaction.h b/src/engine/transaction.h --- a/src/engine/transaction.h +++ b/src/engine/transaction.h @@ -130,7 +130,7 @@ MDB_env* m_env; WriteTransaction* m_writeTrans; - friend class DatabaseSanitizer; + friend class DatabaseSanitizerImpl; friend class DBState; // for testing }; }