identt
WorkServer.hpp
1 
33 #ifndef _IDENTT_WORK_WORKSERVER_HPP_
34 #define _IDENTT_WORK_WORKSERVER_HPP_
35 
36 #include <store/StoreBase.hpp>
37 #include <utils/ServerBase.hpp>
38 
39 namespace identt {
40 namespace work {
41 
42 class WorkServer :
43  virtual public identt::utils::ServerBase,
44  virtual public identt::store::StoreBase,
45  virtual public std::enable_shared_from_this<WorkServer> {
46 
47 public:
48  using pointer=std::shared_ptr<WorkServer>;
49 
54  WorkServer() = delete;
55  WorkServer(const WorkServer&) = delete;
56  WorkServer& operator=(const WorkServer&) = delete;
57 
67  static pointer create(identt::utils::SharedTable::pointer stptr)
68  {
69  pointer p(new WorkServer(stptr));
70  return p;
71  }
72 
79  pointer share()
80  {
81  return shared_from_this();
82  }
83 
84 
88  virtual ~WorkServer ();
89 
96  const static std::string GetSection();
97 
104  const static identt::utils::ServerBase::ParamsListT GetRequire();
105 
115  void init(identt::utils::ServerBase::ParamsListT params);
116 
123  void stop();
124 
125 private:
126 
134  WorkServer(identt::utils::SharedTable::pointer stptr);
135 
136 };
137 } // namespace work
138 } // namespace identt
139 #endif /* _IDENTT_WORK_WORKSERVER_HPP_ */
140 
void stop()
stop : shutdown
Definition: WorkServer.cc:141
Definition: WorkServer.hpp:42
static const std::string GetSection()
GetSection : section required.
Definition: WorkServer.cc:52
static pointer create(identt::utils::SharedTable::pointer stptr)
create : static construction creates new first time
Definition: WorkServer.hpp:67
Definition: StoreBase.hpp:58
WorkServer()=delete
make noncopyable
static const identt::utils::ServerBase::ParamsListT GetRequire()
GetRequire : parameters required.
Definition: WorkServer.cc:57
pointer share()
share : return instance
Definition: WorkServer.hpp:79
Definition: CryptoBase.hpp:49
void init(identt::utils::ServerBase::ParamsListT params)
init : initialize rocksdb and others
Definition: WorkServer.cc:67
virtual ~WorkServer()
destructor
Definition: WorkServer.cc:47
Definition: ServerBase.hpp:46