ifw  0.0.1-dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
dataContext.hpp
Go to the documentation of this file.
1 
9 #ifndef SERVER_DATA_CONTEXT_HPP_
10 #define SERVER_DATA_CONTEXT_HPP_
11 
12 #include "config.hpp"
13 #include "dbInterface.hpp"
14 
15 namespace server {
16 
21 class DataContext {
22  public:
32  DataContext(Config& config, rad::DbAdapter& db_adapter);
33 
37  virtual ~DataContext();
38 
42  void ReloadConfig();
43 
47  void UpdateDb();
48 
52  DbInterface& GetDbInterface();
53 
54  DataContext(const DataContext&) = delete;
55  DataContext& operator=(const DataContext&) = delete;
56 
57  private:
58  Config& m_config; // can be created only after reading the cmd line
59  rad::DbAdapter& m_runtime_db;
60  DbInterface m_db_interface;
61 };
62 
63 } // namespace server
64 
65 #endif // SERVER_DATA_CONTEXT_HPP_
DbInterface & GetDbInterface()
Definition: dataContext.cpp:60
Config
Definition: Test{{cookiecutter.device_name}}Config.cpp:44
void UpdateDb()
Definition: dataContext.cpp:37
Definition: DbAdapter.hpp:29
void ReloadConfig()
Definition: dataContext.cpp:30
def server
Definition: hellorad.py:88
virtual ~DataContext()
Definition: dataContext.cpp:26
DataContext(Config &config, rad::DbAdapter &db_adapter)
Definition: dataContext.cpp:18
DbInterface class header file.
Config class header file.
DataContext & operator=(const DataContext &)=delete
Disable copy constructor.