Go to the latest version of this document.

# ``twisted`.`protocols`.`policies`.`WrappingFactory``

class documentation

`class WrappingFactory(ClientFactory): (source)`

Known subclasses: `twisted.protocols.haproxy._wrapper.HAProxyWrappingFactory`, `twisted.protocols.policies.LimitConnectionsByPeer`, `twisted.protocols.policies.SpewingFactory`, `twisted.protocols.policies.ThrottlingFactory`, `twisted.protocols.policies.TimeoutFactory`, `twisted.protocols.policies.TrafficLoggingFactory`, `twisted.protocols.tls.TLSMemoryBIOFactory`

Constructor: `WrappingFactory(wrappedFactory)`

View In Hierarchy

Wraps a factory and its protocols, and keeps track of them.

Method | `__init__` | Undocumented
Method | `buildProtocol` | Create an instance of a subclass of Protocol.
Method | `clientConnectionFailed` | Called when a connection has failed to connect.
Method | `clientConnectionLost` | Called when an established connection is lost.
Method | `doStart` | Make sure startFactory is called.
Method | `doStop` | Make sure stopFactory is called.
Method | `logPrefix` | Generate a log prefix mentioning both the wrapped factory and this one.
Method | `registerProtocol` | Called by protocol to register itself.
Method | `startedConnecting` | Called when a connection has been started.
Method | `unregisterProtocol` | Called by protocols when they go away.
Instance Variable | `protocols` | Undocumented
Instance Variable | `wrappedFactory` | Undocumented

Inherited from `Factory` (via `ClientFactory`):

Class Method | `forProtocol` | Create a factory for the given protocol.
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.
Class Variable | `noisy` | Undocumented
Class Variable | `protocol` | Undocumented
Instance Variable | `numPorts` | Undocumented

def __init__(self, wrappedFactory): (source)
overridden in `twisted.protocols.policies.ThrottlingFactory`, `twisted.protocols.policies.TimeoutFactory`, `twisted.protocols.policies.TrafficLoggingFactory`, `twisted.protocols.tls.TLSMemoryBIOFactory`

Undocumented

def buildProtocol(self, addr): (source)
from `twisted.internet.interfaces.IProtocolFactory`
overrides `twisted.internet.protocol.Factory.buildProtocol`
overridden in `twisted.protocols.policies.LimitConnectionsByPeer`, `twisted.protocols.policies.ThrottlingFactory`, `twisted.protocols.policies.TimeoutFactory`, `twisted.protocols.policies.TrafficLoggingFactory`

Create an instance of a subclass of Protocol.

The returned instance will handle input on an incoming server connection, and an attribute "factory" pointing to the creating factory.

Alternatively, `None` may be returned to immediately close the new connection.

Override this method to alter how Protocol instances get created.

Parameters
addr | an object implementing `IAddress`

def clientConnectionFailed(self, connector, reason): (source)
overrides `twisted.internet.protocol.ClientFactory.clientConnectionFailed`

Called when a connection has failed to connect.

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

Parameters
connector | Undocumented
reason:`twisted.python.failure.Failure` | Undocumented

def clientConnectionLost(self, connector, reason): (source)
overrides `twisted.internet.protocol.ClientFactory.clientConnectionLost`

Called when an established connection is lost.

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

Parameters
connector | Undocumented
reason:`twisted.python.failure.Failure` | Undocumented

def doStart(self): (source)
from `twisted.internet.interfaces.IProtocolFactory`
overrides `twisted.internet.protocol.Factory.doStart`

Make sure startFactory is called.

Users should not call this function themselves!

def doStop(self): (source)
from `twisted.internet.interfaces.IProtocolFactory`
overrides `twisted.internet.protocol.Factory.doStop`

Make sure stopFactory is called.

Users should not call this function themselves!

def logPrefix(self): (source)
from `twisted.internet.interfaces.ILoggingContext`
overrides `twisted.internet.protocol.Factory.logPrefix`
overridden in `twisted.protocols.haproxy._wrapper.HAProxyWrappingFactory`, `twisted.protocols.tls.TLSMemoryBIOFactory`

Generate a log prefix mentioning both the wrapped factory and this one.

def registerProtocol(self, p): (source)

Called by protocol to register itself.

def startedConnecting(self, connector): (source)
overrides `twisted.internet.protocol.ClientFactory.startedConnecting`

Called when a connection has been started.

You can call connector.stopConnecting() to stop the connection attempt.

Parameters
connector | a Connector object.

def unregisterProtocol(self, p): (source)
overridden in `twisted.protocols.policies.LimitConnectionsByPeer`, `twisted.protocols.policies.ThrottlingFactory`

Called by protocols when they go away.

protocols: `dict` = (source)

Undocumented

wrappedFactory = (source)

Undocumented