diff options
Diffstat (limited to 'src/Server/RequestHandlers/ConnectionRequestHandlerGroup.cpp')
-rw-r--r-- | src/Server/RequestHandlers/ConnectionRequestHandlerGroup.cpp | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/src/Server/RequestHandlers/ConnectionRequestHandlerGroup.cpp b/src/Server/RequestHandlers/ConnectionRequestHandlerGroup.cpp index 3af5439..dafbaa8 100644 --- a/src/Server/RequestHandlers/ConnectionRequestHandlerGroup.cpp +++ b/src/Server/RequestHandlers/ConnectionRequestHandlerGroup.cpp @@ -32,24 +32,24 @@ void ConnectionRequestHandlerGroup::handleDaemonListRequest(boost::shared_ptr<co // TODO Require authentication ret->setType("OK"); - ret->addList("hosts"); + Common::XmlPacket::List *list = ret->createList("hosts"); std::vector<Common::HostInfo> daemons = application->getConnectionManager()->getDaemonList(); for(std::vector<Common::HostInfo>::iterator daemon = daemons.begin(); daemon != daemons.end(); ++daemon) { - (*ret)["hosts"].addEntry(); + Common::XmlPacket::List::iterator entry = list->addEntry(); - (*ret)["hosts"].back().add("name", daemon->getName()); - (*ret)["hosts"].back().add("address", daemon->getIP()); - (*ret)["hosts"].back().add("state", daemon->getState()); + entry->set("name", daemon->getName()); + entry->set("address", daemon->getIP()); + entry->set("state", daemon->getState()); } } void ConnectionRequestHandlerGroup::handleIdentifyRequest(boost::shared_ptr<const Common::XmlPacket> packet, Common::XmlPacket *ret, Common::Connection *connection) { - if((*packet)["hostname"].isEmpty()) + if(packet->get<const std::string&>("hostname").empty()) application->getConnectionManager()->identifyClientConnection(connection); else - application->getConnectionManager()->identifyDaemonConnection(connection, (*packet)["hostname"]); + application->getConnectionManager()->identifyDaemonConnection(connection, packet->get<const std::string&>("hostname")); ret->setType("OK"); } @@ -58,7 +58,11 @@ void ConnectionRequestHandlerGroup::handleLogRequest(boost::shared_ptr<const Com // TODO Require authentication try { - application->getLogManager()->log((*packet)["category"], (*packet)["level"], (*packet)["timestamp"], (*packet)["message"], + application->getLogManager()->log( + packet->get<Core::LoggerBase::MessageCategory>("category"), + packet->get<Core::LoggerBase::MessageLevel>("level"), + packet->get<time_t>("timestamp"), + packet->get<const std::string&>("message"), application->getConnectionManager()->getDaemonName(connection)); } catch(Core::Exception &e) { |