SWC-DB  v0.5.12 C++ documentations
SWC-DB© (Super Wide Column Database) - High Performance Scalable Database (https://github.com/kashirin-alex/swc-db)
DispatchHandler.h
Go to the documentation of this file.
1 /*
2  * SWC-DB© Copyright since 2019 Alex Kashirin <kashirin.alex@gmail.com>
3  * License details at <https://github.com/kashirin-alex/swc-db/#license>
4  */
5 
6 
7 #ifndef swcdb_core_comm_DispatchHandler_h
8 #define swcdb_core_comm_DispatchHandler_h
9 
10 
11 #include "swcdb/core/comm/Event.h"
12 
13 
14 namespace SWC { namespace Comm {
15 
16 
17 class DispatchHandler : public std::enable_shared_from_this<DispatchHandler> {
18  public:
19 
20  typedef std::shared_ptr<DispatchHandler> Ptr;
21 
22  virtual void handle_no_conn() = 0;
23 
24  virtual void handle(ConnHandlerPtr conn, const Event::Ptr& ev) = 0;
25 
26  virtual bool run() { return false; }
27 
28  virtual bool valid() { return true; }
29 
30  protected:
31 
32  virtual ~DispatchHandler() noexcept { }
33 
34 };
35 
36 
37 }} // namespace SWC::Comm
38 
39 
40 
41 
42 #endif // swcdb_core_comm_DispatchHandler_h
SWC::Comm::DispatchHandler::~DispatchHandler
virtual ~DispatchHandler() noexcept
Definition: DispatchHandler.h:32
SWC::Comm::DispatchHandler::valid
virtual bool valid()
Definition: DispatchHandler.h:28
SWC::Comm::DispatchHandler::handle
virtual void handle(ConnHandlerPtr conn, const Event::Ptr &ev)=0
SWC
The SWC-DB C++ namespace 'SWC'.
Definition: main.cc:12
Event.h
SWC::Comm::DispatchHandler::handle_no_conn
virtual void handle_no_conn()=0
SWC::Comm::ConnHandlerPtr
std::shared_ptr< ConnHandler > ConnHandlerPtr
Definition: AppContext.h:17
SWC::Comm::DispatchHandler
Definition: DispatchHandler.h:17
SWC::Comm::Event::Ptr
std::shared_ptr< Event > Ptr
Definition: Event.h:33
SWC::Comm::DispatchHandler::Ptr
std::shared_ptr< DispatchHandler > Ptr
Definition: DispatchHandler.h:20
SWC::Comm::DispatchHandler::run
virtual bool run()
Definition: DispatchHandler.h:26