ifw-fcf  5.0.0-pre2
actionsRecover.hpp
Go to the documentation of this file.
1 
8 #ifndef FCF_DEVMGR_COMMON_ACTIONS_RECOVER_HPP_
9 #define FCF_DEVMGR_COMMON_ACTIONS_RECOVER_HPP_
10 
11 // Local headers
12 #include <fcf/devmgr/common/events.rad.hpp>
13 
14 #include <rad/actionGroup.hpp>
15 #include <rad/smAdapter.hpp>
16 #include <rad/mal/request.hpp>
17 #include <utils/bat/logger.hpp>
18 
19 #include <scxml4cpp/Context.h>
20 
21 namespace fcf {
22  namespace devmgr {
23  namespace common {
24 
25  class DataContext;
26  class DeviceFacade;
30  class ActionsRecover : public rad::ActionGroup
31  {
32  public:
41  ActionsRecover(boost::asio::io_service& ios,
42  rad::SMAdapter& sm,
43  DataContext& data_ctx,
44  DeviceFacade& device_facade);
45 
52  void Start(scxml4cpp::Context* c);
53 
61  void Stop(scxml4cpp::Context* c);
62 
70  void Done(scxml4cpp::Context* c);
71 
79  void Error(scxml4cpp::Context* c);
80 
88  void Timeout(scxml4cpp::Context* c);
89 
90  ActionsRecover(const ActionsRecover&) = delete;
92 
93  private:
94  boost::asio::io_service& m_io_service;
95  rad::SMAdapter& m_sm;
96  DataContext& m_data_ctx;
97  DeviceFacade& m_device_facade;
98  rad::cii::Request<std::string> m_recover_req;
99  log4cplus::Logger m_logger;
100  };
101  } // namespace common
102  } // namespace devmgr
103 }
104 
105 #endif // FCF_DEVMGR_COMMON_ACTIONS_RECOVER_HPP_
Definition: actionsRecover.hpp:31
void Stop(scxml4cpp::Context *c)
Definition: actionsRecover.cpp:49
void Error(scxml4cpp::Context *c)
Definition: actionsRecover.cpp:73
void Done(scxml4cpp::Context *c)
Definition: actionsRecover.cpp:65
ActionsRecover & operator=(const ActionsRecover &)=delete
Disable assignment operator.
void Timeout(scxml4cpp::Context *c)
Definition: actionsRecover.cpp:89
ActionsRecover(boost::asio::io_service &ios, rad::SMAdapter &sm, DataContext &data_ctx, DeviceFacade &device_facade)
Definition: actionsRecover.cpp:22
ActionsRecover(const ActionsRecover &)=delete
Disable copy constructor.
void Start(scxml4cpp::Context *c)
Definition: actionsRecover.cpp:35
Definition: dataContext.hpp:90
Definition: deviceFacade.hpp:54
Definition: actionMgr.cpp:29