diff options
| author | Leifa <26681464+TrickyLeifa@users.noreply.github.com> | 2024-07-09 13:07:30 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-07-09 13:07:30 +0200 |
| commit | efd2571459924f40718130f7edd28a72a76b12d7 (patch) | |
| tree | 91751194abb0bfe1306976d676740b43a53dd81b /src/net/netwebsocketconnection.cpp | |
| parent | 662d4781d2653e02b9f3727a9299ded8c7b1eaa2 (diff) | |
Remove TCP entry point (#1007)
* Remove TCP entry point
Resolve #987
* Remove TCP entry point
* Servers that do not support WebSocket will be marked as `Legacy`
* Removal of TCP connection from the master will follow later.
* Tweaked error message
Diffstat (limited to 'src/net/netwebsocketconnection.cpp')
| -rw-r--r-- | src/net/netwebsocketconnection.cpp | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/src/net/netwebsocketconnection.cpp b/src/net/netwebsocketconnection.cpp deleted file mode 100644 index 91fc526f..00000000 --- a/src/net/netwebsocketconnection.cpp +++ /dev/null @@ -1,97 +0,0 @@ -#include "netwebsocketconnection.h" - -#include "networkmanager.h" - -#include <QNetworkRequest> -#include <QUrl> - -NetWebSocketConnection::NetWebSocketConnection(NetworkManager *networkManager) - : NetConnection(networkManager) - , m_network_manager(networkManager) - , m_socket(new QWebSocket(QString(), QWebSocketProtocol::VersionLatest, this)) - , m_last_state(QAbstractSocket::UnconnectedState) -{ - connect(m_socket, QOverload<QAbstractSocket::SocketError>::of(&QWebSocket::error), this, &NetWebSocketConnection::onError); - connect(m_socket, &QWebSocket::stateChanged, this, &NetWebSocketConnection::onStateChanged); - connect(m_socket, &QWebSocket::textMessageReceived, this, &NetWebSocketConnection::onTextMessageReceived); -} - -NetWebSocketConnection::~NetWebSocketConnection() -{ - m_socket->disconnect(this); - disconnectFromServer(); -} - -bool NetWebSocketConnection::isConnected() -{ - return m_last_state == QAbstractSocket::ConnectedState; -} - -void NetWebSocketConnection::connectToServer(ServerInfo &server) -{ - disconnectFromServer(); - - QUrl url; - url.setScheme("ws"); - url.setHost(server.ip); - url.setPort(server.port); - - QNetworkRequest req(url); - req.setHeader(QNetworkRequest::UserAgentHeader, m_network_manager->get_user_agent()); - - m_socket->open(req); -} - -void NetWebSocketConnection::disconnectFromServer() -{ - if (isConnected()) - { - m_socket->close(QWebSocketProtocol::CloseCodeGoingAway); - } -} - -void NetWebSocketConnection::sendPacket(AOPacket packet) -{ - m_socket->sendTextMessage(packet.toString(true)); -} - -void NetWebSocketConnection::onError() -{ - Q_EMIT errorOccurred(m_socket->errorString()); -} - -void NetWebSocketConnection::onStateChanged(QAbstractSocket::SocketState state) -{ - m_last_state = state; - switch (state) - { - default: - break; - - case QAbstractSocket::ConnectedState: - Q_EMIT connectedToServer(); - break; - - case QAbstractSocket::UnconnectedState: - Q_EMIT disconnectedFromServer(); - break; - } -} - -void NetWebSocketConnection::onTextMessageReceived(QString message) -{ - if (!message.endsWith("#%")) - { - return; - } - message.chop(2); - - QStringList raw_content = message.split('#'); - const QString header = raw_content.takeFirst(); - for (QString &data : raw_content) - { - data = AOPacket::decode(data); - } - - Q_EMIT receivedPacket(AOPacket(header, raw_content)); -} |
