t.i.u.Port(base.BasePort) : class documentation

Part of twisted.internet.udp View Source View In Hierarchy

Known subclasses: twisted.internet.udp.MulticastPort, twisted.internet.unix.DatagramPort

UDP port, listening for packets.
Instance Variable maxThroughput Maximum number of bytes read in one event loop iteration.
Instance Variable addressFamily socket.AF_INET or socket.AF_INET6, depending on whether this port is listening on an IPv4 address or an IPv6 address.
Method __init__
Method __repr__ Undocumented
Method getHandle Return a socket object.
Method startListening Create and bind my socket, and begin listening on it.
Method doRead Called when my socket is ready for reading.
Method write Write a datagram.
Method writeSequence Reliably write a sequence of data.
Method connect 'Connect' to remote server.
Method stopListening Undocumented
Method loseConnection Close the connection at the next available opportunity.
Method connectionLost Cleans up my socket.
Method setLogStr Initialize the logstr attribute to be used by logPrefix.
Method logPrefix Return the prefix to log with.
Method getHost Return the local address of the UDP connection
Method setBroadcastAllowed Set whether this port may broadcast. This is disabled by default.
Method getBroadcastAllowed Checks if broadcast is currently allowed on this port.
Instance Variable _realPortNumber Actual port number being listened on. The value will be None until this Port is listening.
Instance Variable _preexistingSocket If not None, a socket.socket instance which was created and initialized outside of the reactor and will be used to listen for connections (instead of a new socket being created by this Port).
Class Method _fromListeningDescriptor Create a new Port based on an existing listening SOCK_DGRAM socket.
Method _bindSocket Prepare and assign a socket.socket instance to self.socket.
Method _connectToProtocol Undocumented
Method _loseConnection Undocumented
Method _setAddressFamily Resolve address family for the socket.

Inherited from BasePort:

Method createInternetSocket Undocumented
Method doWrite Raises a RuntimeError

Inherited from FileDescriptor (via BasePort):

Method writeSomeData Write as much as possible of the given data, immediately.
Method writeConnectionLost Undocumented
Method readConnectionLost Undocumented
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 Undocumented
Method pauseProducing Undocumented
Method stopProducing Undocumented
Method fileno File Descriptor number for select().
Method _postLoseConnection Called after a loseConnection(), when all data has been written.
Method _closeWriteConnection 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.

Inherited from _ConsumerMixin (via BasePort, 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 BasePort, FileDescriptor):

Method _getLogPrefix Determine the log prefix to use for messages related to applicationObject, which may or may not be an interfaces.ILoggingContext provider.
maxThroughput =
Maximum number of bytes read in one event loop iteration.
addressFamily =
socket.AF_INET or socket.AF_INET6, depending on whether this port is listening on an IPv4 address or an IPv6 address.
_realPortNumber =
Actual port number being listened on. The value will be None until this Port is listening.
_preexistingSocket =
If not None, a socket.socket instance which was created and initialized outside of the reactor and will be used to listen for connections (instead of a new socket being created by this Port).
def __init__(self, port, proto, interface='', maxPacketSize=8192, reactor=None): (source)
ParametersportA port number on which to listen. (type: int)
protoA DatagramProtocol instance which will be connected to the given port. (type: twisted.internet.protocol.DatagramProtocol)
interfaceThe local IPv4 or IPv6 address to which to bind; defaults to '', ie all IPv4 addresses. (type: str)
maxPacketSizeThe maximum packet size to accept. (type: int)
reactorA reactor which will notify this Port when its socket is ready for reading or writing. Defaults to None, ie the default global reactor. (type: interfaces.IReactorFDSet)
@classmethod
def _fromListeningDescriptor(cls, reactor, fd, addressFamily, protocol, maxPacketSize): (source)
Create a new Port based on an existing listening SOCK_DGRAM socket.
ParametersreactorA reactor which will notify this Port when its socket is ready for reading or writing. Defaults to None, ie the default global reactor. (type: interfaces.IReactorFDSet)
fdAn integer file descriptor associated with a listening socket. The socket must be in non-blocking mode. Any additional attributes desired, such as FD_CLOEXEC, must also be set already. (type: int)
addressFamilyThe address family (sometimes called domain) of the existing socket. For example, socket.AF_INET.
addressFamilyint
protocolA DatagramProtocol instance which will be connected to the port.
maxPacketSizeThe maximum packet size to accept. (type: int)
ReturnsA new instance of cls wrapping the socket given by fd. (type: Port)
def __repr__(self): (source)
Undocumented
def getHandle(self): (source)
Return a socket object.
def startListening(self): (source)
Create and bind my socket, and begin listening on it.

This is called on unserialization, and must be called after creating a server to begin listening on the specified port.

def _bindSocket(self): (source)
Prepare and assign a socket.socket instance to self.socket.

Either creates a new SOCK_DGRAM socket.socket bound to self.interface and self.port or takes an existing socket.socket provided via the interfaces.IReactorSocket.adoptDatagramPort interface.

def _connectToProtocol(self): (source)
Undocumented
def doRead(self): (source)
Called when my socket is ready for reading.
def write(self, datagram, addr=None): (source)
Write a datagram.
ParametersdatagramThe datagram to be sent. (type: str)
addrA tuple of (stringified IPv4 or IPv6 address, integer port number); can be None in connected mode. (type: tuple containing str as first element and int as second element, or None)
def writeSequence(self, seq, addr): (source)
Reliably write a sequence of data.

Currently, this is a convenience method roughly equivalent to:

   for chunk in iovec:
       fd.write(chunk)

It may have a more efficient implementation at a later time or in a different reactor.

As with the write() method, if a buffer size limit is reached and a streaming producer is registered, it will be paused until the buffered data is written to the underlying file descriptor.

def connect(self, host, port): (source)
'Connect' to remote server.
def _loseConnection(self): (source)
Undocumented
def stopListening(self): (source)
Undocumented
def loseConnection(self): (source)
Close the connection at the next available opportunity.

Call this to cause this FileDescriptor to lose its connection. It will first write any data that it has buffered.

If there is data buffered yet to be written, this method will cause the transport to lose its connection as soon as it's done flushing its write buffer. If you have a producer registered, the connection won't be closed until the producer is finished. Therefore, make sure you unregister your producer when it's finished, or the connection will never close.

def connectionLost(self, reason=None): (source)
Cleans up my socket.
def setLogStr(self): (source)
Initialize the logstr attribute to be used by logPrefix.
def _setAddressFamily(self): (source)
Resolve address family for the socket.
def logPrefix(self): (source)
Return the prefix to log with.
def getHost(self): (source)
Return the local address of the UDP connection
Returnsthe local address of the UDP connection (type: IPv4Address or IPv6Address)
def setBroadcastAllowed(self, enabled): (source)
Set whether this port may broadcast. This is disabled by default.
ParametersenabledWhether the port may broadcast. (type: bool)
def getBroadcastAllowed(self): (source)
Checks if broadcast is currently allowed on this port.
ReturnsWhether this port may broadcast. (type: bool)
API Documentation for Twisted, generated by pydoctor at 2014-05-12 18:27:00.