

Public Member Functions | |
| CConnectionMaintainingStreamSocketConnectionFilter (IAcceptStreamSocketConnectionFilters &filterManager, ICreateStreamSocketConnections &connectionCreator, JetByteTools::Core::IQueueTimers &timerQueue, JetByteTools::Milliseconds reconnectAfter) | |
| Installs the connection filter on all connections made by the supplied connection manager. | |
| CConnectionMaintainingStreamSocketConnectionFilter (const CConnectionMaintainingStreamSocketConnectionFilter &rhs) | |
| ~CConnectionMaintainingStreamSocketConnectionFilter () | |
| CConnectionMaintainingStreamSocketConnectionFilter & | operator= (const CConnectionMaintainingStreamSocketConnectionFilter &rhs) |
| void | MaintainConnections (const IFullAddress &address, Milliseconds reconnectTimeout, SocketBufferSize recvBufferSize=DefaultSocketBufferSize, SocketBufferSize sendBufferSize=DefaultSocketBufferSize) override |
| Sets the connection retry timeout for connections to the supplied address to the supplied value. | |
| bool | TryCancelConnectionRetries (const IAddress &address, bool shutDownExistingConnections=false) override |
| Attempts to cancel connection reties attempts to the supplied address. Returns false if the connection wasn't currently being maintained. | |
| void | CancelConnectionRetries (const IAddress &address, bool shutDownExistingConnections=false) override |
| Cancels connection reties attempts to the supplied address. | |
| void | CancelAllConnectionRetries () override |
| Cancels connection reties for all connections that are maintained by this connection manager. | |
| CSmartStreamSocket | Connect (const IFullAddress &address, const void *pUserData=nullptr, SocketBufferSize recvBufferSize=DefaultSocketBufferSize, SocketBufferSize sendBufferSize=DefaultSocketBufferSize) override |
| 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. | |
| CSmartStreamSocket | ConnectNoThrow (const IFullAddress &address, const void *pUserData=nullptr, SocketBufferSize recvBufferSize=DefaultSocketBufferSize, SocketBufferSize sendBufferSize=DefaultSocketBufferSize) override |
| 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. | |
| CSmartStreamSocket | AsyncConnect (const IFullAddress &address, const void *pUserData=nullptr, SocketBufferSize recvBufferSize=DefaultSocketBufferSize, SocketBufferSize sendBufferSize=DefaultSocketBufferSize) override |
| 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. | |
| CSmartStreamSocket | AsyncConnectNoThrow (const IFullAddress &address, const void *pUserData=nullptr, SocketBufferSize recvBufferSize=DefaultSocketBufferSize, SocketBufferSize sendBufferSize=DefaultSocketBufferSize) override |
| 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. | |
| CSmartStreamSocket | ConnectAsyncIfAvailable (const IFullAddress &address, const void *pUserData=nullptr, SocketBufferSize recvBufferSize=DefaultSocketBufferSize, SocketBufferSize sendBufferSize=DefaultSocketBufferSize) override |
| If the platform supports asynchronous connections for this address type then acts as an AsyncConnect() else acts as a ConnectNoThrow(). | |
| CSmartStreamSocket | ConnectAsyncIfAvailableNoThrow (const IFullAddress &address, const void *pUserData=nullptr, SocketBufferSize recvBufferSize=DefaultSocketBufferSize, SocketBufferSize sendBufferSize=DefaultSocketBufferSize) override |
| If the platform supports asynchronous connections for this address type then acts as an AsyncConnectNoThrow() else acts as a ConnectNoThrow(). | |
| bool | AsyncConnectAvailable (const IAddressType &addressType) const override |
| Returns true if the platform supports asynchronous connections for this address type. | |
| DWORD | AbortAllConnections () override |
| Aborts all connections that are managed by this connection manager. | |
| CConnectionMaintainingStreamSocketConnectionFilter | ( | IAcceptStreamSocketConnectionFilters & | filterManager, | |
| ICreateStreamSocketConnections & | connectionCreator, | |||
| JetByteTools::Core::IQueueTimers & | timerQueue, | |||
| JetByteTools::Milliseconds | reconnectAfter | |||
| ) |
Installs the connection filter on all connections made by the supplied connection manager.
| CConnectionMaintainingStreamSocketConnectionFilter | ( | const CConnectionMaintainingStreamSocketConnectionFilter & | rhs | ) |
| CConnectionMaintainingStreamSocketConnectionFilter& operator= | ( | const CConnectionMaintainingStreamSocketConnectionFilter & | rhs | ) |
| void MaintainConnections | ( | const IFullAddress & | address, | |
| Milliseconds | reconnectTimeout, | |||
| SocketBufferSize | recvBufferSize = DefaultSocketBufferSize, |
|||
| SocketBufferSize | sendBufferSize = DefaultSocketBufferSize | |||
| ) | [override, virtual] |
Sets the connection retry timeout for connections to the supplied address to the supplied value.
Implements IMaintainStreamSocketConnections.
| bool TryCancelConnectionRetries | ( | const IAddress & | address, | |
| bool | shutDownExistingConnections = false | |||
| ) | [override, virtual] |
Attempts to cancel connection reties attempts to the supplied address. Returns false if the connection wasn't currently being maintained.
Implements IMaintainStreamSocketConnections.
| void CancelConnectionRetries | ( | const IAddress & | address, | |
| bool | shutDownExistingConnections = false | |||
| ) | [override, virtual] |
Cancels connection reties attempts to the supplied address.
Implements IMaintainStreamSocketConnections.
| void CancelAllConnectionRetries | ( | ) | [override, virtual] |
Cancels connection reties for all connections that are maintained by this connection manager.
Implements IMaintainStreamSocketConnections.
| CSmartStreamSocket Connect | ( | const IFullAddress & | address, | |
| const void * | pUserData = nullptr, |
|||
| SocketBufferSize | recvBufferSize = DefaultSocketBufferSize, |
|||
| SocketBufferSize | sendBufferSize = DefaultSocketBufferSize | |||
| ) | [override, virtual] |
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.
Implements ICreateStreamSocketConnections.
| CSmartStreamSocket ConnectNoThrow | ( | const IFullAddress & | address, | |
| const void * | pUserData = nullptr, |
|||
| SocketBufferSize | recvBufferSize = DefaultSocketBufferSize, |
|||
| SocketBufferSize | sendBufferSize = DefaultSocketBufferSize | |||
| ) | [override, virtual] |
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.
Implements ICreateStreamSocketConnections.
| CSmartStreamSocket AsyncConnect | ( | const IFullAddress & | address, | |
| const void * | pUserData = nullptr, |
|||
| SocketBufferSize | recvBufferSize = DefaultSocketBufferSize, |
|||
| SocketBufferSize | sendBufferSize = DefaultSocketBufferSize | |||
| ) | [override, virtual] |
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.
Implements ICreateStreamSocketConnections.
| CSmartStreamSocket AsyncConnectNoThrow | ( | const IFullAddress & | address, | |
| const void * | pUserData = nullptr, |
|||
| SocketBufferSize | recvBufferSize = DefaultSocketBufferSize, |
|||
| SocketBufferSize | sendBufferSize = DefaultSocketBufferSize | |||
| ) | [override, virtual] |
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.
Implements ICreateStreamSocketConnections.
| CSmartStreamSocket ConnectAsyncIfAvailable | ( | const IFullAddress & | address, | |
| const void * | pUserData = nullptr, |
|||
| SocketBufferSize | recvBufferSize = DefaultSocketBufferSize, |
|||
| SocketBufferSize | sendBufferSize = DefaultSocketBufferSize | |||
| ) | [override, virtual] |
If the platform supports asynchronous connections for this address type then acts as an AsyncConnect() else acts as a ConnectNoThrow().
Implements ICreateStreamSocketConnections.
| CSmartStreamSocket ConnectAsyncIfAvailableNoThrow | ( | const IFullAddress & | address, | |
| const void * | pUserData = nullptr, |
|||
| SocketBufferSize | recvBufferSize = DefaultSocketBufferSize, |
|||
| SocketBufferSize | sendBufferSize = DefaultSocketBufferSize | |||
| ) | [override, virtual] |
If the platform supports asynchronous connections for this address type then acts as an AsyncConnectNoThrow() else acts as a ConnectNoThrow().
Implements ICreateStreamSocketConnections.
| bool AsyncConnectAvailable | ( | const IAddressType & | addressType | ) | const [override, virtual] |
Returns true if the platform supports asynchronous connections for this address type.
Implements ICreateStreamSocketConnections.
| DWORD AbortAllConnections | ( | ) | [override, virtual] |
Aborts all connections that are managed by this connection manager.
Implements ICreateStreamSocketConnections.
1.5.3