Go to the latest version of this document.
search in docstrings

Search bar offers the following options:

- Term presence. The below example searches for documents that must contain “foo”, might contain “bar” and must not contain “baz”: `+foo bar -baz`
- Wildcards. The below example searches for documents with words beginning with “foo”: `foo*`
- Search in specific fields. The following search matches all objects in "twisted.mail" that matches “search”: `+qname:twisted.mail.* +search`

  Possible fields: 'name', 'qname' (fully qualified name), 'docstring', and 'kind'. Last two fields are only applicable if "search in docstrings" is enabled.

- Fuzzy matches. The following search matches all documents that have a word within 1 edit distance of “foo”: `foo~1`

Results provided by Lunr.js

# ``twisted`.`internet`.`iocpreactor`.`tcp`.`Connection``

class documentation

`class Connection(abstract.FileHandle, _SocketCloser, _AbortingMixin): (source)`

Known subclasses: `twisted.internet.iocpreactor.tcp.Client`, `twisted.internet.iocpreactor.tcp.Server`

Constructor: `Connection(sock, proto, reactor)`

Implements interfaces: `twisted.internet.interfaces.ISystemHandle`, `twisted.internet.interfaces.ITCPTransport`, `twisted.internet.interfaces.ITLSTransport`, `twisted.internet.iocpreactor.interfaces.IReadWriteHandle`

View In Hierarchy

Method | `__init__` | Undocumented
Method | `connectionLost` | The connection was lost.
Method | `dataReceived` | No summary
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` | No summary
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 | `protocol` | Undocumented
Instance Variable | `socket` | Undocumented
Method | `_closeWriteConnection` | Undocumented

Inherited from `FileHandle`:

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` | Override in a subclass to cause the reactor to monitor this selectable for write events. This will be called once in `unregisterProducer` if `loseConnection` has previously been called, so that the connection can actually close.
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 | `disconnecting` | Undocumented
Class Variable | `dynamicReadBuffers` | Undocumented
Class Variable | `logstr` | Undocumented
Class Variable | `maxReadBuffers` | Undocumented
Class Variable | `readBufferSize` | Undocumented
Class Variable | `writeBufferSize` | Undocumented
Instance Variable | `connected` | Undocumented
Instance Variable | `dataBuffer` | Undocumented
Instance Variable | `disconnected` | Undocumented
Instance Variable | `offset` | Undocumented
Instance Variable | `producer` | Undocumented
Instance Variable | `producerPaused` | Undocumented
Instance Variable | `reactor` | 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
Class Variable | `_writeDisconnected` | 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 | `_writeDisconnecting` | Undocumented
Instance Variable | `_writeScheduled` | Undocumented

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

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

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

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 `FileHandle`, `_ConsumerMixin`, `_LogOwner`):

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 `FileHandle`, `_ConsumerMixin`, `_LogOwner`, `_SocketCloser`):

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

def __init__(self, sock, proto, reactor=None): (source)
overrides `twisted.internet.iocpreactor.abstract.FileHandle.__init__`
overridden in `twisted.internet.iocpreactor.tcp.Client`, `twisted.internet.iocpreactor.tcp.Server`

Undocumented

def connectionLost(self, reason): (source)
overrides `twisted.internet.iocpreactor.abstract.FileHandle.connectionLost`

The connection was lost.

This is called when the connection on a selectable object has been lost. It will be called whether the connection was closed explicitly, an exception occurred in an event handler, or the other end of the connection closed it first.

Clean up state here, but make sure to call back up to FileDescriptor.

def dataReceived(self, rbuffer): (source)
overrides `twisted.internet.iocpreactor.abstract.FileHandle.dataReceived`

Parameters
rbuffer:`bytes` or `bytearray` | Data received.

def getHandle(self): (source)
from `twisted.internet.interfaces.ISystemHandle`

Return a system- and reactor-specific handle.

This might be a socket.socket() object, or some other type of object, depending on which reactor is being used. Use and manipulate at your own risk.

This might be used in cases where you want to set specific options not exposed by the Twisted APIs.

def getHost(self): (source)
from `twisted.internet.interfaces.ITCPTransport`
overrides `twisted.internet.iocpreactor.abstract.FileHandle.getHost`
overridden in `twisted.internet.iocpreactor.tcp.Server`

