BMA Server Framework
/home/bradarant/barant/ServerCore/TCPServerSocket.h
1 #ifndef __TCPServerSocket_h__
2 #define __TCPServerSocket_h__
3 
4 #include "Socket.h"
5 #include "TCPSocket.h"
6 #include "Service.h"
7 #include "IPAddressList.h"
8 
9 namespace core {
10 
22 
23  class TCPServerSocket : public TCPSocket, public Command {
24 
25  public:
26 
36 
37  TCPServerSocket(EPoll &ePoll, Service &service, IPAddress address);
38 
42 
44 
49 
51 
57 
65 
66  protected:
67 
77 
78  void onDataReceived(std::string data) override;
79 
86 
87  int processCommand(std::string command, Session *session, std::stringstream &data) override;
88 
89  private:
90 
91  Session * accept();
92 
93  };
94 
95 }
96 
97 #endif
Definition: EPoll.h:31
Service & service
Definition: TCPServerSocket.h:50
Definition: Command.cpp:4
Definition: Session.h:22
void onDataReceived(std::string data) override
Definition: TCPServerSocket.cpp:24
Definition: IPAddress.h:9
IPAddressList * whiteList
Definition: TCPServerSocket.h:64
TCPServerSocket(EPoll &ePoll, Service &service, IPAddress address)
Definition: TCPServerSocket.cpp:9
IPAddressList * blackList
Definition: TCPServerSocket.h:58
Definition: Service.h:20
Definition: Command.h:18
Definition: TCPSocket.h:20
int processCommand(std::string command, Session *session, std::stringstream &data) override
Definition: TCPServerSocket.cpp:50
Definition: TCPServerSocket.h:23
Definition: IPAddressList.h:9
~TCPServerSocket()
Definition: TCPServerSocket.cpp:20