ifw-sup 5.1.0
 
Loading...
Searching...
No Matches
stdCmdsImpl.hpp
Go to the documentation of this file.
1
7
8#ifndef SUP_SYSSUP_COMMON_STD_CMDS_IMPL_HPP_
9#define SUP_SYSSUP_COMMON_STD_CMDS_IMPL_HPP_
10
11#include "ifw/sup/syssup/common/events.rad.hpp"
12#include <ifw/core/utils/bat/logger.hpp>
13
14#include <rad/exceptions.hpp>
15#include <rad/smAdapter.hpp>
16
18
25 class StdCmdsImpl : public stdif::AsyncStdCmds {
26 public:
27 explicit StdCmdsImpl(rad::SMAdapter& sm) : mSM(sm), m_logger(ifw::core::utils::bat::GetAppLogger()) {
28 }
29
30 virtual ~StdCmdsImpl() {
31 }
32
33 virtual elt::mal::future<std::string> Exit() override {
34 LOG4CPLUS_TRACE_METHOD(m_logger, LOG4CPLUS_TEXT("StdCmdsImpl::Exit"));
35 Events::Exit* ev = new Events::Exit();
36 mSM.PostEvent(rad::UniqueEvent(ev));
37 return ev->GetPayload().GetReplyFuture();
38 }
39
40 virtual elt::mal::future<std::string> Init() override {
41 LOG4CPLUS_TRACE_METHOD(m_logger, LOG4CPLUS_TEXT("StdCmdsImpl::Init"));
42 Events::Init* ev = new Events::Init();
43 mSM.PostEvent(rad::UniqueEvent(ev));
44 return ev->GetPayload().GetReplyFuture();
45 }
46
47 virtual elt::mal::future<std::string> Stop() override {
48 LOG4CPLUS_TRACE_METHOD(m_logger, LOG4CPLUS_TEXT("StdCmdsImpl::Stop"));
49 Events::Stop* ev = new Events::Stop();
50 mSM.PostEvent(rad::UniqueEvent(ev));
51 return ev->GetPayload().GetReplyFuture();
52 }
53
54 virtual elt::mal::future<std::string> Reset() override {
55 LOG4CPLUS_TRACE_METHOD(m_logger, LOG4CPLUS_TEXT("StdCmdsImpl::Reset"));
56 Events::Reset* ev = new Events::Reset();
57 mSM.PostEvent(rad::UniqueEvent(ev));
58 return ev->GetPayload().GetReplyFuture();
59 }
60
61 virtual elt::mal::future<std::string> GetState() override {
62 LOG4CPLUS_TRACE_METHOD(m_logger, LOG4CPLUS_TEXT("StdCmdsImpl::GetState"));
63 Events::GetState* ev = new Events::GetState();
64 mSM.PostEvent(rad::UniqueEvent(ev));
65 return ev->GetPayload().GetReplyFuture();
66 }
67
68 virtual elt::mal::future<std::string> GetStatus() override {
69 LOG4CPLUS_TRACE_METHOD(m_logger, LOG4CPLUS_TEXT("StdCmdsImpl::GetStatus"));
70 Events::GetStatus* ev = new Events::GetStatus();
71 mSM.PostEvent(rad::UniqueEvent(ev));
72 return ev->GetPayload().GetReplyFuture();
73 }
74
75 virtual elt::mal::future<std::string> GetVersion() override {
76 LOG4CPLUS_TRACE_METHOD(m_logger, LOG4CPLUS_TEXT("StdCmdsImpl::GetVersion"));
77 Events::GetVersion* ev = new Events::GetVersion();
78 mSM.PostEvent(rad::UniqueEvent(ev));
79 return ev->GetPayload().GetReplyFuture();
80 }
81
82 virtual elt::mal::future<std::string> Enable() override {
83 LOG4CPLUS_TRACE_METHOD(m_logger, LOG4CPLUS_TEXT("StdCmdsImpl::Enable"));
84 Events::Enable* ev = new Events::Enable();
85 mSM.PostEvent(rad::UniqueEvent(ev));
86 return ev->GetPayload().GetReplyFuture();
87 }
88
89 virtual elt::mal::future<std::string> Disable() override {
90 LOG4CPLUS_TRACE_METHOD(m_logger, LOG4CPLUS_TEXT("StdCmdsImpl::Disable"));
91 Events::Disable* ev = new Events::Disable();
92 mSM.PostEvent(rad::UniqueEvent(ev));
93 return ev->GetPayload().GetReplyFuture();
94 }
95
96 virtual elt::mal::future<std::string> SetLogLevel(
97 const std::shared_ptr<stdif::LogInfo>& mal_param) override {
98 LOG4CPLUS_TRACE_METHOD(m_logger, LOG4CPLUS_TEXT("StdCmdsImpl::SetLogLevel"));
99 auto ev = std::make_shared<Events::SetLogLevel>(mal_param->clone());
100 mSM.PostEvent(ev);
101 return ev->GetPayload().GetReplyFuture();
102 }
103
104#ifdef STDIF_VERSION
105# if STDIF_VERSION >= STDIF_MAKE_VERSION(4, 0, 0)
106 elt::mal::future<std::vector<std::shared_ptr<stdif::LogInfo>>>
107 GetLogLevel(const std::string &logger) {
108 LOG4CPLUS_TRACE_METHOD(m_logger, __PRETTY_FUNCTION__);
109 auto ev = std::make_shared<Events::GetLogLevel>(logger);
110 mSM.PostEvent(ev);
111 return ev->GetPayload().GetReplyFuture();
112 }
113# endif
114#endif
115
116 private:
117 rad::SMAdapter& mSM;
118 log4cplus::Logger m_logger;
119};
120
121
122
123} // namespace server
124
125#endif // SUP_SYSSUP_COMMON_STD_CMDS_IMPL_HPP_
virtual elt::mal::future< std::string > GetState() override
Definition stdCmdsImpl.hpp:61
virtual elt::mal::future< std::string > Stop() override
Definition stdCmdsImpl.hpp:47
virtual elt::mal::future< std::string > Disable() override
Definition stdCmdsImpl.hpp:89
virtual elt::mal::future< std::string > Enable() override
Definition stdCmdsImpl.hpp:82
virtual elt::mal::future< std::string > SetLogLevel(const std::shared_ptr< stdif::LogInfo > &mal_param) override
Definition stdCmdsImpl.hpp:96
virtual elt::mal::future< std::string > Init() override
Definition stdCmdsImpl.hpp:40
virtual ~StdCmdsImpl()
Definition stdCmdsImpl.hpp:30
virtual elt::mal::future< std::string > GetStatus() override
Definition stdCmdsImpl.hpp:68
virtual elt::mal::future< std::string > GetVersion() override
Definition stdCmdsImpl.hpp:75
virtual elt::mal::future< std::string > Exit() override
Definition stdCmdsImpl.hpp:33
StdCmdsImpl(rad::SMAdapter &sm)
Definition stdCmdsImpl.hpp:27
virtual elt::mal::future< std::string > Reset() override
Definition stdCmdsImpl.hpp:54
ActionMgr class source file.
Definition actionMgr.cpp:30
Definition actionMgr.cpp:28