Go to the documentation of this file.
21 #include <QSslConfiguration>
22 #include <QReadWriteLock>
47 m_rwlock.lockForRead();
59 bool m_running {
true};
162 #ifndef QT_NO_OPENSSL
163 ,
const QSslConfiguration& sslConfig
168 void run(
void)
override;
174 #ifndef QT_NO_OPENSSL
211 #ifndef QT_NO_OPENSSL
212 ,
const QSslConfiguration& sslConfig
247 bool SendText(
const QString &message);
248 bool SendText(
const QByteArray &message);
263 bool SendPing(
const QByteArray &payload);
264 bool SendPong(
const QByteArray &payload);
288 #ifndef QT_NO_OPENSSL
297 #endif // WEBSOCKET_H
WebSocketServer & m_webSocketServer
WebSocketServer & m_webSocketServer
virtual bool HandleTextFrame(const WebSocketFrame &)
void ProcessFrames(QTcpSocket *socket)
Returns false if an error occurs.
~WebSocketExtension() override=default
A representation of a single WebSocket frame.
Manages a collection of sockets listening on different ports.
~WebSocketWorker() override
qt_socket_fd_t m_socketFD
WebSocketExtension()=default
QSslConfiguration m_sslConfig
QList< WebSocketExtension * > m_extensions
void HandleDataFrame(const WebSocketFrame &frame)
Base class for extensions.
~WebSocketWorkerThread() override=default
bool SendBinary(const QByteArray &data)
PoolServerType m_connectionType
void SendBinaryMessage(const QByteArray &)
PoolServerType m_connectionType
bool SendPing(const QByteArray &payload)
WebSocketWorker(WebSocketServer &webSocketServer, qt_socket_fd_t sock, PoolServerType type, const QSslConfiguration &sslConfig)
virtual bool HandleBinaryFrame(const WebSocketFrame &)
void SendTextMessage(const QString &)
void HandleControlFrame(const WebSocketFrame &frame)
Returns false if an error occurs.
bool SendFrame(const QByteArray &frame)
The thread in which WebSocketWorker does it's thing.
virtual void newTcpConnection(qt_socket_fd_t socket)
bool SendClose(ErrorCode errCode, const QString &message=QString())
void RegisterExtension(WebSocketExtension *extension)
bool SendPong(const QByteArray &payload)
WebSocketWorkerThread(WebSocketServer &webSocketServer, qt_socket_fd_t sock, PoolServerType type, const QSslConfiguration &sslConfig)
bool IsRunning(void) const
Performs all the protocol-level work for a single websocket connection.
WebSocketFrame m_readFrame
void HandleCloseConnection(const QByteArray &payload)
The WebSocket server, which listens for connections.
void DeregisterExtension(WebSocketExtension *extension)
static QByteArray CreateFrame(WebSocketFrame::OpCode type, const QByteArray &payload)
QSslConfiguration m_sslConfig
QSslConfiguration m_sslConfig
qt_socket_fd_t m_socketFD
bool SendText(const QString &message)
bool ProcessHandshake(QTcpSocket *socket)