Package twisted :: Package protocols :: Module policies :: Class WrappingFactory

[frames | no frames]

## Class WrappingFactory

      Factory --+
                |
    ClientFactory --+
                    |
                   WrappingFactory

Known Subclasses:
  `LimitConnectionsByPeer`, `SpewingFactory`, `ThrottlingFactory`, `TimeoutFactory`

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

Method Summary
| `__init__(self, wrappedFactory)`
| ``buildProtocol`(self, addr)` Create an instance of a subclass of Protocol.
| ``clientConnectionFailed`(self, connector, reason)` Called when a connection has failed to connect.
| ``clientConnectionLost`(self, connector, reason)` Called when an established connection is lost.
| ``doStart`(self)` Make sure startFactory is called.
| ``doStop`(self)` Make sure stopFactory is called.
| ``registerProtocol`(self, p)` Called by protocol to register itself.
| ``startedConnecting`(self, connector)` Called when a connection has been started.
| ``unregisterProtocol`(self, p)` Called by protocols when they go away.
Inherited from Factory
| ``startFactory`(self)` This will be called before I begin listening on a Port or Connector.
| ``stopFactory`(self)` This will be called before I stop listening on all Ports/Connectors.

Class Variable Summary
`class` | `protocol` = `twisted.protocols.policies.ProtocolWrapper`
Inherited from Factory
`tuple` | `__implements__` = `(<class twisted.internet.interfaces.IPr...`
`str` | `noisy` = `'sure, why not'`
`int` | `numPorts` = 0

Method Details

### buildProtocol(self, addr)

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.

Override this method to alter how Protocol instances get created.

  Parameters:
    `addr` - an object implementing `twisted.internet.interfaces.IAddress`
  Overrides:
    `twisted.internet.protocol.Factory.buildProtocol` (inherited documentation)

### clientConnectionFailed(self, connector, reason)

Called when a connection has failed to connect.

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

  Parameters:
    `reason`
    (type=`twisted.python.failure.Failure`)
  Overrides:
    `twisted.internet.protocol.ClientFactory.clientConnectionFailed` (inherited documentation)

### clientConnectionLost(self, connector, reason)

Called when an established connection is lost.

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

  Parameters:
    `reason`
    (type=`twisted.python.failure.Failure`)
  Overrides:
    `twisted.internet.protocol.ClientFactory.clientConnectionLost` (inherited documentation)

### doStart(self)

Make sure startFactory is called.

  Overrides:
    `twisted.internet.protocol.Factory.doStart` (inherited documentation)

### doStop(self)

Make sure stopFactory is called.

  Overrides:
    `twisted.internet.protocol.Factory.doStop` (inherited documentation)

### registerProtocol(self, p)

Called by protocol to register itself.

### startedConnecting(self, connector)

Called when a connection has been started.

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

  Parameters:
    `connector` - a Connector object.
  Overrides:
    `twisted.internet.protocol.ClientFactory.startedConnecting` (inherited documentation)

### unregisterProtocol(self, p)

Called by protocols when they go away.

Generated by Epydoc 2.0 on Sat May 15 20:08:41 2004 | http://epydoc.sf.net