rad  4.0.0
cmdsImpl.hpp
Go to the documentation of this file.
1 
9 #ifndef EXCIISERVER_CMDS_IMPL_HPP
10 #define EXCIISERVER_CMDS_IMPL_HPP
11 
12 #include "events.rad.hpp"
13 #include "logger.hpp"
14 
15 #include <rad/exceptions.hpp>
16 #include <rad/smAdapter.hpp>
17 
18 namespace exciiserver {
19 
20 class CmdsImpl : public exciiif::AsyncStdCmds {
21 public:
22  explicit CmdsImpl(rad::SMAdapter& sm) : m_sm(sm) {
24  }
25 
26  virtual ~CmdsImpl() {
28  }
29 
30  virtual elt::mal::future<std::string> Exit() override {
32  auto ev = std::make_shared<Events::Exit>();
33  m_sm.PostEvent(ev);
34  return ev->GetPayload().GetReplyFuture();
35  }
36 
37  virtual elt::mal::future<std::string> Init() override {
39  auto ev = std::make_shared<Events::Init>();
40  m_sm.PostEvent(ev);
41  return ev->GetPayload().GetReplyFuture();
42  }
43 
44  virtual elt::mal::future<std::string> Stop() override {
46  auto ev = std::make_shared<Events::Stop>();
47  m_sm.PostEvent(ev);
48  return ev->GetPayload().GetReplyFuture();
49  }
50 
51  virtual elt::mal::future<std::string> Reset() override {
53  auto ev = std::make_shared<Events::Reset>();
54  m_sm.PostEvent(ev);
55  return ev->GetPayload().GetReplyFuture();
56  }
57 
58  virtual elt::mal::future<std::string> GetState() override {
60  auto ev = std::make_shared<Events::GetState>();
61  m_sm.PostEvent(ev);
62  return ev->GetPayload().GetReplyFuture();
63  }
64 
65  virtual elt::mal::future<std::string> GetStatus() override {
67  auto ev = std::make_shared<Events::GetStatus>();
68  m_sm.PostEvent(ev);
69  return ev->GetPayload().GetReplyFuture();
70  }
71 
72  virtual elt::mal::future<std::string> GetVersion() override {
74  auto ev = std::make_shared<Events::GetVersion>();
75  m_sm.PostEvent(ev);
76  return ev->GetPayload().GetReplyFuture();
77  }
78 
79  virtual elt::mal::future<std::string> Enable() override {
81  auto ev = std::make_shared<Events::Enable>();
82  m_sm.PostEvent(ev);
83  return ev->GetPayload().GetReplyFuture();
84  }
85 
86  virtual elt::mal::future<std::string> Disable() override {
88  auto ev = std::make_shared<Events::Disable>();
89  m_sm.PostEvent(ev);
90  return ev->GetPayload().GetReplyFuture();
91  }
92 
93  virtual elt::mal::future<std::string> SetLogLevel(const std::shared_ptr<exciiif::LogInfo>& info) override {
95  auto ev = std::make_shared<Events::SetLogLevel>(info->clone());
96  m_sm.PostEvent(ev);
97  return ev->GetPayload().GetReplyFuture();
98  }
99 
100  virtual elt::mal::future<std::string> GetConfig(const std::string& p) override {
101  RAD_TRACE(GetLogger());
102  auto ev = std::make_shared<Events::GetConfig>(p);
103  m_sm.PostEvent(ev);
104  return ev->GetPayload().GetReplyFuture();
105  }
106 
107  virtual elt::mal::future<std::string> SetConfig(const std::string& p) override {
108  RAD_TRACE(GetLogger());
109  auto ev = std::make_shared<Events::SetConfig>(p);
110  m_sm.PostEvent(ev);
111  return ev->GetPayload().GetReplyFuture();
112  }
113 
114  virtual elt::mal::future<std::string> LoadConfig(const std::string& p) override {
115  RAD_TRACE(GetLogger());
116  auto ev = std::make_shared<Events::LoadConfig>(p);
117  m_sm.PostEvent(ev);
118  return ev->GetPayload().GetReplyFuture();
119  }
120 
121  virtual elt::mal::future<std::string> Preset(const std::shared_ptr<exciiif::TelPosition>& pos) override {
122  RAD_TRACE(GetLogger());
123  auto ev = std::make_shared<Events::Preset>(pos->clone());
124  m_sm.PostEvent(ev);
125  return ev->GetPayload().GetReplyFuture();
126  }
127 
128 private:
129  rad::SMAdapter& m_sm;
130 };
131 
132 } // namespace exciiserver
133 
134 #endif // EXCIISERVER_CMDS_IMPL_HPP
exciiserver::CmdsImpl
Definition: cmdsImpl.hpp:20
exceptions.hpp
Exception classes header file.
rad::SMAdapter
Definition: smAdapter.hpp:60
RAD_TRACE
#define RAD_TRACE(logger)
Definition: logger.hpp:24
logger.hpp
Default logger name.
exciiserver::CmdsImpl::SetLogLevel
virtual elt::mal::future< std::string > SetLogLevel(const std::shared_ptr< exciiif::LogInfo > &info) override
Definition: cmdsImpl.hpp:93
exciiserver::CmdsImpl::GetVersion
virtual elt::mal::future< std::string > GetVersion() override
Definition: cmdsImpl.hpp:72
exciiserver::CmdsImpl::Enable
virtual elt::mal::future< std::string > Enable() override
Definition: cmdsImpl.hpp:79
smAdapter.hpp
SMAdapter class header file.
exciiserver::CmdsImpl::Init
virtual elt::mal::future< std::string > Init() override
Definition: cmdsImpl.hpp:37
exciiserver::CmdsImpl::Stop
virtual elt::mal::future< std::string > Stop() override
Definition: cmdsImpl.hpp:44
exciiserver::CmdsImpl::GetState
virtual elt::mal::future< std::string > GetState() override
Definition: cmdsImpl.hpp:58
exciiserver::CmdsImpl::SetConfig
virtual elt::mal::future< std::string > SetConfig(const std::string &p) override
Definition: cmdsImpl.hpp:107
exciiserver::CmdsImpl::GetConfig
virtual elt::mal::future< std::string > GetConfig(const std::string &p) override
Definition: cmdsImpl.hpp:100
exciiserver
Definition: actionMgr.cpp:23
exciiserver::CmdsImpl::LoadConfig
virtual elt::mal::future< std::string > LoadConfig(const std::string &p) override
Definition: cmdsImpl.hpp:114
exciiserver::CmdsImpl::~CmdsImpl
virtual ~CmdsImpl()
Definition: cmdsImpl.hpp:26
exciiserver::CmdsImpl::CmdsImpl
CmdsImpl(rad::SMAdapter &sm)
Definition: cmdsImpl.hpp:22
exciiserver::CmdsImpl::Reset
virtual elt::mal::future< std::string > Reset() override
Definition: cmdsImpl.hpp:51
exciiserver::CmdsImpl::Disable
virtual elt::mal::future< std::string > Disable() override
Definition: cmdsImpl.hpp:86
exciiserver::GetLogger
log4cplus::Logger & GetLogger()
Definition: logger.cpp:14
rad::SMAdapter::PostEvent
void PostEvent(SharedEvent e)
Definition: smAdapter.cpp:262
exciiserver::CmdsImpl::Exit
virtual elt::mal::future< std::string > Exit() override
Definition: cmdsImpl.hpp:30
exciiserver::CmdsImpl::Preset
virtual elt::mal::future< std::string > Preset(const std::shared_ptr< exciiif::TelPosition > &pos) override
Definition: cmdsImpl.hpp:121
exciiserver::CmdsImpl::GetStatus
virtual elt::mal::future< std::string > GetStatus() override
Definition: cmdsImpl.hpp:65