Returns `IPv4Address` or `IPv6Address`.

def getPeer(self): (source)
from `twisted.internet.interfaces.ITCPTransport`
overrides `twisted.internet.iocpreactor.abstract.FileHandle.getPeer`
overridden in `twisted.internet.iocpreactor.tcp.Server`

Returns `IPv4Address` or `IPv6Address`.

def getTcpKeepAlive(self): (source)
from `twisted.internet.interfaces.ITCPTransport`

Return if `SO_KEEPALIVE` is enabled.

def getTcpNoDelay(self): (source)
from `twisted.internet.interfaces.ITCPTransport`

Return if `TCP_NODELAY` is enabled.

def logPrefix(self): (source)
from `twisted.internet.interfaces.ILoggingContext`
overrides `twisted.internet.abstract._LogOwner.logPrefix`

Return the prefix to log with when I own the logging thread.

def loseConnection(self, reason=None): (source)
from `twisted.internet.interfaces.ITransport`
overrides `twisted.internet.iocpreactor.abstract.FileHandle.loseConnection`

Close the underlying handle or, if TLS has been started, first shut it down.

See Also
`twisted.internet.interfaces.ITransport.loseConnection`

def readConnectionLost(self, reason): (source)
from `twisted.internet.interfaces.IHalfCloseableDescriptor`
overrides `twisted.internet.iocpreactor.abstract.FileHandle.readConnectionLost`

Indicates read connection was lost.

def readFromHandle(self, bufflist, evt): (source)
from `twisted.internet.iocpreactor.interfaces.IReadHandle`
overrides `twisted.internet.iocpreactor.abstract.FileHandle.readFromHandle`

Read into the given buffers from this handle.

Parameters
bufflist:list of objects implementing the read/write buffer protocol | the buffers to read into
evt | an IOCP Event object
Returns
tuple (return code, number of bytes read)

def registerProducer(self, producer, streaming): (source)
from `twisted.internet.interfaces.IConsumer`
overrides `twisted.internet.abstract._ConsumerMixin.registerProducer`

Register a producer.

If TLS is enabled, the TLS connection handles this.

def setTcpKeepAlive(self, enabled): (source)
from `twisted.internet.interfaces.ITCPTransport`

Enable/disable `SO_KEEPALIVE`.

Enabling `SO_KEEPALIVE` sends packets periodically when the connection is otherwise idle, usually once every two hours. They are intended to allow detection of lost peers in a non-infinite amount of time.

def setTcpNoDelay(self, enabled): (source)
from `twisted.internet.interfaces.ITCPTransport`

Enable/disable `TCP_NODELAY`.

Enabling `TCP_NODELAY` turns off Nagle's algorithm. Small packets are sent sooner, possibly at the expense of overall throughput.

def startTLS(self, contextFactory, normal=True): (source)
from `twisted.internet.interfaces.ITLSTransport`

See Also
`ITLSTransport.startTLS`

def unregisterProducer(self): (source)
from `twisted.internet.interfaces.IConsumer`
overrides `twisted.internet.abstract._ConsumerMixin.unregisterProducer`

Unregister a producer.

If TLS is enabled, the TLS connection handles this.

def write(self, data): (source)
from `twisted.internet.interfaces.ITransport`
overrides `twisted.internet.iocpreactor.abstract.FileHandle.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.

See Also
`twisted.internet.interfaces.ITransport.write`

def writeSequence(self, iovec): (source)
from `twisted.internet.interfaces.ITransport`
overrides `twisted.internet.iocpreactor.abstract.FileHandle.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.

See Also
`twisted.internet.interfaces.ITransport.writeSequence`

def writeToHandle(self, buff, evt): (source)
from `twisted.internet.iocpreactor.interfaces.IWriteHandle`
overrides `twisted.internet.iocpreactor.abstract.FileHandle.writeToHandle`

Send `buff` to current file handle using `_iocp.send`. The buffer sent is limited to a size of `self.SEND_LIMIT`.

TLS: `bool` = (source)

`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.

Value

    False

protocol = (source)

Undocumented

socket = (source)

Undocumented

def _closeWriteConnection(self): (source)
overrides `twisted.internet.iocpreactor.abstract.FileHandle._closeWriteConnection`

Undocumented