69 void handleClientConnecting();
75 void cleanupListenSocket();
76 void cleanupClientSockets();
82 using NewClients = std::set<ClientProxyUnknown *>;
83 using WaitingClients = std::deque<ClientProxy *>;
84 using ClientSockets = std::set<IDataSocket *>;
87 std::unique_ptr<ISocketFactory> m_socketFactory;
88 NewClients m_newClients;
89 WaitingClients m_waitingClients;
90 Server *m_server =
nullptr;
93 ClientSockets m_clientSockets;
SecurityLevel
This enum is used to set how the client and server will communicate.
Definition SecurityLevel.h:14
ClientListener & operator=(ClientListener const &)=delete
ClientProxy * getNextClient()
Get next connected client.
Definition ClientListener.cpp:64
ClientListener(ClientListener &&)=delete
ClientListener(const NetworkAddress &, std::unique_ptr< ISocketFactory > socketFactory, IEventQueue *events, SecurityLevel securityLevel)
Definition ClientListener.cpp:27
ClientListener & operator=(ClientListener &&)=delete
void setServer(Server *server)
Definition ClientListener.cpp:58
Server * getServer()
Get server which owns this listener.
Definition ClientListener.h:61
~ClientListener()
Definition ClientListener.cpp:52
ClientListener(ClientListener const &)=delete
Definition ClientProxyUnknown.h:22
Generic proxy for client.
Definition ClientProxy.h:18
Data stream socket interface.
Definition IDataSocket.h:21
Event queue interface.
Definition IEventQueue.h:29
Listen socket interface.
Definition IListenSocket.h:22
Socket factory.
Definition ISocketFactory.h:23
Network address type.
Definition NetworkAddress.h:17
Deskflow server.
Definition Server.h:41