mirror of
https://github.com/aaronpo97/the-biergarten-app.git
synced 2026-05-31 17:53:59 +00:00
31 lines
652 B
C++
31 lines
652 B
C++
/**
|
|
* @file services/sqlite/finalize.cc
|
|
* @brief SqliteExportService::Finalize() implementation.
|
|
*/
|
|
|
|
#include <stdexcept>
|
|
|
|
#include "services/sqlite_export_service.h"
|
|
#include "services/sqlite_export_service_helpers.h"
|
|
|
|
void SqliteExportService::Finalize() {
|
|
if (db_handle_ == nullptr) {
|
|
return;
|
|
}
|
|
|
|
try {
|
|
FinalizeStatements();
|
|
if (transaction_open_) {
|
|
sqlite_export_service_internal::ExecSql(
|
|
db_handle_, "COMMIT;", "Failed to commit SQLite transaction");
|
|
transaction_open_ = false;
|
|
}
|
|
|
|
db_handle_.reset();
|
|
location_cache_.clear();
|
|
} catch (...) {
|
|
RollbackAndCloseNoThrow();
|
|
throw;
|
|
}
|
|
}
|