ifw-fcf  3.0.0
appCmdsImpl.hpp
Go to the documentation of this file.
1 
9 #ifndef FCF_DEVMGR_COMMON_APP_CMDS_IMPL_HPP_
10 #define FCF_DEVMGR_COMMON_APP_CMDS_IMPL_HPP_
11 
12 #include "fcf/devmgr/common/events.rad.hpp"
13 
14 #include <rad/logger.hpp>
15 #include <rad/exceptions.hpp>
16 #include <rad/smAdapter.hpp>
17 
18 namespace fcf::devmgr::common {
19 
20 class AppCmdsImpl : public fcfif::AsyncAppCmds {
21 public:
22  AppCmdsImpl(rad::SMAdapter& sm) : mSM(sm) {
23  RAD_LOG_TRACE();
24  }
25 
26  virtual ~AppCmdsImpl() {
27  RAD_LOG_TRACE();
28  }
29 
30  virtual elt::mal::future<std::string> DevStatus(const std::vector<std::string>& devices) override {
31  RAD_LOG_TRACE();
32  Events::DevStatus* ev = new Events::DevStatus(devices);
33  mSM.PostEvent(rad::UniqueEvent(ev));
34  return ev->GetPayload().GetReplyFuture();
35  }
36 
37  virtual elt::mal::future<std::string> Config() override {
38  RAD_LOG_TRACE();
39  Events::Config* ev = new Events::Config();
40  mSM.PostEvent(rad::UniqueEvent(ev));
41  return ev->GetPayload().GetReplyFuture();
42  }
43 
44  virtual elt::mal::future<std::string> GetConfig() override {
45  RAD_LOG_TRACE();
46 
47  Events::GetConfig* ev = new Events::GetConfig();
48  mSM.PostEvent(rad::UniqueEvent(ev));
49  return ev->GetPayload().GetReplyFuture();
50  }
51 
52  virtual elt::mal::future<std::string> SetLog(const std::string& level) override {
53  RAD_LOG_TRACE();
54  Events::SetLog* ev = new Events::SetLog(level);
55  mSM.PostEvent(rad::UniqueEvent(ev));
56  return ev->GetPayload().GetReplyFuture();
57  }
58 
59  virtual elt::mal::future<std::string> Simulate(const std::vector<std::string>& devices) override {
60  RAD_LOG_TRACE();
61  Events::Simulate* ev = new Events::Simulate(devices);
62  mSM.PostEvent(rad::UniqueEvent(ev));
63  return ev->GetPayload().GetReplyFuture();
64  }
65 
66  virtual elt::mal::future<std::string> StopSim(const std::vector<std::string>& devices) override {
67  RAD_LOG_TRACE();
68  Events::StopSim* ev = new Events::StopSim(devices);
69  mSM.PostEvent(rad::UniqueEvent(ev));
70  return ev->GetPayload().GetReplyFuture();
71  }
72 
73  virtual elt::mal::future<std::string> Ignore(const std::vector<std::string>& devices) override {
74  RAD_LOG_TRACE();
75  Events::Ignore* ev = new Events::Ignore(devices);
76  mSM.PostEvent(rad::UniqueEvent(ev));
77  return ev->GetPayload().GetReplyFuture();
78  }
79 
80  virtual elt::mal::future<std::string> StopIgn(const std::vector<std::string>& devices) override {
81  RAD_LOG_TRACE();
82  Events::StopIgn* ev = new Events::StopIgn(devices);
83  mSM.PostEvent(rad::UniqueEvent(ev));
84  return ev->GetPayload().GetReplyFuture();
85  }
86 
87  virtual elt::mal::future<std::string> HwInit(const std::vector<std::string>& devices) override {
88  RAD_LOG_TRACE();
89  Events::HwInit* ev = new Events::HwInit(devices);
90  mSM.PostEvent(rad::UniqueEvent(ev));
91  return ev->GetPayload().GetReplyFuture();
92  }
93 
94  virtual elt::mal::future<std::string> HwEnable(const std::vector<std::string>& devices) override {
95  RAD_LOG_TRACE();
96  Events::HwEnable* ev = new Events::HwEnable(devices);
97  mSM.PostEvent(rad::UniqueEvent(ev));
98  return ev->GetPayload().GetReplyFuture();
99  }
100 
101  virtual elt::mal::future<std::string> HwDisable(const std::vector<std::string>& devices) override {
102  RAD_LOG_TRACE();
103  Events::HwDisable* ev = new Events::HwDisable(devices);
104  mSM.PostEvent(rad::UniqueEvent(ev));
105  return ev->GetPayload().GetReplyFuture();
106  }
107 
108  virtual elt::mal::future<std::string> HwReset(const std::vector<std::string>& devices) override {
109  RAD_LOG_TRACE();
110  Events::HwReset* ev = new Events::HwReset(devices);
111  mSM.PostEvent(rad::UniqueEvent(ev));
112  return ev->GetPayload().GetReplyFuture();
113  }
114 
115  virtual elt::mal::future<std::string> Setup(const std::vector<std::shared_ptr<fcfif::SetupElem>>& buffer) override {
116  RAD_LOG_TRACE();
117  Events::Setup* ev = new Events::Setup(buffer);
118  mSM.PostEvent(rad::UniqueEvent(ev));
119  return ev->GetPayload().GetReplyFuture();
120  }
121 
122  virtual elt::mal::future<std::string> Recover() override {
123  RAD_LOG_TRACE();
124  Events::Recover* ev = new Events::Recover();
125  mSM.PostEvent(rad::UniqueEvent(ev));
126  return ev->GetPayload().GetReplyFuture();
127  }
128 
129  virtual elt::mal::future<std::string> DevNames() override {
130  RAD_LOG_TRACE();
131  Events::DevNames* ev = new Events::DevNames();
132  mSM.PostEvent(rad::UniqueEvent(ev));
133  return ev->GetPayload().GetReplyFuture();
134  }
135 
136  virtual elt::mal::future<std::string> DevInfo() override {
137  RAD_LOG_TRACE();
138  Events::DevInfo* ev = new Events::DevInfo();
139  mSM.PostEvent(rad::UniqueEvent(ev));
140  return ev->GetPayload().GetReplyFuture();
141  }
142 
143  virtual elt::mal::future<std::string> DevConfig(const std::string& devname) override {
144  RAD_LOG_TRACE();
145  Events::DevConfig* ev = new Events::DevConfig(devname);
146  mSM.PostEvent(rad::UniqueEvent(ev));
147  return ev->GetPayload().GetReplyFuture();
148  }
149 
150 private:
151  rad::SMAdapter& mSM;
152 };
153 
154 } // namespace server
155 
156 #endif // FCF_DEVMGR_COMMON_APP_CMDS_IMPL_HPP_
fcf::devmgr::common::AppCmdsImpl::Recover
virtual elt::mal::future< std::string > Recover() override
Definition: appCmdsImpl.hpp:122
fcf::devmgr::common::AppCmdsImpl::HwDisable
virtual elt::mal::future< std::string > HwDisable(const std::vector< std::string > &devices) override
Definition: appCmdsImpl.hpp:101
fcf::devmgr::common::AppCmdsImpl::SetLog
virtual elt::mal::future< std::string > SetLog(const std::string &level) override
Definition: appCmdsImpl.hpp:52
fcf::devmgr::common::AppCmdsImpl::StopIgn
virtual elt::mal::future< std::string > StopIgn(const std::vector< std::string > &devices) override
Definition: appCmdsImpl.hpp:80
fcf::devmgr::common::AppCmdsImpl
Definition: appCmdsImpl.hpp:20
fcf::devmgr::common::AppCmdsImpl::Config
virtual elt::mal::future< std::string > Config() override
Definition: appCmdsImpl.hpp:37
fcf::devmgr::common::AppCmdsImpl::DevInfo
virtual elt::mal::future< std::string > DevInfo() override
Definition: appCmdsImpl.hpp:136
fcf::devmgr::common
Definition: actionMgr.cpp:29
fcf::devmgr::common::AppCmdsImpl::DevConfig
virtual elt::mal::future< std::string > DevConfig(const std::string &devname) override
Definition: appCmdsImpl.hpp:143
fcf::devmgr::common::AppCmdsImpl::DevNames
virtual elt::mal::future< std::string > DevNames() override
Definition: appCmdsImpl.hpp:129
fcf::devmgr::common::AppCmdsImpl::Setup
virtual elt::mal::future< std::string > Setup(const std::vector< std::shared_ptr< fcfif::SetupElem >> &buffer) override
Definition: appCmdsImpl.hpp:115
fcf::devmgr::common::AppCmdsImpl::HwEnable
virtual elt::mal::future< std::string > HwEnable(const std::vector< std::string > &devices) override
Definition: appCmdsImpl.hpp:94
fcf::devmgr::common::AppCmdsImpl::~AppCmdsImpl
virtual ~AppCmdsImpl()
Definition: appCmdsImpl.hpp:26
fcf::devmgr::common::AppCmdsImpl::Ignore
virtual elt::mal::future< std::string > Ignore(const std::vector< std::string > &devices) override
Definition: appCmdsImpl.hpp:73
fcf::devmgr::common::AppCmdsImpl::GetConfig
virtual elt::mal::future< std::string > GetConfig() override
Definition: appCmdsImpl.hpp:44
fcf::devmgr::common::AppCmdsImpl::DevStatus
virtual elt::mal::future< std::string > DevStatus(const std::vector< std::string > &devices) override
Definition: appCmdsImpl.hpp:30
fcf::devmgr::common::AppCmdsImpl::HwInit
virtual elt::mal::future< std::string > HwInit(const std::vector< std::string > &devices) override
Definition: appCmdsImpl.hpp:87
fcf::devmgr::common::AppCmdsImpl::HwReset
virtual elt::mal::future< std::string > HwReset(const std::vector< std::string > &devices) override
Definition: appCmdsImpl.hpp:108
fcf::devmgr::common::AppCmdsImpl::Simulate
virtual elt::mal::future< std::string > Simulate(const std::vector< std::string > &devices) override
Definition: appCmdsImpl.hpp:59
fcf::devmgr::common::AppCmdsImpl::AppCmdsImpl
AppCmdsImpl(rad::SMAdapter &sm)
Definition: appCmdsImpl.hpp:22
fcf::devmgr::common::AppCmdsImpl::StopSim
virtual elt::mal::future< std::string > StopSim(const std::vector< std::string > &devices) override
Definition: appCmdsImpl.hpp:66