Known subclasses: twisted.internet.tcp.Client, twisted.internet.unix.Client

A base class for client TCP (and similar) sockets.

Instance Variable realAddress The address object that will be used for socket.connect; this address is an address tuple (the number of elements dependent upon the address family) which does not contain any names which need to be resolved. (type: tuple)
Method createInternetSocket (internal) Create a non-blocking socket using self.addressFamily, self.socketType.
Method doConnect Initiate the outgoing connection attempt.
Instance Variable _base Connection, which is the base class of this class which has all of the useful file descriptor methods. This is used by _TLSServerMixin to call the right methods to directly manipulate the transport, as is necessary for writing TLS-encrypted bytes (whereas those methods on Server will go through another layer of TLS if it has been enabled).
Method _stopReadingAndWriting Implement the POSIX-ish (i.e. twisted.internet.interfaces.IReactorFDSet) method of detaching this socket from the reactor for _BaseBaseClient.
Method _collectSocketDetails Clean up references to the socket and its file descriptor.
Method _connectDone This is a hook for when a connection attempt has succeeded.

Inherited from _BaseBaseClient:

Instance Variable addressFamily The address family constant (socket.AF_INET, socket.AF_INET6, socket.AF_UNIX) of the underlying socket of this client connection. (type: int)
Instance Variable socketType The socket type constant (socket.SOCK_STREAM or socket.SOCK_DGRAM) of the underlying socket. (type: int)
Instance Variable reactor The class pointed to by _commonConnection should set this attribute in its constructor. (type: twisted.internet.interfaces.IReactorTime, twisted.internet.interfaces.IReactorCore, twisted.internet.interfaces.IReactorFDSet)
Method resolveAddress 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 stopConnecting If a connection attempt is still outstanding (i.e. no connection is yet established), immediately stop attempting to connect.
Method connectionLost No summary
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. (type: bool)
Class Variable _commonConnection Subclasses must provide this attribute, which indicates the Connection-alike class to invoke __init__ and connectionLost on. (type: type)
Instance Variable _closeSocket Subclasses must implement in order to close the socket in response to a terminated connection attempt. (type: 1-argument callable; see _SocketCloser._closeSocket)
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.

Inherited from Connection:

Instance Variable logstr prefix used when logging events related to this connection. (type: str)
Method __init__
Method getHandle Return the socket for this connection.
Method doRead Calls self.protocol.dataReceived with all available data.
Method writeSomeData Write as much as possible of the given data to this TCP connection.
Method readConnectionLost Indicates read connection was lost.
Method connectionLost See abstract.FileDescriptor.connectionLost().
Method logPrefix Return the prefix to log with when I own the logging thread.
Method getTcpNoDelay Return if TCP_NODELAY is enabled.
Method setTcpNoDelay Enable/disable TCP_NODELAY.
Method getTcpKeepAlive Return if SO_KEEPALIVE is enabled.
Method setTcpKeepAlive Enable/disable SO_KEEPALIVE.
Method _dataReceived Undocumented
Method _closeWriteConnection Undocumented

Inherited from FileDescriptor (via Connection):

Method doWrite Called when data can be written.
Method writeConnectionLost Indicates write connection was lost.
Method write Reliably write some data.
Method writeSequence Reliably write a sequence of data.
Method loseConnection Close the connection at the next available opportunity.
Method loseWriteConnection Undocumented
Method stopReading Stop waiting for read availability.
Method stopWriting Stop waiting for write availability.
Method startReading Start waiting for read availability.
Method startWriting Start waiting for write availability.
Method stopConsuming Stop consuming data.
Method resumeProducing Resume producing data.
Method pauseProducing Pause producing data.
Method stopProducing Stop producing data.
Method fileno File Descriptor number for select().
Method _postLoseConnection Called after a loseConnection(), when all data has been written.
Method _isSendBufferFull Determine whether the user-space send buffer for this transport is full or not.
Method _maybePauseProducer Possibly pause a producer, if there is one and the send buffer is full.

Inherited from _ConsumerMixin (via Connection, FileDescriptor):

Instance Variable producer None if no producer is registered, otherwise the registered producer.
Instance Variable producerPaused A flag indicating whether the producer is currently paused. (type: bool)
Instance Variable streamingProducer 0 A flag indicating whether the producer was registered as a streaming (ie push) producer or not (ie a pull producer). This will determine whether the consumer may ever need to pause and resume it, or if it can merely call resumeProducing on it when buffer space is available.
Instance Variable streamingProducer bool or int
Method registerProducer Register to receive data from a producer.
Method unregisterProducer Stop consuming data from a producer, without disconnecting.

Inherited from _LogOwner (via Connection, FileDescriptor):

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):

Instance Variable _shouldShutdown Set to True if shutdown should be called before calling close on the underlying socket. (type: bool)
Method _closeSocket Undocumented

Inherited from _AbortingMixin (via Connection):

Method abortConnection Aborts the connection immediately, dropping any buffered data.
Instance Variable _aborting Set to True when abortConnection is called. (type: bool)
realAddress =
The address object that will be used for socket.connect; this address is an address tuple (the number of elements dependent upon the address family) which does not contain any names which need to be resolved. (type: tuple)
_base =
Connection, which is the base class of this class which has all of the useful file descriptor methods. This is used by _TLSServerMixin to call the right methods to directly manipulate the transport, as is necessary for writing TLS-encrypted bytes (whereas those methods on Server will go through another layer of TLS if it has been enabled).
def _stopReadingAndWriting(self): (source)

Implement the POSIX-ish (i.e. twisted.internet.interfaces.IReactorFDSet) method of detaching this socket from the reactor for _BaseBaseClient.

def _collectSocketDetails(self): (source)

Clean up references to the socket and its file descriptor.

See Also_BaseBaseClient
def createInternetSocket(self): (source)

(internal) Create a non-blocking socket using self.addressFamily, self.socketType.

def doConnect(self): (source)

Initiate the outgoing connection attempt.

NoteApplications do not need to call this method; it will be invoked internally as part of IReactorTCP.connectTCP.
def _connectDone(self): (source)

This is a hook for when a connection attempt has succeeded.

Here, we build the protocol from the twisted.internet.protocol.ClientFactory that was passed in, compute a log string, begin reading so as to send traffic to the newly built protocol, and finally hook up the protocol itself.

This hook is overridden by ssl.Client to initiate the TLS protocol.

API Documentation for Twisted, generated by pydoctor at 2018-07-14 04:53:34.