--- smsdaemon/TaskManager.cpp 2008/06/17 08:14:12 104 +++ smsdaemon/TaskManager.cpp 2008/12/17 12:46:49 189 @@ -1,10 +1,13 @@ #include "TaskManager.h" -#include "common.h" +#include "Logger.h" #include +#include "tasks/SpoolTask.h" + + TaskManager::TaskManager() : _lastExecuted(0) { @@ -23,34 +26,34 @@ void TaskManager::LoadTasks() { + static SpoolTask task; //print the loaded tasks std::map::iterator it; - for(it = _tasks.begin(); it != _tasks.end(); ++it) + for(it = _persistant_tasks.begin(); it != _persistant_tasks.end(); ++it) { Task* tsk = (*it).second; if (tsk != 0) - Common::instance()->logMessage( std::string("Loaded task \"") + tsk->GetName() + "\"" ); + Logger::logMessage( std::string("Loaded task \"") + tsk->GetName() + "\"" ); } } -void TaskManager::AddTask(Task* task) +void TaskManager::AddPersistantTask(Task* task) { - Common* cmn = Common::instance(); if (task != 0) { std::string name = task->GetName(); - if ( _tasks[ name ] == 0) - _tasks[ name ] = task; + if ( _persistant_tasks[ name ] == 0) + _persistant_tasks[ name ] = task; else - cmn->logMessage( std::string("AddTask() -- already have a task called ") + name); + Logger::logMessage( std::string("AddTask() -- already have a task called ") + name); } else { - cmn->logMessage("AddTask() -- cannot register a null pointer"); + Logger::logMessage("AddTask() -- cannot register a null pointer"); } } @@ -60,9 +63,9 @@ } -void TaskManager::ExecuteTasks(IGsmModem& modem) +void TaskManager::ExecuteTasks(ISmsTransceiver& modem) { - const int SLEEP_TIME = 10; //wait at least 10 seconds between executions + const int SLEEP_TIME = 2; //wait this long between task executions int now = time(0); if (now < (_lastExecuted + SLEEP_TIME) ) @@ -74,7 +77,7 @@ std::map::iterator m_it; - for (m_it = _tasks.begin(); m_it != _tasks.end(); ++m_it) + for (m_it = _persistant_tasks.begin(); m_it != _persistant_tasks.end(); ++m_it) { Task* tsk = (*m_it).second; tsk->ExecuteTask(modem); @@ -103,9 +106,9 @@ } -Task* TaskManager::GetTask(const std::string& taskname) +Task* TaskManager::GetPersistantTask(const std::string& taskname) { - return _tasks[ taskname ]; + return _persistant_tasks[ taskname ]; }