Package twisted :: Package internet :: Module interfaces :: Class IProtocol

[frames | no frames]

## Class IProtocol

    Interface --+
                |
               IProtocol

Method Summary
| ``connectionLost`(self, reason)` Called when the connection is shut down.
| ``connectionMade`(self)` Called when a connection is made.
| ``dataReceived`(self, data)` Called whenever data is received.
| ``makeConnection`(self, transport)` Make a connection to a transport and a server.

Method Details

### connectionLost(self, reason)

Called when the connection is shut down.

Clear any circular references here, and any external references to this Protocol. The connection has been closed. The reason Failure wraps a `twisted.internet.error.ConnectionDone` or `twisted.internet.error.ConnectionLost` instance (or a subclass of one of those).

  Parameters:
    `reason`
    (type=`twisted.python.failure.Failure`)

### connectionMade(self)

Called when a connection is made.

This may be considered the initializer of the protocol, because it is called when the connection is completed. For clients, this is called once the connection to the server has been established; for servers, this is called after an accept() call stops blocking and a socket has been received. If you need to send any greeting or initial message, do it here.

### dataReceived(self, data)

Called whenever data is received.

Use this method to translate to a higher-level message. Usually, some callback will be made upon the receipt of each complete protocol message.

  Parameters:
    `data` - a string of indeterminate length. Please keep in mind that you will probably need to buffer some data, as partial (or multiple) protocol messages may be received! I recommend that unit tests for protocols call through to this method with differing chunk sizes, down to one byte at a time.

### makeConnection(self, transport)

Make a connection to a transport and a server.

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