69 void handleClientConnecting();
74 void cleanupListenSocket();
75 void cleanupClientSockets();
81 using NewClients = std::set<ClientProxyUnknown *>;
82 using WaitingClients = std::deque<ClientProxy *>;
83 using ClientSockets = std::set<IDataSocket *>;
86 std::unique_ptr<ISocketFactory> m_socketFactory;
87 NewClients m_newClients;
88 WaitingClients m_waitingClients;
89 Server *m_server =
nullptr;
92 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