aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmltooling/qmldbg_tcp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/qmltooling/qmldbg_tcp')
-rw-r--r--src/plugins/qmltooling/qmldbg_tcp/qmldbg_tcp.pro5
-rw-r--r--src/plugins/qmltooling/qmldbg_tcp/qtcpserverconnection.cpp5
-rw-r--r--src/plugins/qmltooling/qmldbg_tcp/qtcpserverconnection.h11
-rw-r--r--src/plugins/qmltooling/qmldbg_tcp/qtcpserverconnection.json3
4 files changed, 21 insertions, 3 deletions
diff --git a/src/plugins/qmltooling/qmldbg_tcp/qmldbg_tcp.pro b/src/plugins/qmltooling/qmldbg_tcp/qmldbg_tcp.pro
index 15ba7c730a..b6d25e0e9e 100644
--- a/src/plugins/qmltooling/qmldbg_tcp/qmldbg_tcp.pro
+++ b/src/plugins/qmltooling/qmldbg_tcp/qmldbg_tcp.pro
@@ -2,7 +2,7 @@ TARGET = qmldbg_tcp
QT = qml-private network
PLUGIN_TYPE = qmltooling
-PLUGIN_CLASS_NAME = QTcpServerConnection
+PLUGIN_CLASS_NAME = QTcpServerConnectionFactory
load(qt_plugin)
SOURCES += \
@@ -15,3 +15,6 @@ HEADERS += \
INCLUDEPATH += $$PWD \
$$PWD/../shared
+
+OTHER_FILES += \
+ $$PWD/qtcpserverconnection.json
diff --git a/src/plugins/qmltooling/qmldbg_tcp/qtcpserverconnection.cpp b/src/plugins/qmltooling/qmldbg_tcp/qtcpserverconnection.cpp
index 7734e5ed0d..689c98f2b9 100644
--- a/src/plugins/qmltooling/qmldbg_tcp/qtcpserverconnection.cpp
+++ b/src/plugins/qmltooling/qmldbg_tcp/qtcpserverconnection.cpp
@@ -189,4 +189,9 @@ void QTcpServerConnection::newConnection()
d->debugServer->setDevice(d->socket);
}
+QQmlDebugServerConnection *QTcpServerConnectionFactory::create(const QString &key)
+{
+ return (key == QLatin1String("QTcpServerConnection") ? new QTcpServerConnection : 0);
+}
+
QT_END_NAMESPACE
diff --git a/src/plugins/qmltooling/qmldbg_tcp/qtcpserverconnection.h b/src/plugins/qmltooling/qmldbg_tcp/qtcpserverconnection.h
index 8b2aed0b55..f405e83aac 100644
--- a/src/plugins/qmltooling/qmldbg_tcp/qtcpserverconnection.h
+++ b/src/plugins/qmltooling/qmldbg_tcp/qtcpserverconnection.h
@@ -44,8 +44,6 @@ class QTcpServerConnection : public QObject, public QQmlDebugServerConnection
Q_OBJECT
Q_DECLARE_PRIVATE(QTcpServerConnection)
Q_DISABLE_COPY(QTcpServerConnection)
- Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QQmlDebugServerConnection")
- Q_INTERFACES(QQmlDebugServerConnection)
public:
QTcpServerConnection();
@@ -70,6 +68,15 @@ private:
QTcpServerConnectionPrivate *d_ptr;
};
+class QTcpServerConnectionFactory : public QQmlDebugServerConnectionFactory
+{
+ Q_OBJECT
+ Q_PLUGIN_METADATA(IID QQmlDebugServerConnectionFactory_iid FILE "qtcpserverconnection.json")
+ Q_INTERFACES(QQmlDebugServerConnectionFactory)
+public:
+ QQmlDebugServerConnection *create(const QString &key);
+};
+
QT_END_NAMESPACE
#endif // QTCPSERVERCONNECTION_H
diff --git a/src/plugins/qmltooling/qmldbg_tcp/qtcpserverconnection.json b/src/plugins/qmltooling/qmldbg_tcp/qtcpserverconnection.json
new file mode 100644
index 0000000000..201a1b3fcb
--- /dev/null
+++ b/src/plugins/qmltooling/qmldbg_tcp/qtcpserverconnection.json
@@ -0,0 +1,3 @@
+{
+ "Keys": [ "QTcpServerConnection" ]
+}