From 8f098fc3070f791302ec1f497588fab6ed409980 Mon Sep 17 00:00:00 2001 From: Matthias Schiffer Date: Mon, 16 Mar 2009 19:13:42 +0100 Subject: Request- und RequestHandler-Interfaces vereinfacht --- .../RequestHandlers/DaemonCommandRequestHandler.cpp | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) (limited to 'src/Core/RequestHandlers/DaemonCommandRequestHandler.cpp') diff --git a/src/Core/RequestHandlers/DaemonCommandRequestHandler.cpp b/src/Core/RequestHandlers/DaemonCommandRequestHandler.cpp index 1bfe3e4..c9a4530 100644 --- a/src/Core/RequestHandlers/DaemonCommandRequestHandler.cpp +++ b/src/Core/RequestHandlers/DaemonCommandRequestHandler.cpp @@ -26,7 +26,7 @@ namespace Mad { namespace Core { namespace RequestHandlers { -void DaemonCommandRequestHandler::handlePacket(Net::Connection *connection, uint16_t rid, const Common::XmlPacket &packet) { +void DaemonCommandRequestHandler::handlePacket(const Common::XmlPacket &packet) { if(packet.getType() != "DaemonCommand") { Common::Logger::log(Common::Logger::ERROR, "Received an unexpected packet."); @@ -34,7 +34,7 @@ void DaemonCommandRequestHandler::handlePacket(Net::Connection *connection, uint ret.setType("Error"); ret.add("ErrorCode", Common::Exception::UNEXPECTED_PACKET); - connection->send(ret.encode(rid)); + sendPacket(ret); signalFinished().emit(); return; @@ -42,16 +42,12 @@ void DaemonCommandRequestHandler::handlePacket(Net::Connection *connection, uint // TODO Require authentication - con = connection; - requestId = rid; - std::string command = packet["command"]; try { Net::Connection *daemonCon = ConnectionManager::get()->getDaemonConnection(packet["daemon"]); - Common::RequestManager::get()->sendRequest(daemonCon, std::auto_ptr( - new Requests::CommandRequest(command == "reboot", sigc::mem_fun(this, &DaemonCommandRequestHandler::requestFinished)) - )); + Common::RequestManager::get()->sendRequest(daemonCon, + sigc::mem_fun(this, &DaemonCommandRequestHandler::requestFinished), command == "reboot"); } catch(Common::Exception &e) { Common::XmlPacket ret; @@ -61,15 +57,13 @@ void DaemonCommandRequestHandler::handlePacket(Net::Connection *connection, uint ret.add("SubSubCode", e.getSubSubCode()); ret.add("Where", e.getWhere()); - con->send(ret.encode(requestId)); + sendPacket(ret); } } void DaemonCommandRequestHandler::requestFinished(const Common::Request &request) { try { - const Common::XmlPacket &packet = request.getResult(); - - con->send(packet.encode(requestId)); + sendPacket(request.getResult()); } catch(Common::Exception &e) { Common::XmlPacket ret; @@ -79,7 +73,7 @@ void DaemonCommandRequestHandler::requestFinished(const Common::Request &request ret.add("SubSubCode", e.getSubSubCode()); ret.add("Where", e.getWhere()); - con->send(ret.encode(requestId)); + sendPacket(ret); } signalFinished().emit(); -- cgit v1.2.3