Constructors, destructors, and relevant private fields for SQLiteDatabase/Batch

This commit is contained in:
Andrew Chow 2020-05-26 20:53:06 -04:00
parent ca8b7e04ab
commit 5a488b3d77
2 changed files with 16 additions and 0 deletions

View File

@ -4,6 +4,7 @@
#include <wallet/sqlite.h>
#include <logging.h>
#include <util/memory.h>
#include <util/strencodings.h>
#include <util/translation.h>
@ -17,10 +18,15 @@ static const char* const DATABASE_FILENAME = "wallet.dat";
SQLiteDatabase::SQLiteDatabase(const fs::path& dir_path, const fs::path& file_path, bool mock)
: WalletDatabase(), m_mock(mock), m_dir_path(dir_path.string()), m_file_path(file_path.string())
{
LogPrintf("Using SQLite Version %s\n", SQLiteDatabaseVersion());
LogPrintf("Using wallet %s\n", m_dir_path);
Open();
}
SQLiteDatabase::~SQLiteDatabase()
{
Close();
}
void SQLiteDatabase::Open()
@ -46,6 +52,11 @@ std::unique_ptr<DatabaseBatch> SQLiteDatabase::MakeBatch(bool flush_on_close)
return nullptr;
}
SQLiteBatch::SQLiteBatch(SQLiteDatabase& database)
: m_database(database)
{
}
void SQLiteBatch::Close()
{
}

View File

@ -7,6 +7,8 @@
#include <wallet/db.h>
#include <sqlite3.h>
struct bilingual_str;
class SQLiteDatabase;
@ -23,6 +25,7 @@ private:
public:
explicit SQLiteBatch(SQLiteDatabase& database);
~SQLiteBatch() override { Close(); }
/* No-op. See commeng on SQLiteDatabase::Flush */
void Flush() override {}
@ -91,6 +94,8 @@ public:
/** Make a SQLiteBatch connected to this database */
std::unique_ptr<DatabaseBatch> MakeBatch(bool flush_on_close = true) override;
sqlite3* m_db{nullptr};
};
bool ExistsSQLiteDatabase(const fs::path& path);