summaryrefslogtreecommitdiffstats
path: root/src/Client/Requests/CoreStatusRequest.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Client/Requests/CoreStatusRequest.cpp')
-rw-r--r--src/Client/Requests/CoreStatusRequest.cpp15
1 files changed, 4 insertions, 11 deletions
diff --git a/src/Client/Requests/CoreStatusRequest.cpp b/src/Client/Requests/CoreStatusRequest.cpp
index af34752..1c477b8 100644
--- a/src/Client/Requests/CoreStatusRequest.cpp
+++ b/src/Client/Requests/CoreStatusRequest.cpp
@@ -38,27 +38,20 @@ bool CoreStatusRequest::send(Net::Connection *connection, const sigc::slot<void,
}
bool CoreStatusRequest::sendRequest(Net::Connection *connection, uint16_t requestId) {
- if(isSent())
+ if(!connection->send(Net::Packet(Net::Packet::STATUS, requestId)))
return false;
- if(!connection->send(Net::Packet(Net::Packet::CORE_STATUS, requestId)))
- return false;
-
- setSent();
return true;
}
bool CoreStatusRequest::handlePacket(Net::Connection*, const Net::Packet &packet) {
- if(isFinished())
- return false;
-
if(packet.getType() != Net::Packet::OK)
return false; // TODO Logging
- finished(Net::Packets::HostStatusPacket(packet));
+ finished(Net::Packets::HostStatusPacket(packet));
- setFinished();
- return true;
+ signalFinished().emit();
+ return true;
}
}