summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMikhail Svetkin <mikhail.svetkin@qt.io>2018-07-16 16:45:46 +0200
committerMikhail Svetkin <mikhail.svetkin@qt.io>2018-07-16 15:19:48 +0000
commit1ba50028d248a43d62bb17c86aaf85973c0116fa (patch)
tree02abffd0cefa0edad4a2aa6961a5f60f90eb1d40
parent6956aa7b7747235e795be688cdcbac0cf76ab523 (diff)
Allow inherits from QAbstractHttpServer with custom private class
Change-Id: I35ba1c7cf460d51beecad3427976f1e8a710aef0 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
-rw-r--r--src/httpserver/qabstracthttpserver.cpp6
-rw-r--r--src/httpserver/qabstracthttpserver.h2
-rw-r--r--src/httpserver/qabstracthttpserver_p.h3
3 files changed, 9 insertions, 2 deletions
diff --git a/src/httpserver/qabstracthttpserver.cpp b/src/httpserver/qabstracthttpserver.cpp
index 608cb27..575845f 100644
--- a/src/httpserver/qabstracthttpserver.cpp
+++ b/src/httpserver/qabstracthttpserver.cpp
@@ -140,7 +140,11 @@ void QAbstractHttpServerPrivate::handleReadyRead()
}
QAbstractHttpServer::QAbstractHttpServer(QObject *parent)
- : QObject(*new QAbstractHttpServerPrivate, parent)
+ : QAbstractHttpServer(*new QAbstractHttpServerPrivate, parent)
+{}
+
+QAbstractHttpServer::QAbstractHttpServer(QAbstractHttpServerPrivate &dd, QObject *parent)
+ : QObject(dd, parent)
{
#if defined(QT_WEBSOCKETS_LIB)
Q_D(QAbstractHttpServer);
diff --git a/src/httpserver/qabstracthttpserver.h b/src/httpserver/qabstracthttpserver.h
index 4eda6aa..6794489 100644
--- a/src/httpserver/qabstracthttpserver.h
+++ b/src/httpserver/qabstracthttpserver.h
@@ -78,6 +78,8 @@ public:
#endif // defined(QT_WEBSOCKETS_LIB)
protected:
+ QAbstractHttpServer(QAbstractHttpServerPrivate &dd, QObject *parent = nullptr);
+
virtual bool handleRequest(const QHttpServerRequest &request, QTcpSocket *socket) = 0;
private:
diff --git a/src/httpserver/qabstracthttpserver_p.h b/src/httpserver/qabstracthttpserver_p.h
index a5beae0..559ee2f 100644
--- a/src/httpserver/qabstracthttpserver_p.h
+++ b/src/httpserver/qabstracthttpserver_p.h
@@ -51,6 +51,7 @@
// We mean it.
#include <QtHttpServer/qabstracthttpserver.h>
+#include <QtHttpServer/qthttpserverglobal.h>
#include <private/qobject_p.h>
@@ -62,7 +63,7 @@ QT_BEGIN_NAMESPACE
class QHttpServerRequest;
-class QAbstractHttpServerPrivate: public QObjectPrivate
+class Q_HTTPSERVER_EXPORT QAbstractHttpServerPrivate: public QObjectPrivate
{
Q_DECLARE_PUBLIC(QAbstractHttpServer)