diff options
Diffstat (limited to 'src/sql')
-rw-r--r-- | src/sql/kernel/qsqldatabase.cpp | 2 | ||||
-rw-r--r-- | src/sql/kernel/qsqldriverplugin.cpp | 20 | ||||
-rw-r--r-- | src/sql/kernel/qsqldriverplugin.h | 10 |
3 files changed, 10 insertions, 22 deletions
diff --git a/src/sql/kernel/qsqldatabase.cpp b/src/sql/kernel/qsqldatabase.cpp index 7e820d9047..f4a4cf9447 100644 --- a/src/sql/kernel/qsqldatabase.cpp +++ b/src/sql/kernel/qsqldatabase.cpp @@ -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) { diff --git a/src/sql/kernel/qsqldriverplugin.cpp b/src/sql/kernel/qsqldriverplugin.cpp index ea28ba2aa1..34772222f9 100644 --- a/src/sql/kernel/qsqldriverplugin.cpp +++ b/src/sql/kernel/qsqldriverplugin.cpp @@ -55,24 +55,20 @@ 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). - \sa {How to Create Qt Plugins} -*/ - -/*! - \fn QStringList QSqlDriverPlugin::keys() const - - Returns the list of drivers (keys) this plugin supports. + The json file containing the metadata for the plugin contains a list of + keys indicating the supported sql drivers - These keys are usually the class names of the custom drivers that - are implemented in the plugin. + \code + { "Keys": [ "mysqldriver" ] } + \endcode - \sa create() + \sa {How to Create Qt Plugins} */ /*! diff --git a/src/sql/kernel/qsqldriverplugin.h b/src/sql/kernel/qsqldriverplugin.h index 96dcec0313..4af9c8f73f 100644 --- a/src/sql/kernel/qsqldriverplugin.h +++ b/src/sql/kernel/qsqldriverplugin.h @@ -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; }; |