# ``twisted`.`internet`.`iocpreactor`.`tcp`.`Client``

class documentation

`class Client(_BaseBaseClient, _BaseTCPClient, Connection): (source)`

View In Hierarchy

Method | `__init__` | Undocumented
Method | `cbConnect` | Undocumented
Method | `createInternetSocket` | Create a socket registered with the IOCP reactor.
Method | `doConnect` | Undocumented
Instance Variable | `connected` | Undocumented
Instance Variable | `logstr` | Undocumented
Instance Variable | `protocol` | Undocumented
Instance Variable | `reactor` | Undocumented
Method | `_collectSocketDetails` | Clean up potentially circular references to the socket and to its `getFileHandle` method.
Method | `_stopReadingAndWriting` | Remove the active handle from the reactor.
Instance Variable | `_tlsClientDefault` | Always `True`, indicating that this is a client connection, and by default when TLS is negotiated this class will act as a TLS client.

Inherited from `_BaseBaseClient`:

Method | `connectionLost` | No summary
Method | `failIfNotConnected` | Generic method called when the attempts to connect failed. It basically cleans everything it can: call connectionFailed, stop read and write, delete socket related members.
Method | `resolveAddress` | No summary
Method | `stopConnecting` | If a connection attempt is still outstanding (i.e. no connection is yet established), immediately stop attempting to connect.
Instance Variable | `addressFamily` | The address family constant (`socket.AF_INET`, `socket.AF_INET6`, `socket.AF_UNIX`) of the underlying socket of this client connection.
Instance Variable | `realAddress` | Undocumented
Instance Variable | `socketType` | The socket type constant (`socket.SOCK_STREAM` or `socket.SOCK_DGRAM`) of the underlying socket.
Method | `_finishInit` | Called by subclasses to continue to the stage of initialization where the socket connect attempt is made.
Method | `_setRealAddress` | Set the resolved address of this `_BaseBaseClient` and initiate the connection attempt.
Class Variable | `_commonConnection` | Subclasses must provide this attribute, which indicates the `Connection`-alike class to invoke `__init__` and `connectionLost` on.
Instance Variable | `_closeSocket` | Subclasses must implement in order to close the socket in response to a terminated connection attempt.
Instance Variable | `_requiresResolution` | A flag indicating whether the address of this client will require name resolution. `True` if the hostname of said address indicates a name that must be resolved by hostname lookup, `False` if it indicates an IP address literal.

Inherited from `_BaseTCPClient`:

Method | `__repr__` | Undocumented
Method | `getHost` | Returns an `IPv4Address` or `IPv6Address`.
Method | `getPeer` | Returns an `IPv4Address` or `IPv6Address`.
Instance Variable | `addr` | The address that this socket will be connecting to.
Instance Variable | `addressFamily` | Undocumented
Instance Variable | `connector` | The `Connector` which is driving this `_BaseTCPClient`'s connection attempt.
Instance Variable | `_addressType` | The Twisted _IPAddress implementation for this client
Instance Variable | `_requiresResolution` | Undocumented

Inherited from `Connection`:

Method | `connectionLost` | The connection was lost.
Method | `dataReceived` |
Method | `getHandle` | Return a system- and reactor-specific handle.
Method | `getHost` | Returns `IPv4Address` or `IPv6Address`.
Method | `getPeer` | Returns `IPv4Address` or `IPv6Address`.
Method | `getTcpKeepAlive` | Return if `SO_KEEPALIVE` is enabled.
Method | `getTcpNoDelay` | Return if `TCP_NODELAY` is enabled.
Method | `logPrefix` | Return the prefix to log with when I own the logging thread.
Method | `loseConnection` | Close the underlying handle or, if TLS has been started, first shut it down.
Method | `readConnectionLost` | Indicates read connection was lost.
Method | `readFromHandle` | Read into the given buffers from this handle.
Method | `registerProducer` | Register a producer.
Method | `setTcpKeepAlive` | Enable/disable `SO_KEEPALIVE`.
Method | `setTcpNoDelay` | Enable/disable `TCP_NODELAY`.
Method | `startTLS` |
Method | `unregisterProducer` | Unregister a producer.
Method | `write` | Write some data, either directly to the underlying handle or, if TLS has been started, to the `TLSMemoryBIOProtocol` for it to encrypt and send.
Method | `writeSequence` | Write some data, either directly to the underlying handle or, if TLS has been started, to the `TLSMemoryBIOProtocol` for it to encrypt and send.
Method | `writeToHandle` | Send `buff` to current file handle using `_iocp.send`. The buffer sent is limited to a size of `self.SEND_LIMIT`.
Constant | `TLS` | `False` to indicate the connection is in normal TCP mode, `True` to indicate that TLS has been started and that operations must be routed through the `TLSMemoryBIOProtocol` instance.
Instance Variable | `socket` | Undocumented
Method | `_closeWriteConnection` | Undocumented

