IMaintainStreamSocketConnections Class Reference
[Stream SocketsConnection managersInterfacesProtected destructors on abstract base classes]

Inheritance diagram for IMaintainStreamSocketConnections:

Inheritance graph
[legend]
Collaboration diagram for IMaintainStreamSocketConnections:

Collaboration graph
[legend]

List of all members.


Detailed Description

An interface used to create and maintain outgoing stream socket connections.

Public Types

enum  { DefaultTCPBufferSize = 0 }
typedef unsigned int TCPBufferSize

Public Member Functions

virtual void MaintainConnections (const IFullAddress &address, const Milliseconds reconnectTimeout)=0
 Sets the connection retry timeout for connections to the supplied address to the supplied value.
virtual void CancelConnectionRetries (const IAddress &address, const bool shutDownExistingConnections=false)=0
 Cancels connection reties attempts to the supplied address for all connections that are maintained by this connection manager.
virtual void CancelAllConnectionRetries ()=0
 Cancels connection reties for all connections that are maintained by this connection manager.
virtual
CSmartStreamSocket 
Connect (const IFullAddress &address, const void *pUserData=0, const TCPBufferSize recvBufferSize=DefaultTCPBufferSize, const TCPBufferSize sendBufferSize=DefaultTCPBufferSize)=0
 Connects, synchronously, to the specified address and returns a smart pointer to the resulting stream socket. Throws exceptions on failure to connect, the resulting stream socket is always connected and valid. Passes the user data pointer through to IStreamSocketConnectionManagerCallback::OnPreOutgoingConnect() before returning. Sets send and recv buffer sizes before connection if values other than 0 are supplied; note that this WILL affect the TCP window size. Calls IStreamSocketConnectionManagerCallback::OnConnectionEstablished(), before returning, if the connection is successful.
virtual
CSmartStreamSocket 
ConnectNoThrow (const IFullAddress &address, const void *pUserData=0, const TCPBufferSize recvBufferSize=DefaultTCPBufferSize, const TCPBufferSize sendBufferSize=DefaultTCPBufferSize)=0 throw ()
 Connects, synchronously, to the specified address and returns a smart pointer to the resulting stream socket. Does not throw exceptions, the smart stream pointer will be null if the connection attempt fails; call CSmartStreamSocket::Get() to determine this. Passes the user data pointer through to IStreamSocketConnectionManagerCallback::OnPreOutgoingConnect() before returning. Sets send and recv buffer sizes before connection if values other than 0 are supplied; note that this WILL affect the TCP window size. Calls IStreamSocketConnectionManagerCallback::OnOutgoingConnectionFailed(), before returning, if the connection fails and IStreamSocketConnectionManagerCallback::OnConnectionEstablished(), before returning, if the connection is successful.
virtual
CSmartStreamSocket 
AsyncConnect (const IFullAddress &address, const void *pUserData=0, const TCPBufferSize recvBufferSize=DefaultTCPBufferSize, const TCPBufferSize sendBufferSize=DefaultTCPBufferSize)=0
 Connects, asynchronously, to the specified address and returns a smart pointer to the resulting stream socket. Throws exceptions on some failures to connect. The smart stream pointer is not connected until the IStreamSocketConnectionManagerCallback::OnConnectionEstablished() has been called and this may be before or after the function returns to the caller. Sets send and recv buffer sizes before connection if values other than 0 are supplied; note that this WILL affect the TCP window size. Passes the user data pointer through to IStreamSocketConnectionManagerCallback::OnPreOutgoingConnect() before returning. Calls IStreamSocketConnectionManagerCallback::OnOutgoingConnectionFailed(), either before or after returning, if the connection fails and IStreamSocketConnectionManagerCallback::OnConnectionEstablished(), either before or after returning, if the connection is successful.
