+++ /dev/null
-#include "Slave.hpp"\r
-#include "FinalizeTask.hpp"\r
-#include "BasicTask.hpp"\r
-\r
-#include <Host.hpp>\r
-#include <HostNotFoundException.hpp>\r
-\r
-#include <iostream>\r
-using namespace std;\r
-\r
-MSG_IMPLEMENT_DYNAMIC(Slave, Process);\r
-\r
-int Slave::main(int argc, char** argv)\r
-{\r
- cout <<"[" << getName() << ":" << getHost().getName() << ": PID " << getPID() << "] " << "Hello I'm " << getName() << " on " << getHost().getName() << "!" << endl;\r
- \r
- Task* receivedTask;\r
- BasicTask* basicTask;\r
- \r
- while(true) \r
- { \r
- receivedTask = Task::receive(); \r
- \r
- if(receivedTask->isInstanceOf("FinalizeTask")) \r
- {\r
- delete receivedTask;\r
- break;\r
- }\r
- \r
- basicTask = reinterpret_cast<BasicTask*>(receivedTask);\r
- \r
- cout <<"[" << getName() << ":" << getHost().getName() << ": PID " << getPID() << "] " << "Received \"" << basicTask->getName() << "\" " << endl;\r
- \r
- cout <<"[" << getName() << ":" << getHost().getName() << ": PID " << getPID() << "] " << "Processing \"" << basicTask->getName() << "\" " << endl; \r
- \r
- basicTask->execute();\r
- \r
- cout <<"[" << getName() << ":" << getHost().getName() << ": PID " << getPID() << "] " << "\"" << basicTask->getName() << "\" done " << endl;\r
- \r
- delete basicTask;\r
- }\r
- \r
- cout <<"[" << getName() << ":" << getHost().getName() << ": PID " << getPID() << "] " << "Received Finalize. I'm done. See you!" << endl;\r
- \r
- delete this;\r
-\r
- return 0;\r
-}
\ No newline at end of file