Inherited from `FileHandle` (via `Connection`):

Method | `doRead` | Undocumented
Method | `doWrite` | Undocumented
Method | `getFileHandle` | Undocumented
Method | `loseWriteConnection` | Undocumented
Method | `pauseProducing` | Pause producing data.
Method | `resumeProducing` | Resume producing data.
Method | `startReading` | Undocumented
Method | `startWriting` | No summary
Method | `stopConsuming` | Stop consuming data.
Method | `stopProducing` | Stop producing data.
Method | `stopReading` | Undocumented
Method | `stopWriting` | Undocumented
Method | `writeConnectionLost` | Indicates write connection was lost.
Constant | `SEND_LIMIT` | Undocumented
Class Variable | `dynamicReadBuffers` | Undocumented
Class Variable | `maxReadBuffers` | Undocumented
Class Variable | `readBufferSize` | Undocumented
Class Variable | `writeBufferSize` | Undocumented
Instance Variable | `dataBuffer` | Undocumented
Instance Variable | `disconnected` | Undocumented
Instance Variable | `disconnecting` | Undocumented
Instance Variable | `offset` | Undocumented
Instance Variable | `producer` | Undocumented
Instance Variable | `producerPaused` | Undocumented
Instance Variable | `reading` | Undocumented
Instance Variable | `writing` | Undocumented
Method | `_cbRead` | Undocumented
Method | `_cbWrite` | Undocumented
Method | `_dispatchData` | Dispatch previously read data. Return True if self.reading and we don't have any more data
Method | `_handleRead` | Returns False if we should stop reading for now
Method | `_handleWrite` | Returns false if we should stop writing for now
Method | `_resumeReading` | Undocumented
Method | `_resumeWriting` | Undocumented
Instance Variable | `_readBuffers` | Undocumented
Instance Variable | `_readNextBuffer` | Undocumented
Instance Variable | `_readScheduled` | Undocumented
Instance Variable | `_readScheduledInOS` | Undocumented
Instance Variable | `_readSize` | Undocumented
Instance Variable | `_tempDataBuffer` | Undocumented
Instance Variable | `_tempDataLen` | Undocumented
Instance Variable | `_writeDisconnected` | Undocumented
Instance Variable | `_writeDisconnecting` | Undocumented
Instance Variable | `_writeScheduled` | Undocumented

Inherited from `_ConsumerMixin` (via `Connection`, `FileHandle`):

Instance Variable | `streamingProducer` | `bool` or `int`

Inherited from `_LogOwner` (via `Connection`, `FileHandle`):

Method | `_getLogPrefix` | Determine the log prefix to use for messages related to `applicationObject`, which may or may not be an `interfaces.ILoggingContext` provider.

Inherited from `_SocketCloser` (via `Connection`):

Method | `_closeSocket` | Undocumented
Instance Variable | `_shouldShutdown` | Set to `True` if `shutdown` should be called before calling `close` on the underlying socket.

Inherited from `_AbortingMixin` (via `Connection`):

Method | `abortConnection` | Aborts the connection immediately, dropping any buffered data.
Instance Variable | `doRead` | Undocumented
Instance Variable | `doWrite` | Undocumented
Instance Variable | `_aborting` | Set to `True` when `abortConnection` is called.

def __init__(self, host, port, bindAddress, connector, reactor): (source)
overrides `twisted.internet.tcp._BaseTCPClient.__init__`

Undocumented

def cbConnect(self, rc, data, evt): (source)

Undocumented

def createInternetSocket(self): (source)
overrides `twisted.internet.tcp._BaseTCPClient.createInternetSocket`
Create a socket registered with the IOCP reactor.

See Also
`_BaseTCPClient`

def doConnect(self): (source)

Undocumented

connected: `bool` = (source)
overrides `twisted.internet.iocpreactor.abstract.FileHandle.connected`

Undocumented

logstr = (source)
overrides `twisted.internet.iocpreactor.abstract.FileHandle.logstr`

Undocumented

protocol = (source)
overrides `twisted.internet.iocpreactor.tcp.Connection.protocol`

Undocumented

reactor = (source)
overrides `twisted.internet.tcp._BaseBaseClient.reactor`

Undocumented

def _collectSocketDetails(self): (source)
overrides `twisted.internet.tcp._BaseBaseClient._collectSocketDetails`
Clean up potentially circular references to the socket and to its `getFileHandle` method.

See Also
`_BaseBaseClient`

def _stopReadingAndWriting(self): (source)
overrides `twisted.internet.tcp._BaseBaseClient._stopReadingAndWriting`
Remove the active handle from the reactor.

See Also
`_BaseBaseClient`

_tlsClientDefault: `bool` = (source)
Always `True`, indicating that this is a client connection, and by default when TLS is negotiated this class will act as a TLS client.