virtual
CSmartStreamSocket 
AsyncConnectNoThrow (const IFullAddress &address, const void *pUserData=0, const TCPBufferSize recvBufferSize=DefaultTCPBufferSize, const TCPBufferSize sendBufferSize=DefaultTCPBufferSize)=0 throw ()
 Connects, asynchronously, to the specified address and returns a smart pointer to the resulting stream socket. Does not throw exceptions, the smart stream pointer will be null if the connection attempt fails; call CSmartStreamSocket::Get() to determine this. Passes the user data pointer through to IStreamSocketConnectionManagerCallback::OnPreOutgoingConnect() before returning. Sets send and recv buffer sizes before connection if values other than 0 are supplied; note that this WILL affect the TCP window size. Calls IStreamSocketConnectionManagerCallback::OnOutgoingConnectionFailed(), either before or after returning, if the connection fails and IStreamSocketConnectionManagerCallback::OnConnectionEstablished(), either before or after returning, if the connection is successful.
virtual
CSmartStreamSocket 
ConnectAsyncIfAvailable (const IFullAddress &address, const void *pUserData=0, const TCPBufferSize recvBufferSize=DefaultTCPBufferSize, const TCPBufferSize sendBufferSize=DefaultTCPBufferSize)=0
 If the platform supports asynchronous connections for this address type then acts as an AsyncConnect() else acts as a ConnectNoThrow().
virtual
CSmartStreamSocket 
ConnectAsyncIfAvailableNoThrow (const IFullAddress &address, const void *pUserData=0, const TCPBufferSize recvBufferSize=DefaultTCPBufferSize, const TCPBufferSize sendBufferSize=DefaultTCPBufferSize)=0 throw ()
 If the platform supports asynchronous connections for this address type then acts as an AsyncConnectNoThrow() else acts as a ConnectNoThrow().
virtual bool AsyncConnectAvailable (const IAddressType &addressType) const =0
 Returns true if the platform supports asynchronous connections for this address type.
virtual void AbortAllConnections ()=0
 Aborts all connections that are managed by this connection manager.

Protected Member Functions

 ~IMaintainStreamSocketConnections ()
 We never delete instances of this interface; you must manage the lifetime of the class that implements it.

Member Typedef Documentation

typedef unsigned int TCPBufferSize [inherited]


Member Enumeration Documentation

anonymous enum [inherited]

Enumerator:
DefaultTCPBufferSize 


Constructor & Destructor Documentation

~IMaintainStreamSocketConnections (  )  [inline, protected]

We never delete instances of this interface; you must manage the lifetime of the class that implements it.


Member Function Documentation

virtual void MaintainConnections ( const IFullAddress address,
const Milliseconds  reconnectTimeout 
) [pure virtual]

Sets the connection retry timeout for connections to the supplied address to the supplied value.

Implemented in CConnectionMaintainingStreamSocketConnectionFilter.

virtual void CancelConnectionRetries ( const IAddress address,
const bool  shutDownExistingConnections = false 
) [pure virtual]

Cancels connection reties attempts to the supplied address for all connections that are maintained by this connection manager.

Implemented in CConnectionMaintainingStreamSocketConnectionFilter.

virtual void CancelAllConnectionRetries (  )  [pure virtual]

Cancels connection reties for all connections that are maintained by this connection manager.

Implemented in CConnectionMaintainingStreamSocketConnectionFilter.

virtual CSmartStreamSocket Connect ( const IFullAddress address,
const void *  pUserData = 0,
const TCPBufferSize  recvBufferSize = DefaultTCPBufferSize,
const TCPBufferSize  sendBufferSize = DefaultTCPBufferSize 
) [pure virtual, inherited]

Connects, synchronously, to the specified address and returns a smart pointer to the resulting stream socket. Throws exceptions on failure to connect, the resulting stream socket is always connected and valid. Passes the user data pointer through to IStreamSocketConnectionManagerCallback::OnPreOutgoingConnect() before returning. Sets send and recv buffer sizes before connection if values other than 0 are supplied; note that this WILL affect the TCP window size. Calls IStreamSocketConnectionManagerCallback::OnConnectionEstablished(), before returning, if the connection is successful.

virtual CSmartStreamSocket ConnectNoThrow ( const IFullAddress address,
const void *  pUserData = 0,
const TCPBufferSize  recvBufferSize = DefaultTCPBufferSize,
const TCPBufferSize  sendBufferSize = DefaultTCPBufferSize 
) throw () [pure virtual, inherited]

