Go to the documentation of this file.
18 #include <sys/types.h>
20 #include <netinet/in.h>
21 #include <arpa/inet.h>
26 #include <QReadWriteLock>
32 #include <QSslConfiguration>
45 class HttpWorkerThread;
52 class QSslCertificate;
53 class QSslConfiguration;
79 int m_nSocketTimeout { -1 };
82 uint m_nSupportedMethods
89 : m_sName(
std::move( sName )), m_sSharePath(
std::move( sSharePath )) {};
93 virtual bool ProcessRequest(
HTTPRequest *pRequest) = 0;
97 virtual QStringList GetBasePaths() = 0;
135 m_rwlock.lockForRead();
136 bool tmp = m_running;
141 static QString GetPlatform(
void);
142 static QString GetServerVersion(
void);
151 bool m_running {
true };
156 #ifndef QT_NO_OPENSSL
166 void LoadSSLConfig();
188 #ifndef QT_NO_OPENSSL
189 ,
const QSslConfiguration& sslConfig
193 void run(
void)
override;
201 #ifndef QT_NO_OPENSSL
207 #endif // HTTPSERVER_H
QSslConfiguration m_sslConfig
bool IsRunning(void) const
Manages a collection of sockets listening on different ports.
virtual int GetSocketTimeout() const
static QString s_platform
const QString m_privateToken
HttpServerExtension(QString sName, QString sSharePath)
HttpServer & m_httpServer
virtual void newTcpConnection(qintptr socket)
PoolServerType m_connectionType
QString GetSharePath(void) const
QMultiMap< QString, HttpServerExtension * > m_basePaths
QList< QPointer< HttpServerExtension > > HttpServerExtensionList
QSslConfiguration m_sslConfig
HttpServerExtensionList m_extensions
static QMutex s_platformLock
HttpWorker(HttpServer &httpServer, qintptr sock, PoolServerType type, const QSslConfiguration &sslConfig)
std::chrono::milliseconds m_socketTimeout