BLOCXX_NAMESPACE::ServerSocket Class Reference

#include <ServerSocket.hpp>

Inheritance diagram for BLOCXX_NAMESPACE::ServerSocket:

BLOCXX_NAMESPACE::SelectableIFC BLOCXX_NAMESPACE::IntrusiveCountableBase

List of all members.

Public Member Functions

 ServerSocket (SSLServerCtxRef sslCtx)
 Allocate a new Inet Server Socket.
 ServerSocket (SocketFlags::ESSLFlag isSSL=SocketFlags::E_NOT_SSL)
 Allocate a new Inet Server Socket.
 ServerSocket (const ServerSocket &arg)
 Copy ctor.
Socket accept (int timeoutSecs=-1)
 Accept a connection to the server socket.
Socket accept (const Timeout &timeout)
 Accept a connection to the server socket.
void doListen (UInt16 port, SocketFlags::ESSLFlag isSSL, int queueSize=10, const String &listenAddr=SocketAddress::ALL_LOCAL_ADDRESSES, SocketFlags::EReuseAddrFlag reuseAddr=SocketFlags::E_REUSE_ADDR)
 Start listening on a port.
void doListen (UInt16 port, int queueSize=10, const String &listenAddr=SocketAddress::ALL_LOCAL_ADDRESSES, SocketFlags::EReuseAddrFlag reuseAddr=SocketFlags::E_REUSE_ADDR)
 Start listening on a port.
void doListen (const String &filename, int queueSize=10, bool reuseAddr=true)
 Start listening on a Unix Domain Socket.
void close ()
 Close the listen socket.
SocketAddress getLocalAddress ()
 Return the address of the local host.
SocketHandle_t getfd () const
 Get the file descriptor of the listen socket.
Select_t getSelectObj () const

Private Attributes

IntrusiveReference
< ServerSocketImpl
m_impl


Detailed Description

Definition at line 52 of file ServerSocket.hpp.


Constructor & Destructor Documentation

BLOCXX_NAMESPACE::ServerSocket::ServerSocket ( SSLServerCtxRef  sslCtx  ) 

Allocate a new Inet Server Socket.

Parameters:
isSSL is the Server Socket an SSL socket?

Definition at line 46 of file ServerSocket.cpp.

BLOCXX_NAMESPACE::ServerSocket::ServerSocket ( SocketFlags::ESSLFlag  isSSL = SocketFlags::E_NOT_SSL  ) 

Allocate a new Inet Server Socket.

Parameters:
isSSL is the Server Socket an SSL socket?

Definition at line 52 of file ServerSocket.cpp.

BLOCXX_NAMESPACE::ServerSocket::ServerSocket ( const ServerSocket arg  ) 

Copy ctor.

Definition at line 58 of file ServerSocket.cpp.


Member Function Documentation

Socket BLOCXX_NAMESPACE::ServerSocket::accept ( int  timeoutSecs = -1  ) 

Accept a connection to the server socket.

Parameters:
timeoutSecs the timeout
Returns:
an Socket for the connection just accepted.

Definition at line 66 of file ServerSocket.cpp.

References BLOCXX_NAMESPACE::Timeout::relative().

Socket BLOCXX_NAMESPACE::ServerSocket::accept ( const Timeout timeout  ) 

Accept a connection to the server socket.

Parameters:
timeoutSecs the timeout
Returns:
an Socket for the connection just accepted.

Definition at line 72 of file ServerSocket.cpp.

References m_impl.

void BLOCXX_NAMESPACE::ServerSocket::doListen ( UInt16  port,
SocketFlags::ESSLFlag  isSSL,
int  queueSize = 10,
const String listenAddr = SocketAddress::ALL_LOCAL_ADDRESSES,
SocketFlags::EReuseAddrFlag  reuseAddr = SocketFlags::E_REUSE_ADDR 
)

Start listening on a port.

Parameters:
port The port to listen on
isSSL is the Server Socket an SSL socket?
queueSize the size of the listen queue
allInterfaces do we listen on all interfaces?
Exceptions:
SocketException 

Definition at line 78 of file ServerSocket.cpp.

References m_impl.

void BLOCXX_NAMESPACE::ServerSocket::doListen ( UInt16  port,
int  queueSize = 10,
const String listenAddr = SocketAddress::ALL_LOCAL_ADDRESSES,
SocketFlags::EReuseAddrFlag  reuseAddr = SocketFlags::E_REUSE_ADDR 
)

Start listening on a port.

Parameters:
port The port to listen on
queueSize the size of the listen queue
allInterfaces do we listen on all interfaces?
Exceptions:
SocketException 

Definition at line 85 of file ServerSocket.cpp.

References m_impl.

void BLOCXX_NAMESPACE::ServerSocket::doListen ( const String filename,
int  queueSize = 10,
bool  reuseAddr = true 
)

Start listening on a Unix Domain Socket.

Parameters:
filename The filename for the unix domain socket
queueSize the size of the listen queue
Exceptions:
SocketException 

Definition at line 93 of file ServerSocket.cpp.

References m_impl.

void BLOCXX_NAMESPACE::ServerSocket::close (  ) 

Close the listen socket.

Exceptions:
SocketException 

Definition at line 100 of file ServerSocket.cpp.

References m_impl.

SocketAddress BLOCXX_NAMESPACE::ServerSocket::getLocalAddress (  ) 

Return the address of the local host.

Returns:
an SocketAddress representing the local node

Definition at line 106 of file ServerSocket.cpp.

References m_impl.

SocketHandle_t BLOCXX_NAMESPACE::ServerSocket::getfd (  )  const

Get the file descriptor of the listen socket.

Returns:
a handle to the listen socket

Definition at line 112 of file ServerSocket.cpp.

References m_impl.

Select_t BLOCXX_NAMESPACE::ServerSocket::getSelectObj (  )  const [virtual]

Implements BLOCXX_NAMESPACE::SelectableIFC.

Definition at line 118 of file ServerSocket.cpp.

References m_impl.


Member Data Documentation

Definition at line 137 of file ServerSocket.hpp.

Referenced by accept(), close(), doListen(), getfd(), getLocalAddress(), and getSelectObj().


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

Generated on Wed Feb 25 19:05:11 2009 for blocxx by  doxygen 1.5.6