summaryrefslogtreecommitdiffstats
path: root/src/sensors
diff options
context:
space:
mode:
Diffstat (limited to 'src/sensors')
-rw-r--r--src/sensors/gestures/qsensorgesturemanagerprivate.cpp15
-rw-r--r--src/sensors/gestures/qsensorgestureplugininterface.cpp13
-rw-r--r--src/sensors/gestures/qsensorgestureplugininterface.h10
-rw-r--r--src/sensors/qsensormanager.cpp14
-rw-r--r--src/sensors/qsensorplugin.cpp7
-rw-r--r--src/sensors/qsensorplugin.h13
6 files changed, 23 insertions, 49 deletions
diff --git a/src/sensors/gestures/qsensorgesturemanagerprivate.cpp b/src/sensors/gestures/qsensorgesturemanagerprivate.cpp
index 3108babc..cc5d1034 100644
--- a/src/sensors/gestures/qsensorgesturemanagerprivate.cpp
+++ b/src/sensors/gestures/qsensorgesturemanagerprivate.cpp
@@ -53,7 +53,7 @@ QT_BEGIN_NAMESPACE
QSensorGestureManagerPrivate::QSensorGestureManagerPrivate(QObject *parent) :
QObject(parent)
{
- loader = new QFactoryLoader(QSensorGestureFactoryInterface_iid, QLatin1String("/sensorgestures"));
+ loader = new QFactoryLoader("com.Nokia.QSensorGesturePluginInterface", QLatin1String("/sensorgestures"));
loadPlugins();
}
@@ -92,12 +92,13 @@ QSensorGestureManagerPrivate::~QSensorGestureManagerPrivate()
*/
void QSensorGestureManagerPrivate::loadPlugins()
{
- foreach (const QString &key, loader->keys()) {
-
- QObject *plugin = loader->instance(key);
- if (plugin) {
- initPlugin(plugin);
- }
+ Q_FOREACH (QObject *plugin, QPluginLoader::staticInstances()) {
+ initPlugin(plugin);
+ }
+ QList<QJsonObject> meta = loader->metaData();
+ for (int i = 0; i < meta.count(); i++) {
+ QObject *plugin = loader->instance(i);
+ initPlugin(plugin);
}
}
diff --git a/src/sensors/gestures/qsensorgestureplugininterface.cpp b/src/sensors/gestures/qsensorgestureplugininterface.cpp
index ac28614b..90922c57 100644
--- a/src/sensors/gestures/qsensorgestureplugininterface.cpp
+++ b/src/sensors/gestures/qsensorgestureplugininterface.cpp
@@ -41,6 +41,7 @@
#include "qsensorgestureplugininterface.h"
+QT_BEGIN_NAMESPACE
/*!
\class QSensorGesturePluginInterface
@@ -81,8 +82,6 @@
Returns this plugins name.
*/
-QT_BEGIN_NAMESPACE
-
/*!
Construct the QSensorGesturePluginInterface.
*/
@@ -95,16 +94,6 @@ QSensorGesturePluginInterface::QSensorGesturePluginInterface()
*/
QSensorGesturePluginInterface::~QSensorGesturePluginInterface()
{
-
-}
-
-/*!
- \internal
- Used by the factory loader.
- */
-QStringList QSensorGesturePluginInterface::keys() const
-{
- return QStringList() << name();
}
QT_END_NAMESPACE
diff --git a/src/sensors/gestures/qsensorgestureplugininterface.h b/src/sensors/gestures/qsensorgestureplugininterface.h
index 1cc6c2e5..ea5bee9e 100644
--- a/src/sensors/gestures/qsensorgestureplugininterface.h
+++ b/src/sensors/gestures/qsensorgestureplugininterface.h
@@ -45,7 +45,6 @@
#include <QObject>
#include <QtGlobal>
#include <QtCore/qplugin.h>
-#include <QtCore/qfactoryinterface.h>
#include "qsensorgesture.h"
#include "qsensorgesturerecognizer.h"
@@ -53,10 +52,7 @@ QT_BEGIN_HEADER
QT_BEGIN_NAMESPACE
class QSensorGestureRecognizer;
-#define QSensorGestureFactoryInterface_iid "com.Nokia.QSensorGesturePluginInterface"
-
-
-class Q_SENSORS_EXPORT QSensorGesturePluginInterface : public QFactoryInterface
+class Q_SENSORS_EXPORT QSensorGesturePluginInterface
{
public:
QSensorGesturePluginInterface();
@@ -64,11 +60,9 @@ public:
virtual QList <QSensorGestureRecognizer *> createRecognizers() = 0;
virtual QStringList supportedIds() const = 0;
virtual QString name() const = 0;
-private:
- QStringList keys() const;
};
-Q_DECLARE_INTERFACE(QSensorGesturePluginInterface, QSensorGestureFactoryInterface_iid);
+Q_DECLARE_INTERFACE(QSensorGesturePluginInterface, "com.Nokia.QSensorGesturePluginInterface");
QT_END_NAMESPACE
QT_END_HEADER
diff --git a/src/sensors/qsensormanager.cpp b/src/sensors/qsensormanager.cpp
index ae023beb..67e5b442 100644
--- a/src/sensors/qsensormanager.cpp
+++ b/src/sensors/qsensormanager.cpp
@@ -67,7 +67,7 @@ public:
};
QSensorManagerPrivate()
: pluginLoadingState(NotLoaded)
- , loader(new QFactoryLoader(QSensorPluginInterface_iid, QLatin1String("/sensors")))
+ , loader(new QFactoryLoader("com.nokia.Qt.QSensorPluginInterface/1.0", QLatin1String("/sensors")))
, defaultIdentifierForTypeLoaded(false)
, sensorsChanged(false)
{
@@ -143,14 +143,17 @@ Q_SENSORS_EXPORT void sensors_unit_test_hook(int index)
load_external_plugins = false;
break;
case 1:
+ {
Q_ASSERT(load_external_plugins == false);
Q_ASSERT(d->pluginLoadingState == QSensorManagerPrivate::Loaded);
SENSORLOG() << "initializing plugins";
- foreach (const QString &key, d->loader->keys()) {
- QObject *plugin = d->loader->instance(key);
+ QList<QJsonObject> meta = d->loader->metaData();
+ for (int i = 0; i < meta.count(); i++) {
+ QObject *plugin = d->loader->instance(i);
initPlugin(plugin);
}
break;
+ }
default:
break;
}
@@ -190,8 +193,9 @@ void QSensorManagerPrivate::loadPlugins()
if (load_external_plugins) {
SENSORLOG() << "initializing plugins";
- foreach (const QString &key, d->loader->keys()) {
- QObject *plugin = d->loader->instance(key);
+ QList<QJsonObject> meta = d->loader->metaData();
+ for (int i = 0; i < meta.count(); i++) {
+ QObject *plugin = d->loader->instance(i);
initPlugin(plugin);
}
}
diff --git a/src/sensors/qsensorplugin.cpp b/src/sensors/qsensorplugin.cpp
index 66cfefb5..e456d8d6 100644
--- a/src/sensors/qsensorplugin.cpp
+++ b/src/sensors/qsensorplugin.cpp
@@ -59,13 +59,6 @@
*/
/*!
- \fn QStringList QSensorPluginInterface::keys() const
-
- Returns a stringlist with one entry that contains a unique name for this plugin.
- Required as an artifact of the factory loader.
-*/
-
-/*!
\fn QSensorPluginInterface::registerSensors()
This function is called when the plugin is loaded. The plugin should register
diff --git a/src/sensors/qsensorplugin.h b/src/sensors/qsensorplugin.h
index 2a23c72d..0d2cbd01 100644
--- a/src/sensors/qsensorplugin.h
+++ b/src/sensors/qsensorplugin.h
@@ -44,22 +44,15 @@
#include <QtSensors/qsensorsglobal.h>
-#include <QtCore/qstringlist.h>
#include <QtCore/qplugin.h>
-#include <QtCore/qfactoryinterface.h>
QT_BEGIN_HEADER
QT_BEGIN_NAMESPACE
-#define QSensorPluginInterface_iid "com.nokia.Qt.QSensorPluginInterface/1.0"
-
-class Q_SENSORS_EXPORT QSensorPluginInterface : public QFactoryInterface
+class Q_SENSORS_EXPORT QSensorPluginInterface
{
-
public:
virtual void registerSensors() = 0;
- virtual QStringList keys() const = 0;
-
protected:
~QSensorPluginInterface() {}
};
@@ -72,8 +65,8 @@ protected:
~QSensorChangesInterface() {}
};
-Q_DECLARE_INTERFACE(QSensorPluginInterface, QSensorPluginInterface_iid);
-Q_DECLARE_INTERFACE(QSensorChangesInterface, "com.nokia.Qt.QSensorChangesInterface/1.0");
+Q_DECLARE_INTERFACE(QSensorPluginInterface, "com.nokia.Qt.QSensorPluginInterface/1.0");
+Q_DECLARE_INTERFACE(QSensorChangesInterface, "com.nokia.Qt.QSensorChangesInterface/5.0");
QT_END_NAMESPACE
QT_END_HEADER