A ClientService maintains a single outgoing connection to a client endpoint, reconnecting after a configurable timeout when a connection fails, either before or after connecting.

Present Since16.1.0
Method __init__
Method whenConnected Retrieve the currently-connected Protocol, or the next one to connect.
Method startService Start this ClientService, initiating the connection retry loop.
Method stopService Stop attempting to reconnect and close any existing connections.
Method _unawait Fire all outstanding ClientService.whenConnected Deferreds.

Inherited from Service:

Method __getstate__ Undocumented
Method setName Set the name of the service.
Method setServiceParent Set the parent of the service. This method is responsible for setting the parent attribute on this service (the child service).
Method disownServiceParent Use this API to remove an IService from an IServiceCollection.
Method privilegedStartService Do preparation work for starting the service.
def __init__(self, endpoint, factory, retryPolicy=None, clock=None): (source)
ParametersendpointA stream client endpoint provider which will be used to connect when the service starts.
factoryA protocol factory which will be used to create clients for the endpoint.
retryPolicyA policy configuring how long ClientService will wait between attempts to connect to endpoint. (type: callable taking (the number of failed connection attempts made in a row (int)) and returning the number of seconds to wait before making another attempt.)
clockThe 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)
def whenConnected(self): (source)

Retrieve the currently-connected Protocol, or the next one to connect.

Returnsa Deferred that fires with a protocol produced by the factory passed to __init__ (type: Deferred firing with IProtocol or failing with CancelledError the service is stopped.)
def _unawait(self, value): (source)

Fire all outstanding ClientService.whenConnected Deferreds.

Parametersvaluethe value to fire the Deferreds with.
def startService(self): (source)

Start this ClientService, initiating the connection retry loop.

def stopService(self): (source)

Stop attempting to reconnect and close any existing connections.

Returnsa Deferred that fires when all outstanding connections are closed and all in-progress connection attempts halted.
API Documentation for Twisted, generated by pydoctor at 2016-10-29 16:19:29.