annotate Exception/SQLException.cpp @ 82:f507a7240bc9

Functionality for easy clearing of a query when throwing an exception.
author Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
date Thu, 10 Oct 2013 14:13:01 +0200
parents c9447697609f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
31
bf3dce7fedcb Remove all references to QDebug
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
1 #include "SQLException.hpp"
bf3dce7fedcb Remove all references to QDebug
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
2
40
f711ddb56ae7 Sort up includes.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 31
diff changeset
3 #include <QtSql/QSqlError>
31
bf3dce7fedcb Remove all references to QDebug
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
4 #include <QtSql/QSqlQuery>
bf3dce7fedcb Remove all references to QDebug
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
5
bf3dce7fedcb Remove all references to QDebug
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
6 SQLException::SQLException(const QString& errorMsg) : Exception(errorMsg)
bf3dce7fedcb Remove all references to QDebug
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
7 {
bf3dce7fedcb Remove all references to QDebug
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
8 }
bf3dce7fedcb Remove all references to QDebug
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
9
bf3dce7fedcb Remove all references to QDebug
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
10 SQLException::SQLException(const QSqlQuery& errorQuery) :
bf3dce7fedcb Remove all references to QDebug
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
11 Exception(errorQuery.lastError().text() + ":" + errorQuery.lastQuery())
bf3dce7fedcb Remove all references to QDebug
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
12 {
bf3dce7fedcb Remove all references to QDebug
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
13 }
73
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 40
diff changeset
14
82
f507a7240bc9 Functionality for easy clearing of a query when throwing an exception.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
15 SQLException::SQLException(QSqlQuery& errorQuery, bool clear) :
f507a7240bc9 Functionality for easy clearing of a query when throwing an exception.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
16 Exception(errorQuery.lastError().text() + ":" + errorQuery.lastQuery())
f507a7240bc9 Functionality for easy clearing of a query when throwing an exception.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
17 {
f507a7240bc9 Functionality for easy clearing of a query when throwing an exception.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
18 if (clear)
f507a7240bc9 Functionality for easy clearing of a query when throwing an exception.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
19 errorQuery.clear();
f507a7240bc9 Functionality for easy clearing of a query when throwing an exception.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
20 }
f507a7240bc9 Functionality for easy clearing of a query when throwing an exception.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 73
diff changeset
21
73
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 40
diff changeset
22 void SQLException::raise() const
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 40
diff changeset
23 {
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 40
diff changeset
24 throw *this;
c9447697609f Fixed some issues with raise.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 40
diff changeset
25 }