EpcTools
An event based multi-threaded C++ development framework.
Public Member Functions | Friends | List of all members
ESocket::TCP::Listener< TQueue, TMessage > Class Template Referenceabstract

Listens for incoming TCP/IP connections. More...

#include <esocket.h>

Inheritance diagram for ESocket::TCP::Listener< TQueue, TMessage >:
ESocket::Base< TQueue, TMessage >

Public Member Functions

 Listener (Thread< TQueue, TMessage > &thread, Family family=Family::INET6)
 Class constructor. More...
 
 Listener (Thread< TQueue, TMessage > &thread, UShort port, Family family=Family::INET6)
 Class constructor. More...
 
 Listener (Thread< TQueue, TMessage > &thread, UShort port, Int backlog, Family family=Family::INET6)
 Class constructor. More...
 
virtual ~Listener ()
 Class destructor. More...
 
SocketState getState ()
 Retrieves the current socket state. More...
 
AddressgetLocalAddress ()
 Retrieves the local listening address. More...
 
Void setPort (UShort port)
 Assigns the port to listen for incoming connections on. More...
 
UShort getPort ()
 Retrieves the port being listened on for incoming connections. More...
 
Void setBacklog (Int backlog)
 Assigns the maximum number of "unaccepted" connections. More...
 
Int getBacklog ()
 Retrieves the maximum number of "unaccepted" connections. More...
 
Void listen ()
 Starts listening for incoming connections. More...
 
Void listen (UShort port, Int backlog)
 Starts listening for incoming connections. More...
 
virtual Talker< TQueue, TMessage > * createSocket (Thread< TQueue, TMessage > &thread)=0
 Called to create a talking socket when a incoming connection is received. More...
 
Talker< TQueue, TMessage > * createSocket ()
 Called to create a talking socket when a incoming connection is received. More...
 
virtual Void onClose ()
 Called when this socket is closed. More...
 
virtual Void onError ()
 Called when an error is detected on this socket. More...
 
- Public Member Functions inherited from ESocket::Base< TQueue, TMessage >
virtual ~Base ()
 Virtual class destructor. More...
 
Thread< TQueue, TMessage > & getThread ()
 Retrieves the socket thread that this socket is associated with. More...
 
SocketType getSocketType ()
 Retrieves the socket type. More...
 
Int getFamily ()
 Retrieves the address family. More...
 
Int getType ()
 Retrieves the socket type. More...
 
Int getProtocol ()
 Retrieves the protocol. More...
 
Int getError ()
 Retrieves the last error value. More...
 
Void close ()
 Closes this socket. More...
 
virtual Void disconnect ()
 Disconnects this socket. More...
 
Int getHandle ()
 Retrieves the socket file handle. More...
 
cpStr getStateDescription (SocketState state)
 Retrieves the description of the connection state. More...
 

Friends

class Thread< TQueue, TMessage >
 

Detailed Description

template<class TQueue, class TMessage>
class ESocket::TCP::Listener< TQueue, TMessage >

Listens for incoming TCP/IP connections.

Constructor & Destructor Documentation

◆ Listener() [1/3]

template<class TQueue , class TMessage >
ESocket::TCP::Listener< TQueue, TMessage >::Listener ( Thread< TQueue, TMessage > &  thread,
Family  family = Family::INET6 
)
inline

Class constructor.

Parameters
threadthe socket thread that this socket is associated with.
familythe default address family.

◆ Listener() [2/3]

template<class TQueue , class TMessage >
ESocket::TCP::Listener< TQueue, TMessage >::Listener ( Thread< TQueue, TMessage > &  thread,
UShort  port,
Family  family = Family::INET6 
)
inline

Class constructor.

Parameters
threadthe socket thread that this socket is associated with.
portthe port to listen on.
familythe default address family.

◆ Listener() [3/3]

template<class TQueue , class TMessage >
ESocket::TCP::Listener< TQueue, TMessage >::Listener ( Thread< TQueue, TMessage > &  thread,
UShort  port,
Int  backlog,
Family  family = Family::INET6 
)
inline

Class constructor.

Parameters
threadthe socket thread that this socket is associated with.
portthe port to listen on.
backlogthe maximum number of "unaccepted" connections.
familythe default address family.

◆ ~Listener()

template<class TQueue , class TMessage >
virtual ESocket::TCP::Listener< TQueue, TMessage >::~Listener ( )
inlinevirtual

Class destructor.

Member Function Documentation

◆ createSocket() [1/2]

template<class TQueue , class TMessage >
Talker<TQueue,TMessage>* ESocket::TCP::Listener< TQueue, TMessage >::createSocket ( )
inline

Called to create a talking socket when a incoming connection is received.

Returns
the created talking socket.

◆ createSocket() [2/2]

template<class TQueue , class TMessage >
virtual Talker<TQueue,TMessage>* ESocket::TCP::Listener< TQueue, TMessage >::createSocket ( Thread< TQueue, TMessage > &  thread)
pure virtual

Called to create a talking socket when a incoming connection is received.

Parameters
threadthe socket thread the talking socket will be associated with.
Returns
the created talking socket.

◆ getBacklog()

template<class TQueue , class TMessage >
Int ESocket::TCP::Listener< TQueue, TMessage >::getBacklog ( )
inline

Retrieves the maximum number of "unaccepted" connections.

Returns
the maximum number of "unaccepted" connections.

◆ getLocalAddress()

template<class TQueue , class TMessage >
Address& ESocket::TCP::Listener< TQueue, TMessage >::getLocalAddress ( )
inline

Retrieves the local listening address.

Returns
the local listening address.

◆ getPort()

template<class TQueue , class TMessage >
UShort ESocket::TCP::Listener< TQueue, TMessage >::getPort ( )
inline

Retrieves the port being listened on for incoming connections.

Returns
the port being listened on for incoming connections.

◆ getState()

template<class TQueue , class TMessage >
SocketState ESocket::TCP::Listener< TQueue, TMessage >::getState ( )
inline

Retrieves the current socket state.

Returns
the current socket state.

◆ listen() [1/2]

template<class TQueue , class TMessage >
Void ESocket::TCP::Listener< TQueue, TMessage >::listen ( )
inline

Starts listening for incoming connections.

◆ listen() [2/2]

template<class TQueue , class TMessage >
Void ESocket::TCP::Listener< TQueue, TMessage >::listen ( UShort  port,
Int  backlog 
)
inline

Starts listening for incoming connections.

Parameters
portthe port to listen on.
backlogthe maximum number of "unaccepted" connections.

◆ onClose()

template<class TQueue , class TMessage >
virtual Void ESocket::TCP::Listener< TQueue, TMessage >::onClose ( )
inlinevirtual

Called when this socket is closed.

◆ onError()

template<class TQueue , class TMessage >
virtual Void ESocket::TCP::Listener< TQueue, TMessage >::onError ( )
inlinevirtual

Called when an error is detected on this socket.

◆ setBacklog()

template<class TQueue , class TMessage >
Void ESocket::TCP::Listener< TQueue, TMessage >::setBacklog ( Int  backlog)
inline

Assigns the maximum number of "unaccepted" connections.

Parameters
backlogthe maximum number of "unaccepted" connections.

◆ setPort()

template<class TQueue , class TMessage >
Void ESocket::TCP::Listener< TQueue, TMessage >::setPort ( UShort  port)
inline

Assigns the port to listen for incoming connections on.

Parameters
portthe port to listen for incoming connections on.

Friends And Related Function Documentation

◆ Thread< TQueue, TMessage >

template<class TQueue , class TMessage >
friend class Thread< TQueue, TMessage >
friend

The documentation for this class was generated from the following file: