Fixed Transaction class.
parent
f208120799
commit
6bc7fd8762
@ -1,12 +1,32 @@
|
|||||||
#include "transaction.h"
|
#include "transaction.h"
|
||||||
|
|
||||||
|
#include "context.h"
|
||||||
|
|
||||||
|
bool Transaction::m_inTransaction = false;
|
||||||
|
|
||||||
Transaction::Transaction()
|
Transaction::Transaction()
|
||||||
{
|
{
|
||||||
|
if (!Transaction::m_inTransaction)
|
||||||
|
{
|
||||||
|
m_tr = new odb::transaction(Context::instance().db()->begin());
|
||||||
|
Transaction::m_inTransaction = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Transaction::~Transaction()
|
Transaction::~Transaction()
|
||||||
{
|
{
|
||||||
|
if (m_tr != NULL)
|
||||||
|
{
|
||||||
|
delete m_tr;
|
||||||
|
Transaction::m_inTransaction = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void Transaction::commit()
|
||||||
|
{
|
||||||
|
if (m_tr != NULL)
|
||||||
|
{
|
||||||
|
m_tr->commit();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,12 +1,20 @@
|
|||||||
#ifndef TRANSACTION_H
|
#ifndef TRANSACTION_H
|
||||||
#define TRANSACTION_H
|
#define TRANSACTION_H
|
||||||
|
|
||||||
|
#include <odb/database.hxx>
|
||||||
|
#include <odb/transaction.hxx>
|
||||||
|
|
||||||
class Transaction
|
class Transaction
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
Transaction();
|
Transaction();
|
||||||
~Transaction();
|
~Transaction();
|
||||||
|
|
||||||
|
void commit();
|
||||||
|
|
||||||
|
private:
|
||||||
|
odb::transaction *m_tr;
|
||||||
|
static bool m_inTransaction;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // TRANSACTION_H
|
#endif // TRANSACTION_H
|
||||||
|
Loading…
Reference in New Issue