class documentation

class twisted.internet.protocol.ReconnectingClientFactory(ClientFactory): (source)

Known subclasses: twisted.words.xish.xmlstream.XmlStreamFactory

View In Hierarchy

Factory which auto-reconnects clients with an exponential back-off.

Note that clients should call my resetDelay method after they have connected successfully.

Instance Variable maxDelay Maximum number of seconds between connection attempts.
Instance Variable initialDelay Delay for the first reconnection attempt.
Instance Variable factor A multiplicitive factor by which the delay grows
Instance Variable jitter Percentage of randomness to introduce into the delay length to prevent stampeding.
Instance Variable clock The clock used to schedule reconnection. It's mainly useful to be parametrized in tests. If the factory is serialized, this attribute will not be serialized, and the default value (the reactor) will be restored when deserialized.
Instance Variable maxRetries Maximum number of consecutive unsuccessful connection attempts, after which no further connection attempts will be made. If this is not explicitly set, no maximum is applied.
Instance Variable retries Undocumented
Instance Variable connector Undocumented
Instance Variable continueTrying Undocumented
Method clientConnectionFailed Called when a connection has failed to connect.
Method clientConnectionLost Called when an established connection is lost.
Method retry Have this connector connect again, after a suitable delay.
Instance Variable delay Undocumented
Method stopTrying Put a stop to any attempt to reconnect in progress.
Method resetDelay Call this method after a successful connection: it resets the delay and the retry counter.
Method __getstate__ No summary
Instance Variable _callID Undocumented

Inherited from ClientFactory:

Method startedConnecting Called when a connection has been started.

Inherited from Factory (via ClientFactory):

Class Variable protocol Undocumented
Instance Variable numPorts Undocumented
Class Variable noisy Undocumented
Class Method forProtocol Create a factory for the given protocol.
Method logPrefix Describe this factory for log messages.
Method doStart Make sure startFactory is called.
Method doStop Make sure stopFactory is called.
Method startFactory This will be called before I begin listening on a Port or Connector.
Method stopFactory This will be called before I stop listening on all Ports/Connectors.
Method buildProtocol Create an instance of a subclass of Protocol.
maxDelay = (source)
Maximum number of seconds between connection attempts.
(type: int)
initialDelay = (source)
Delay for the first reconnection attempt.
(type: float)
factor = (source)
A multiplicitive factor by which the delay grows
(type: float)
jitter = (source)
Percentage of randomness to introduce into the delay length to prevent stampeding.
(type: float)
clock = (source)
The clock used to schedule reconnection. It's mainly useful to be parametrized in tests. If the factory is serialized, this attribute will not be serialized, and the default value (the reactor) will be restored when deserialized.
(type: IReactorTime)
maxRetries = (source)
Maximum number of consecutive unsuccessful connection attempts, after which no further connection attempts will be made. If this is not explicitly set, no maximum is applied.
retries = (source)

Undocumented

(type: int)
_callID = (source)

Undocumented

connector = (source)

Undocumented

continueTrying = (source)

Undocumented

(type: int)
def clientConnectionFailed(self, connector, reason): (source)

Called when a connection has failed to connect.

It may be useful to call connector.connect() - this will reconnect.

ParametersconnectorUndocumented
reasonUndocumented (type: twisted.python.failure.Failure)
def clientConnectionLost(self, connector, unused_reason): (source)

Called when an established connection is lost.

It may be useful to call connector.connect() - this will reconnect.

ParametersconnectorUndocumented
unused_reasonUndocumented
reasonUndocumented (type: twisted.python.failure.Failure)
def retry(self, connector=None): (source)

Have this connector connect again, after a suitable delay.

delay = (source)

Undocumented

def stopTrying(self): (source)

Put a stop to any attempt to reconnect in progress.

def resetDelay(self): (source)

Call this method after a successful connection: it resets the delay and the retry counter.

def __getstate__(self): (source)

Remove all of the state which is mutated by connection attempts and failures, returning just the state which describes how reconnections should be attempted. This will make the unserialized instance behave just as this one did when it was first instantiated.

API Documentation for Twisted, generated by pydoctor 20.12.1 at 2021-02-28 19:53:36.