summaryrefslogtreecommitdiffstats
path: root/src/sql/drivers/oci/qsql_oci.cpp
diff options
context:
space:
mode:
authorAndy Shaw <andy.shaw@digia.com>2013-04-09 07:31:53 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-04-09 10:21:26 +0200
commit97c6fd22d2dcaf65fc41c2db22f83b5270968062 (patch)
treec9af8dc358af74bcba6895060cf521a085e95f03 /src/sql/drivers/oci/qsql_oci.cpp
parentf73a7ca46cb15d77608a4995921b4d501c21bdee (diff)
Use Q_DECLARE_PRIVATE for Oracle and DB2 plugins
This completes the change started with 0bdc86d9ef7be8e27598d245c6ca8026f08aff12 by providing the implementation for the Oracle and DB2 sqldrivers Change-Id: Ia14415c6d7dea51f1369a81236f79aff892b3af7 Reviewed-by: Mark Brand <mabrand@mabrand.nl>
Diffstat (limited to 'src/sql/drivers/oci/qsql_oci.cpp')
-rw-r--r--src/sql/drivers/oci/qsql_oci.cpp21
1 files changed, 16 insertions, 5 deletions
diff --git a/src/sql/drivers/oci/qsql_oci.cpp b/src/sql/drivers/oci/qsql_oci.cpp
index 6eb6703ebf..fe9ae42e6f 100644
--- a/src/sql/drivers/oci/qsql_oci.cpp
+++ b/src/sql/drivers/oci/qsql_oci.cpp
@@ -2088,10 +2088,9 @@ void QOCIResult::virtual_hook(int id, void *data)
QOCIDriver::QOCIDriver(QObject* parent)
- : QSqlDriver(parent)
+ : QSqlDriver(*new QOCIDriverPrivate, parent)
{
- d = new QOCIDriverPrivate();
-
+ Q_D(QOCIDriver);
#ifdef QOCI_THREADED
const ub4 mode = OCI_UTF16 | OCI_OBJECT | OCI_THREADED;
#else
@@ -2116,9 +2115,9 @@ QOCIDriver::QOCIDriver(QObject* parent)
}
QOCIDriver::QOCIDriver(OCIEnv* env, OCISvcCtx* ctx, QObject* parent)
- : QSqlDriver(parent)
+ : QSqlDriver(*new QOCIDriverPrivate, parent)
{
- d = new QOCIDriverPrivate();
+ Q_D(QOCIDriver);
d->env = env;
d->svc = ctx;
@@ -2132,6 +2131,7 @@ QOCIDriver::QOCIDriver(OCIEnv* env, OCISvcCtx* ctx, QObject* parent)
QOCIDriver::~QOCIDriver()
{
+ Q_D(QOCIDriver);
if (isOpen())
close();
int r = OCIHandleFree(d->err, OCI_HTYPE_ERROR);
@@ -2144,6 +2144,7 @@ QOCIDriver::~QOCIDriver()
bool QOCIDriver::hasFeature(DriverFeature f) const
{
+ Q_D(const QOCIDriver);
switch (f) {
case Transactions:
case LastInsertId:
@@ -2202,6 +2203,7 @@ bool QOCIDriver::open(const QString & db,
int port,
const QString &opts)
{
+ Q_D(QOCIDriver);
int r;
if (isOpen())
@@ -2288,6 +2290,7 @@ bool QOCIDriver::open(const QString & db,
void QOCIDriver::close()
{
+ Q_D(QOCIDriver);
if (!isOpen())
return;
@@ -2305,11 +2308,13 @@ void QOCIDriver::close()
QSqlResult *QOCIDriver::createResult() const
{
+ Q_D(const QOCIDriver);
return new QOCIResult(this, d);
}
bool QOCIDriver::beginTransaction()
{
+ Q_D(QOCIDriver);
if (!isOpen()) {
qWarning("QOCIDriver::beginTransaction: Database not open");
return false;
@@ -2330,6 +2335,7 @@ bool QOCIDriver::beginTransaction()
bool QOCIDriver::commitTransaction()
{
+ Q_D(QOCIDriver);
if (!isOpen()) {
qWarning("QOCIDriver::commitTransaction: Database not open");
return false;
@@ -2349,6 +2355,7 @@ bool QOCIDriver::commitTransaction()
bool QOCIDriver::rollbackTransaction()
{
+ Q_D(QOCIDriver);
if (!isOpen()) {
qWarning("QOCIDriver::rollbackTransaction: Database not open");
return false;
@@ -2368,6 +2375,7 @@ bool QOCIDriver::rollbackTransaction()
QStringList QOCIDriver::tables(QSql::TableType type) const
{
+ Q_D(const QOCIDriver);
QStringList tl;
QStringList sysUsers = QStringList() << QLatin1String("MDSYS")
<< QLatin1String("LBACSYS")
@@ -2473,6 +2481,7 @@ void qSplitTableAndOwner(const QString & tname, QString * tbl,
QSqlRecord QOCIDriver::record(const QString& tablename) const
{
+ Q_D(const QOCIDriver);
QSqlRecord fil;
if (!isOpen())
return fil;
@@ -2546,6 +2555,7 @@ QSqlRecord QOCIDriver::record(const QString& tablename) const
QSqlIndex QOCIDriver::primaryIndex(const QString& tablename) const
{
+ Q_D(const QOCIDriver);
QSqlIndex idx(tablename);
if (!isOpen())
return idx;
@@ -2666,6 +2676,7 @@ QString QOCIDriver::formatValue(const QSqlField &field, bool trimStrings) const
QVariant QOCIDriver::handle() const
{
+ Q_D(const QOCIDriver);
return QVariant::fromValue(d->env);
}