Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/Lts/Common/LtsWebSocket/client_connection.h
T
torsten f14faa04e5 Qt6-Migration: QObject-Include-Fixes + ui_requirement umbenannt
- #include <QObject> zu 106+ Header-Dateien hinzugefügt (Qt6 benötigt explizites Include)
- ui_requirement.h/cpp zu requirement_widget.h/cpp umbenannt (vermeidet AutoUIC-Scan)
- CMakeLists.txt aktualisiert
- Qt6Positioning-Dependency in Dockerfile hinzugefügt

Fixes:
- AutoUIC-Fehler bei AesBaseGui (requirement.ui nicht gefunden)
- QObject-Missing-Include-Fehler in Qt6
- Qt6Location-Modul nicht gefunden (qtpositioning fehlte)
2026-08-19 02:29:53 +02:00

72 lines
997 B
C++
Executable File

#pragma once
#include <QObject>
#include <QtCore/QThread>
#include <QtCore/QQueue>
#include "reply_message.h"
#include "logger.h"
#include <LtsWebSocket/ltswebsocketserver_export.h>
class QWebSocket;
namespace LtsWebSocket
{
class LTSWEBSOCKETSERVER_EXPORT ClientConnection
: public QThread
, public ReplyHandler
{
Q_OBJECT
public:
explicit ClientConnection(QWebSocket *socket, QObject *parent = nullptr);
~ClientConnection();
bool init();
void addReply(ReplyMessage *message) override;
QWebSocket *webSocket() { return m_socket; }
signals:
void newTextMessage(ClientConnection *client, const QString &message);
void disconnected(ClientConnection *client);
private slots:
void onNewTextMessageFromSocket(const QString &message);
void sendMessagesFromQueue();
void onSocketDisconnect();
private:
void sendMessages();
private:
QWebSocket *m_socket;
QQueue<ReplyMessage *> m_messageQueue;
LOGGER_T m_logger;
};
}