# ``twisted`.`internet`.`tcp`.`Server``

class documentation

`class Server(_TLSServerMixin, Connection): (source)`

Known subclasses: `twisted.internet.ssl.Server`, `twisted.internet.unix.Server`

View In Hierarchy

Serverside socket-stream connection class.

This is a serverside network connection transport; a socket which came from an accept() on a server.

Method | `__init__` | Server(sock, protocol, client, server, sessionno)
Method | `__repr__` | A string representation of this connection.
Method | `getHost` | Returns an `IPv4Address` or `IPv6Address`.
Method | `getPeer` | Returns an `IPv4Address` or `IPv6Address`.
Instance Variable | `client` | Undocumented
Instance Variable | `connected` | Undocumented
Instance Variable | `hostname` | Undocumented
Instance Variable | `logstr` | Undocumented
Instance Variable | `repstr` | Undocumented
Instance Variable | `server` | Undocumented
Instance Variable | `sessionno` | Undocumented
Class Method | `_fromConnectedSocket` | Create a new `Server` based on an existing connected SOCK_STREAM socket.
Instance Variable | `_addressType` | Undocumented
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).

Inherited from `Connection`:

Method | `connectionLost` | See abstract.FileDescriptor.connectionLost().
Method | `doRead` | Calls self.protocol.dataReceived with all available data.
Method | `getHandle` | Return the socket for this connection.
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 | `readConnectionLost` | Indicates read connection was lost.
Method | `setTcpKeepAlive` | Enable/disable `SO_KEEPALIVE`.
Method | `setTcpNoDelay` | Enable/disable `TCP_NODELAY`.
Method | `writeSomeData` | Write as much as possible of the given data to this TCP connection.
Instance Variable | `protocol` | Undocumented
Instance Variable | `socket` | Undocumented
Method | `_closeWriteConnection` | Undocumented
Method | `_dataReceived` | Undocumented

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

Constant | `TLS` | Undocumented

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

Method | `doWrite` | Called when data can be written.
Method | `fileno` | File Descriptor number for select().
Method | `loseConnection` | Close the connection at the next available opportunity.
Method | `loseWriteConnection` | Undocumented
Method | `pauseProducing` | Pause producing data.
Method | `resumeProducing` | Resume producing data.
Method | `startReading` | Start waiting for read availability.
Method | `startWriting` | Start waiting for write availability.
Method | `stopConsuming` | Stop consuming data.
Method | `stopProducing` | Stop producing data.
Method | `stopReading` | Stop waiting for read availability.
Method | `stopWriting` | Stop waiting for write availability.
Method | `write` | Reliably write some data.
Method | `writeConnectionLost` | Indicates write connection was lost.
Method | `writeSequence` | Reliably write a sequence of data.
Constant | `SEND_LIMIT` | Undocumented
Class Variable | `bufferSize` | 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 | `reactor` | Undocumented
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.
Method | `_postLoseConnection` | Called after a loseConnection(), when all data has been written.
Instance Variable | `_tempDataBuffer` | Undocumented
Instance Variable | `_tempDataLen` | Undocumented
Instance Variable | `_writeDisconnected` | Undocumented
Instance Variable | `_writeDisconnecting` | Undocumented

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

Method | `registerProducer` | Register to receive data from a producer.
Method | `unregisterProducer` | Stop consuming data from a producer, without disconnecting.
Instance Variable | `streamingProducer` | `bool` or `int`

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

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 | `doWrite` | Undocumented
Instance Variable | `_aborting` | Set to `True` when `abortConnection` is called.

def __init__(self, sock, protocol, client, server, sessionno, reactor): (source)
overrides `twisted.internet.tcp.Connection.__init__`
overridden in `twisted.internet.ssl.Server`, `twisted.internet.unix.Server`

Server(sock, protocol, client, server, sessionno)

Initialize it with a socket, a protocol, a descriptor for my peer (a tuple of host, port describing the other end of the connection), an instance of Port, and a session number.

def __repr__(self): (source)
A string representation of this connection.

Returns
`str` | Undocumented

def getHost(self): (source)
from `twisted.internet.interfaces.ITCPTransport`
overrides `twisted.internet.abstract.FileDescriptor.getHost`
overridden in `twisted.internet.unix.Server`

Returns an `IPv4Address` or `IPv6Address`.

This indicates the server's address.

def getPeer(self): (source)
from `twisted.internet.interfaces.ITCPTransport`
overrides `twisted.internet.abstract.FileDescriptor.getPeer`
overridden in `twisted.internet.unix.Server`

Returns an `IPv4Address` or `IPv6Address`.

This indicates the client's address.

client = (source)

Undocumented

connected: `int` = (source)
overrides `twisted.internet.abstract.FileDescriptor.connected`

Undocumented

hostname = (source)

Undocumented

logstr = (source)
overrides `twisted.internet.tcp.Connection.logstr`
overridden in `twisted.internet.unix.Server`

Undocumented

repstr = (source)
overridden in `twisted.internet.unix.Server`

Undocumented

server = (source)

Undocumented

sessionno = (source)

Undocumented

@classmethod
def _fromConnectedSocket(cls, fileDescriptor, addressFamily, factory, reactor): (source)
overridden in `twisted.internet.unix.Server`

Create a new `Server` based on an existing connected SOCK_STREAM socket.

Arguments are the same as to `Server.__init__`, except where noted.

Parameters
fileDescriptor | An integer file descriptor associated with a connected socket. The socket must be in non-blocking mode. Any additional attributes desired, such as FD_CLOEXEC, must also be set already.
addressFamily | The address family (sometimes called domain) of the existing socket. For example, `socket.AF_INET`.
factory | Undocumented
reactor | Undocumented
Returns
A new instance of `cls` wrapping the socket given by `fileDescriptor`.

_addressType = (source)

Undocumented

_base = (source)
`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).