Remove QFactoryInterface from sql drivers
Change-Id: Ib31e6c4ce5264fc1e4281c8846df5630a6479a7c Reviewed-by: Mark Brand <mabrand@mabrand.nl> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>bb10
parent
ee7fa67eb0
commit
9d3e77f18e
|
|
@ -54,7 +54,6 @@ public:
|
|||
QDB2DriverPlugin();
|
||||
|
||||
QSqlDriver* create(const QString &);
|
||||
QStringList keys() const;
|
||||
};
|
||||
|
||||
QDB2DriverPlugin::QDB2DriverPlugin()
|
||||
|
|
@ -71,11 +70,6 @@ QSqlDriver* QDB2DriverPlugin::create(const QString &name)
|
|||
return 0;
|
||||
}
|
||||
|
||||
QStringList QDB2DriverPlugin::keys() const
|
||||
{
|
||||
return QStringList(QStringLiteral("QDB2"));
|
||||
}
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#include "main.moc"
|
||||
|
|
|
|||
|
|
@ -54,7 +54,6 @@ public:
|
|||
QIBaseDriverPlugin();
|
||||
|
||||
QSqlDriver* create(const QString &);
|
||||
QStringList keys() const;
|
||||
};
|
||||
|
||||
QIBaseDriverPlugin::QIBaseDriverPlugin()
|
||||
|
|
@ -71,11 +70,6 @@ QSqlDriver* QIBaseDriverPlugin::create(const QString &name)
|
|||
return 0;
|
||||
}
|
||||
|
||||
QStringList QIBaseDriverPlugin::keys() const
|
||||
{
|
||||
return QStringList(QStringLiteral("QIBASE"));
|
||||
}
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#include "main.moc"
|
||||
|
|
|
|||
|
|
@ -54,7 +54,6 @@ public:
|
|||
QMYSQLDriverPlugin();
|
||||
|
||||
QSqlDriver* create(const QString &);
|
||||
QStringList keys() const;
|
||||
};
|
||||
|
||||
QMYSQLDriverPlugin::QMYSQLDriverPlugin()
|
||||
|
|
@ -71,14 +70,6 @@ QSqlDriver* QMYSQLDriverPlugin::create(const QString &name)
|
|||
return 0;
|
||||
}
|
||||
|
||||
QStringList QMYSQLDriverPlugin::keys() const
|
||||
{
|
||||
QStringList l;
|
||||
l << QLatin1String("QMYSQL3");
|
||||
l << QLatin1String("QMYSQL");
|
||||
return l;
|
||||
}
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#include "main.moc"
|
||||
|
|
|
|||
|
|
@ -54,7 +54,6 @@ public:
|
|||
QOCIDriverPlugin();
|
||||
|
||||
QSqlDriver* create(const QString &);
|
||||
QStringList keys() const;
|
||||
};
|
||||
|
||||
QOCIDriverPlugin::QOCIDriverPlugin()
|
||||
|
|
@ -71,14 +70,6 @@ QSqlDriver* QOCIDriverPlugin::create(const QString &name)
|
|||
return 0;
|
||||
}
|
||||
|
||||
QStringList QOCIDriverPlugin::keys() const
|
||||
{
|
||||
QStringList l;
|
||||
l.append(QLatin1String("QOCI8"));
|
||||
l.append(QLatin1String("QOCI"));
|
||||
return l;
|
||||
}
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#include "main.moc"
|
||||
|
|
|
|||
|
|
@ -54,7 +54,6 @@ public:
|
|||
QODBCDriverPlugin();
|
||||
|
||||
QSqlDriver* create(const QString &);
|
||||
QStringList keys() const;
|
||||
};
|
||||
|
||||
QODBCDriverPlugin::QODBCDriverPlugin()
|
||||
|
|
@ -71,14 +70,6 @@ QSqlDriver* QODBCDriverPlugin::create(const QString &name)
|
|||
return 0;
|
||||
}
|
||||
|
||||
QStringList QODBCDriverPlugin::keys() const
|
||||
{
|
||||
QStringList l;
|
||||
l.append(QLatin1String("QODBC3"));
|
||||
l.append(QLatin1String("QODBC"));
|
||||
return l;
|
||||
}
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#include "main.moc"
|
||||
|
|
|
|||
|
|
@ -54,7 +54,6 @@ public:
|
|||
QPSQLDriverPlugin();
|
||||
|
||||
QSqlDriver* create(const QString &);
|
||||
QStringList keys() const;
|
||||
};
|
||||
|
||||
QPSQLDriverPlugin::QPSQLDriverPlugin()
|
||||
|
|
@ -71,14 +70,6 @@ QSqlDriver* QPSQLDriverPlugin::create(const QString &name)
|
|||
return 0;
|
||||
}
|
||||
|
||||
QStringList QPSQLDriverPlugin::keys() const
|
||||
{
|
||||
QStringList l;
|
||||
l.append(QLatin1String("QPSQL7"));
|
||||
l.append(QLatin1String("QPSQL"));
|
||||
return l;
|
||||
}
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#include "main.moc"
|
||||
|
|
|
|||
|
|
@ -54,7 +54,6 @@ public:
|
|||
QSQLiteDriverPlugin();
|
||||
|
||||
QSqlDriver* create(const QString &);
|
||||
QStringList keys() const;
|
||||
};
|
||||
|
||||
QSQLiteDriverPlugin::QSQLiteDriverPlugin()
|
||||
|
|
@ -71,11 +70,6 @@ QSqlDriver* QSQLiteDriverPlugin::create(const QString &name)
|
|||
return 0;
|
||||
}
|
||||
|
||||
QStringList QSQLiteDriverPlugin::keys() const
|
||||
{
|
||||
return QStringList(QStringLiteral("QSQLITE"));
|
||||
}
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#include "smain.moc"
|
||||
|
|
|
|||
|
|
@ -54,7 +54,6 @@ public:
|
|||
QSQLite2DriverPlugin();
|
||||
|
||||
QSqlDriver* create(const QString &);
|
||||
QStringList keys() const;
|
||||
};
|
||||
|
||||
QSQLite2DriverPlugin::QSQLite2DriverPlugin()
|
||||
|
|
@ -71,11 +70,6 @@ QSqlDriver* QSQLite2DriverPlugin::create(const QString &name)
|
|||
return 0;
|
||||
}
|
||||
|
||||
QStringList QSQLite2DriverPlugin::keys() const
|
||||
{
|
||||
return QStringList(QStringLiteral("QSQLITE2"));
|
||||
}
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#include "smain.moc"
|
||||
|
|
|
|||
|
|
@ -61,7 +61,6 @@ public:
|
|||
QTDSDriverPlugin();
|
||||
|
||||
QSqlDriver* create(const QString &);
|
||||
QStringList keys() const;
|
||||
};
|
||||
|
||||
QTDSDriverPlugin::QTDSDriverPlugin()
|
||||
|
|
@ -78,14 +77,6 @@ QSqlDriver* QTDSDriverPlugin::create(const QString &name)
|
|||
return 0;
|
||||
}
|
||||
|
||||
QStringList QTDSDriverPlugin::keys() const
|
||||
{
|
||||
QStringList l;
|
||||
l.append(QLatin1String("QTDS7"));
|
||||
l.append(QLatin1String("QTDS"));
|
||||
return l;
|
||||
}
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#include "main.moc"
|
||||
|
|
|
|||
|
|
@ -778,7 +778,7 @@ void QSqlDatabasePrivate::init(const QString &type)
|
|||
|
||||
#ifndef QT_NO_LIBRARY
|
||||
if (!driver && loader())
|
||||
driver = qLoadPlugin<QSqlDriver, QSqlDriverFactoryInterface>(loader(), type);
|
||||
driver = qLoadPlugin<QSqlDriver, QSqlDriverPlugin>(loader(), type);
|
||||
#endif // QT_NO_LIBRARY
|
||||
|
||||
if (!driver) {
|
||||
|
|
|
|||
|
|
@ -55,26 +55,22 @@ QT_BEGIN_NAMESPACE
|
|||
dynamically by Qt.
|
||||
|
||||
Writing a SQL plugin is achieved by subclassing this base class,
|
||||
reimplementing the pure virtual functions keys() and create(), and
|
||||
exporting the class with the Q_EXPORT_PLUGIN2() macro. See the SQL
|
||||
reimplementing the pure virtual function create(), and
|
||||
exporting the class with the Q_PLUGIN_METADATA() macro. See the SQL
|
||||
plugins that come with Qt for example implementations (in the
|
||||
\c{plugins/src/sqldrivers} subdirectory of the source
|
||||
distribution).
|
||||
|
||||
The json file containing the metadata for the plugin contains a list of
|
||||
keys indicating the supported sql drivers
|
||||
|
||||
\code
|
||||
{ "Keys": [ "mysqldriver" ] }
|
||||
\endcode
|
||||
|
||||
\sa {How to Create Qt Plugins}
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QStringList QSqlDriverPlugin::keys() const
|
||||
|
||||
Returns the list of drivers (keys) this plugin supports.
|
||||
|
||||
These keys are usually the class names of the custom drivers that
|
||||
are implemented in the plugin.
|
||||
|
||||
\sa create()
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QSqlDriver *QSqlDriverPlugin::create(const QString& key)
|
||||
|
||||
|
|
|
|||
|
|
@ -52,23 +52,15 @@ QT_BEGIN_NAMESPACE
|
|||
|
||||
class QSqlDriver;
|
||||
|
||||
struct Q_SQL_EXPORT QSqlDriverFactoryInterface : public QFactoryInterface
|
||||
{
|
||||
virtual QSqlDriver *create(const QString &name) = 0;
|
||||
};
|
||||
|
||||
#define QSqlDriverFactoryInterface_iid "org.qt-project.Qt.QSqlDriverFactoryInterface"
|
||||
Q_DECLARE_INTERFACE(QSqlDriverFactoryInterface, QSqlDriverFactoryInterface_iid)
|
||||
|
||||
class Q_SQL_EXPORT QSqlDriverPlugin : public QObject, public QSqlDriverFactoryInterface
|
||||
class Q_SQL_EXPORT QSqlDriverPlugin : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
Q_INTERFACES(QSqlDriverFactoryInterface:QFactoryInterface)
|
||||
public:
|
||||
explicit QSqlDriverPlugin(QObject *parent = 0);
|
||||
~QSqlDriverPlugin();
|
||||
|
||||
virtual QStringList keys() const = 0;
|
||||
virtual QSqlDriver *create(const QString &key) = 0;
|
||||
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in New Issue