[22] | 1 | #include "TriggerCommands.h"
|
---|
| 2 | #include <string>
|
---|
| 3 | #include <vector>
|
---|
| 4 | #include <iostream>
|
---|
| 5 |
|
---|
| 6 | #include "Logger/Logger.h"
|
---|
| 7 |
|
---|
| 8 | #include "Register.h"
|
---|
| 9 | #include "CheckIsRegistered.h"
|
---|
| 10 | #include "CheckIsNotRegistered.h"
|
---|
| 11 | #include "CheckCallIsInitialized.h"
|
---|
| 12 | #include "CheckCallIsAnswered.h"
|
---|
| 13 | #include "CheckCallIsEnded.h"
|
---|
| 14 | #include "CheckNewMediaAdded.h"
|
---|
| 15 | #include "CheckNewMediaRemoved.h"
|
---|
| 16 | #include "Default.h"
|
---|
| 17 |
|
---|
| 18 | using namespace std;
|
---|
| 19 | using namespace boost;
|
---|
| 20 |
|
---|
| 21 | namespace UpperTestAdapter {
|
---|
| 22 |
|
---|
| 23 | namespace Processors {
|
---|
| 24 |
|
---|
| 25 | namespace TriggerCommandsGUI {
|
---|
| 26 |
|
---|
| 27 | TriggerCommands::TriggerCommands()
|
---|
| 28 | {
|
---|
| 29 | }
|
---|
| 30 |
|
---|
| 31 | TriggerCommands::~TriggerCommands()
|
---|
| 32 | {
|
---|
| 33 | Logger::Instance().LogInfo("TriggerCommands::~TriggerCommands");
|
---|
| 34 | m_successor.reset();
|
---|
| 35 | }
|
---|
| 36 |
|
---|
| 37 | void TriggerCommands::SetEutIpInterface(boost::shared_ptr<EutIPInterface> eutIface)
|
---|
| 38 | {
|
---|
| 39 | m_successor = shared_ptr<TriggerCommandsImpl>(new Register(eutIface)); // Register
|
---|
| 40 | shared_ptr<TriggerCommandsImpl> checkIsRegistered = shared_ptr<TriggerCommandsImpl>(new CheckIsRegistered(eutIface)); // CheckIsRegister
|
---|
| 41 | m_successor.get()->SetSuccessor(checkIsRegistered);
|
---|
| 42 | shared_ptr<TriggerCommandsImpl> checkIsNotRegistered = shared_ptr<TriggerCommandsImpl>(new CheckIsNotRegistered(eutIface)); // CheckIsNotRegister
|
---|
| 43 | checkIsRegistered.get()->SetSuccessor(checkIsNotRegistered);
|
---|
| 44 | shared_ptr<TriggerCommandsImpl> checkCallIsInitialized = shared_ptr<TriggerCommandsImpl>(new CheckCallIsInitialized(eutIface)); // CheckCallIsInitialized
|
---|
| 45 | checkIsNotRegistered.get()->SetSuccessor(checkCallIsInitialized);
|
---|
| 46 | shared_ptr<TriggerCommandsImpl> checkCallIsAnswered = shared_ptr<TriggerCommandsImpl>(new CheckCallIsAnswered(eutIface)); // CheckCallIsAnswered
|
---|
| 47 | checkCallIsInitialized.get()->SetSuccessor(checkCallIsAnswered);
|
---|
| 48 | shared_ptr<TriggerCommandsImpl> checkCallIsEnded = shared_ptr<TriggerCommandsImpl>(new CheckCallIsEnded(eutIface)); // CheckCallIsEnded
|
---|
| 49 | checkCallIsAnswered.get()->SetSuccessor(checkCallIsEnded);
|
---|
| 50 | shared_ptr<TriggerCommandsImpl> checkNewMediaAdded = shared_ptr<TriggerCommandsImpl>(new CheckNewMediaAdded(eutIface)); // CheckNewMediaAdded
|
---|
| 51 | checkCallIsEnded.get()->SetSuccessor(checkNewMediaAdded);
|
---|
| 52 | shared_ptr<TriggerCommandsImpl> checkNewMediaRemoved = shared_ptr<TriggerCommandsImpl>(new CheckNewMediaRemoved(eutIface)); // CheckNewMediaRemoved
|
---|
| 53 | checkNewMediaAdded.get()->SetSuccessor(checkNewMediaRemoved);
|
---|
| 54 | checkNewMediaRemoved.get()->SetSuccessor(shared_ptr<TriggerCommandsImpl>(new Default(eutIface)));
|
---|
| 55 |
|
---|
| 56 | Logger::Instance().LogInfo("TriggerCommandsGUI::TriggerCommands::SetEutIpInterface: 9 commands created");
|
---|
| 57 | }
|
---|
| 58 |
|
---|
| 59 | int TriggerCommands::Process(const string &trigger, const vector<string> ¶meterList)
|
---|
| 60 | {
|
---|
| 61 | // Sanity check,
|
---|
| 62 | if (trigger.length() == 0)
|
---|
| 63 | {
|
---|
| 64 | Logger::Instance().LogError("TriggerCommandsGUI::TriggerCommands::Process: trigger is empty.");
|
---|
| 65 |
|
---|
| 66 | return 1; // See TTCN-3 FncRetCode
|
---|
| 67 | }
|
---|
| 68 | if (m_successor.get() == NULL)
|
---|
| 69 | {
|
---|
| 70 | Logger::Instance().LogError("TriggerCommandsGUI::TriggerCommands::Process: Bad pointer allocation.");
|
---|
| 71 |
|
---|
| 72 | return 1; // See TTCN-3 FncRetCode
|
---|
| 73 | }
|
---|
| 74 |
|
---|
| 75 | /*stringstream ss;
|
---|
| 76 | ss << "TriggerCommandsGUI::TriggerCommands::Process: start processing: " << trigger;
|
---|
| 77 | Logger::Instance().LogInfo(ss.str());*/
|
---|
| 78 | return m_successor.get()->Process(trigger, parameterList);
|
---|
| 79 | }
|
---|
| 80 |
|
---|
| 81 | } } } // namespaces
|
---|
| 82 |
|
---|