diff options
Diffstat (limited to 'src/networkmanager.cpp')
| -rw-r--r-- | src/networkmanager.cpp | 65 |
1 files changed, 42 insertions, 23 deletions
diff --git a/src/networkmanager.cpp b/src/networkmanager.cpp index 5e29e21..08d0124 100644 --- a/src/networkmanager.cpp +++ b/src/networkmanager.cpp @@ -13,15 +13,15 @@ NetworkManager::NetworkManager(AOApplication *parent) : QObject(parent) ms_reconnect_timer = new QTimer(this); ms_reconnect_timer->setSingleShot(true); - QObject::connect(ms_reconnect_timer, SIGNAL(timeout()), this, - SLOT(retry_ms_connect())); + connect(ms_reconnect_timer, &QTimer::timeout, this, + &NetworkManager::retry_ms_connect); - QObject::connect(ms_socket, SIGNAL(readyRead()), this, - SLOT(handle_ms_packet())); - QObject::connect(server_socket, SIGNAL(readyRead()), this, - SLOT(handle_server_packet())); - QObject::connect(server_socket, SIGNAL(disconnected()), ao_app, - SLOT(server_disconnected())); + connect(ms_socket, &QTcpSocket::readyRead, this, + &NetworkManager::handle_ms_packet); + connect(server_socket, &QTcpSocket::readyRead, this, + &NetworkManager::handle_server_packet); + connect(server_socket, &QTcpSocket::disconnected, ao_app, + &AOApplication::server_disconnected); QString master_config = ao_app->configini->value("master", "").value<QString>(); @@ -45,11 +45,17 @@ void NetworkManager::connect_to_master() void NetworkManager::connect_to_master_nosrv() { - QObject::connect(ms_socket, SIGNAL(error(QAbstractSocket::SocketError)), this, - SLOT(on_ms_socket_error(QAbstractSocket::SocketError))); +#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0) + connect(ms_socket, QOverload<QAbstractSocket::SocketError>::of(&QAbstractSocket::error), + this, &NetworkManager::on_ms_socket_error); +#else + connect(ms_socket, &QTcpSocket::errorOccurred, + this, &NetworkManager::on_ms_socket_error); +#endif + + connect(ms_socket, &QTcpSocket::connected, + this, &NetworkManager::on_ms_nosrv_connect_success); - QObject::connect(ms_socket, SIGNAL(connected()), this, - SLOT(on_ms_nosrv_connect_success())); ms_socket->connectToHost(ms_nosrv_hostname, ms_port); } @@ -110,7 +116,7 @@ void NetworkManager::perform_srv_lookup() #ifdef MS_FAILOVER_SUPPORTED ms_dns = new QDnsLookup(QDnsLookup::SRV, ms_srv_hostname, this); - connect(ms_dns, SIGNAL(finished()), this, SLOT(on_srv_lookup())); + connect(ms_dns, &QDnsLookup::finished, this, &NetworkManager::on_srv_lookup); ms_dns->lookup(); #endif } @@ -155,9 +161,13 @@ void NetworkManager::on_srv_lookup() if (connected) { // Connect a one-shot signal in case the master server disconnects // randomly - QObject::connect( - ms_socket, SIGNAL(error(QAbstractSocket::SocketError)), this, - SLOT(on_ms_socket_error(QAbstractSocket::SocketError))); +#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0) + connect(ms_socket, QOverload<QAbstractSocket::SocketError>::of(&QAbstractSocket::error), + this, &NetworkManager::on_ms_socket_error); +#else + connect(ms_socket, &QTcpSocket::errorOccurred, + this, &NetworkManager::on_ms_socket_error); +#endif break; } else { @@ -179,11 +189,16 @@ void NetworkManager::on_ms_nosrv_connect_success() { emit ms_connect_finished(true, false); - QObject::disconnect(ms_socket, SIGNAL(connected()), this, - SLOT(on_ms_nosrv_connect_success())); + disconnect(ms_socket, &QTcpSocket::connected, this, + &NetworkManager::on_ms_nosrv_connect_success); - QObject::connect(ms_socket, SIGNAL(error(QAbstractSocket::SocketError)), this, - SLOT(on_ms_socket_error(QAbstractSocket::SocketError))); +#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0) + connect(ms_socket, QOverload<QAbstractSocket::SocketError>::of(&QAbstractSocket::error), + this, &NetworkManager::on_ms_socket_error); +#else + connect(ms_socket, &QTcpSocket::errorOccurred, + this, &NetworkManager::on_ms_socket_error); +#endif } void NetworkManager::on_ms_socket_error(QAbstractSocket::SocketError error) @@ -193,9 +208,13 @@ void NetworkManager::on_ms_socket_error(QAbstractSocket::SocketError error) // Disconnect the one-shot signal - this way, failover connect attempts // don't trigger a full retry - QObject::disconnect(ms_socket, SIGNAL(error(QAbstractSocket::SocketError)), - this, - SLOT(on_ms_socket_error(QAbstractSocket::SocketError))); +#if QT_VERSION < QT_VERSION_CHECK(5, 15, 0) + disconnect(ms_socket, QOverload<QAbstractSocket::SocketError>::of(&QAbstractSocket::error), + this, &NetworkManager::on_ms_socket_error); +#else + disconnect(ms_socket, &QTcpSocket::errorOccurred, + this, &NetworkManager::on_ms_socket_error); +#endif emit ms_connect_finished(false, true); |
