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