summaryrefslogtreecommitdiffstats
path: root/src/Common/RequestHandlers/StatusRequestHandler.cpp
diff options
context:
space:
mode:
authorMatthias Schiffer <matthias@gamezock.de>2009-05-21 01:42:33 +0200
committerMatthias Schiffer <matthias@gamezock.de>2009-05-21 01:42:33 +0200
commit73667d1102735c42cf385442aeb2a1735bb67d6a (patch)
treef0044dc9324ab0c15e63926bb22910d34a684b46 /src/Common/RequestHandlers/StatusRequestHandler.cpp
parent9c076d2649ff8c6997c2dec1e1ef4f7359d404ec (diff)
downloadmad-73667d1102735c42cf385442aeb2a1735bb67d6a.tar
mad-73667d1102735c42cf385442aeb2a1735bb67d6a.zip
SystemBackend-Interface ueberarbeitet
Diffstat (limited to 'src/Common/RequestHandlers/StatusRequestHandler.cpp')
-rw-r--r--src/Common/RequestHandlers/StatusRequestHandler.cpp49
1 files changed, 21 insertions, 28 deletions
diff --git a/src/Common/RequestHandlers/StatusRequestHandler.cpp b/src/Common/RequestHandlers/StatusRequestHandler.cpp
index 0c13bd9..94ec5b2 100644
--- a/src/Common/RequestHandlers/StatusRequestHandler.cpp
+++ b/src/Common/RequestHandlers/StatusRequestHandler.cpp
@@ -44,40 +44,33 @@ void StatusRequestHandler::handlePacket(const XmlPacket &packet) {
// TODO Require authentication
- if(!SystemManager::get()->getUptimeInfo(boost::bind(&StatusRequestHandler::uptimeHandler, this, _1, _2)))
- needUptime = false;
- if(!SystemManager::get()->getMemoryInfo(boost::bind(&StatusRequestHandler::memoryHandler, this, _1, _2, _3, _4)))
- needMemory = false;
- if(!SystemManager::get()->getLoadInfo(boost::bind(&StatusRequestHandler::loadHandler, this, _1, _2, _3, _4, _5)))
- needLoad = false;
-
- send();
-}
-
-void StatusRequestHandler::send() {
- if(needUptime || needMemory || needLoad || sent)
- return;
+ unsigned long uptime, idleTime;
+ unsigned long totalMem, freeMem, totalSwap, freeSwap;
+ unsigned long currentLoad, nProcesses;
+ float loadAvg1, loadAvg5, loadAvg15;
- XmlPacket packet;
- packet.setType("OK");
- packet.add("uptime", uptime);
- packet.add("idleTime", idleTime);
- packet.add("totalMem", totalMem);
- packet.add("freeMem", freeMem);
- packet.add("totalSwap", totalSwap);
- packet.add("freeSwap", freeSwap);
- packet.add("currentLoad", currentLoad);
- packet.add("nProcesses", nProcesses);
- packet.add("loadAvg1", loadAvg1);
- packet.add("loadAvg5", loadAvg5);
- packet.add("loadAvg15", loadAvg15);
+ SystemManager::get()->getUptimeInfo(&uptime, &idleTime);
+ SystemManager::get()->getMemoryInfo(&totalMem, &freeMem, &totalSwap, &freeSwap);
+ SystemManager::get()->getLoadInfo(&currentLoad, &nProcesses, &loadAvg1, &loadAvg5, &loadAvg15);
- sendPacket(packet);
+ XmlPacket ret;
+ ret.setType("OK");
- sent = true;
+ ret.add("uptime", uptime);
+ ret.add("idleTime", idleTime);
+ ret.add("totalMem", totalMem);
+ ret.add("freeMem", freeMem);
+ ret.add("totalSwap", totalSwap);
+ ret.add("freeSwap", freeSwap);
+ ret.add("currentLoad", currentLoad);
+ ret.add("nProcesses", nProcesses);
+ ret.add("loadAvg1", loadAvg1);
+ ret.add("loadAvg5", loadAvg5);
+ ret.add("loadAvg15", loadAvg15);
+ sendPacket(ret);
signalFinished()();
}