fix(SmartTransaction): do not log rollback if transaction is committed

This commit is contained in:
Ronan Abhamon 2018-02-26 17:07:42 +01:00
parent 247c2877a8
commit 5542d4e0f0

View file

@ -36,15 +36,18 @@ LINPHONE_BEGIN_NAMESPACE
class SmartTransaction {
public:
SmartTransaction (soci::session *session, const char *name) : mTransaction(*session), mName(name) {
SmartTransaction (soci::session *session, const char *name) :
mTransaction(*session), mName(name), mIsCommitted(false) {
lInfo() << "Start transaction " << this << " in MainDb::" << mName << ".";
}
~SmartTransaction () {
lInfo() << "Rollback transaction " << this << " in MainDb::" << mName << ".";
if (!mIsCommitted)
lInfo() << "Rollback transaction " << this << " in MainDb::" << mName << ".";
}
void commit () {
mIsCommitted = true;
lInfo() << "Commit transaction " << this << " in MainDb::" << mName << ".";
mTransaction.commit();
}
@ -52,6 +55,7 @@ public:
private:
soci::transaction mTransaction;
const char *mName;
bool mIsCommitted;
L_DISABLE_COPY(SmartTransaction);
};