Connects, synchronously, to the specified address and returns a smart pointer to the resulting stream socket. Does not throw exceptions, the smart stream pointer will be null if the connection attempt fails; call CSmartStreamSocket::Get() to determine this. Passes the user data pointer through to IStreamSocketConnectionManagerCallback::OnPreOutgoingConnect() before returning. Sets send and recv buffer sizes before connection if values other than 0 are supplied; note that this WILL affect the TCP window size. Calls IStreamSocketConnectionManagerCallback::OnOutgoingConnectionFailed(), before returning, if the connection fails and IStreamSocketConnectionManagerCallback::OnConnectionEstablished(), before returning, if the connection is successful.

virtual CSmartStreamSocket AsyncConnect ( const IFullAddress address,
const void *  pUserData = 0,
const TCPBufferSize  recvBufferSize = DefaultTCPBufferSize,
const TCPBufferSize  sendBufferSize = DefaultTCPBufferSize 
) [pure virtual, inherited]

Connects, asynchronously, to the specified address and returns a smart pointer to the resulting stream socket. Throws exceptions on some failures to connect. The smart stream pointer is not connected until the IStreamSocketConnectionManagerCallback::OnConnectionEstablished() has been called and this may be before or after the function returns to the caller. Sets send and recv buffer sizes before connection if values other than 0 are supplied; note that this WILL affect the TCP window size. Passes the user data pointer through to IStreamSocketConnectionManagerCallback::OnPreOutgoingConnect() before returning. Calls IStreamSocketConnectionManagerCallback::OnOutgoingConnectionFailed(), either before or after returning, if the connection fails and IStreamSocketConnectionManagerCallback::OnConnectionEstablished(), either before or after returning, if the connection is successful.

virtual CSmartStreamSocket AsyncConnectNoThrow ( const IFullAddress address,
const void *  pUserData = 0,
const TCPBufferSize  recvBufferSize = DefaultTCPBufferSize,
const TCPBufferSize  sendBufferSize = DefaultTCPBufferSize 
) throw () [pure virtual, inherited]

Connects, asynchronously, to the specified address and returns a smart pointer to the resulting stream socket. Does not throw exceptions, the smart stream pointer will be null if the connection attempt fails; call CSmartStreamSocket::Get() to determine this. Passes the user data pointer through to IStreamSocketConnectionManagerCallback::OnPreOutgoingConnect() before returning. Sets send and recv buffer sizes before connection if values other than 0 are supplied; note that this WILL affect the TCP window size. Calls IStreamSocketConnectionManagerCallback::OnOutgoingConnectionFailed(), either before or after returning, if the connection fails and IStreamSocketConnectionManagerCallback::OnConnectionEstablished(), either before or after returning, if the connection is successful.

virtual CSmartStreamSocket ConnectAsyncIfAvailable ( const IFullAddress address,
const void *  pUserData = 0,
const TCPBufferSize  recvBufferSize = DefaultTCPBufferSize,
const TCPBufferSize  sendBufferSize = DefaultTCPBufferSize 
) [pure virtual, inherited]

If the platform supports asynchronous connections for this address type then acts as an AsyncConnect() else acts as a ConnectNoThrow().

virtual CSmartStreamSocket ConnectAsyncIfAvailableNoThrow ( const IFullAddress address,
const void *  pUserData = 0,
const TCPBufferSize  recvBufferSize = DefaultTCPBufferSize,
const TCPBufferSize  sendBufferSize = DefaultTCPBufferSize 
) throw () [pure virtual, inherited]

If the platform supports asynchronous connections for this address type then acts as an AsyncConnectNoThrow() else acts as a ConnectNoThrow().

virtual bool AsyncConnectAvailable ( const IAddressType addressType  )  const [pure virtual, inherited]

Returns true if the platform supports asynchronous connections for this address type.

Implemented in CConnectionMaintainingStreamSocketConnectionFilter, and CStreamSocketConnectionManager.

virtual void AbortAllConnections (  )  [pure virtual, inherited]

Aborts all connections that are managed by this connection manager.

Implemented in CConnectionMaintainingStreamSocketConnectionFilter, and CStreamSocketConnectionManager.


Generated on Mon Sep 7 14:09:31 2009 for JetByte Socket Tools - v6.1 by  doxygen 1.5.3