Package twisted :: Package web :: Module proxy :: Class Proxy

[frames | no frames]

## Class Proxy

    BaseProtocol --+
                   |
            Protocol --+
                       |
            LineReceiver --+
                           |
            TimeoutMixin --+
                           |
                 HTTPChannel --+
                               |
                              Proxy

This class implements a simple web proxy.

Since it inherits from twisted.protocols.http.HTTPChannel, to use it you should do something like this:

       from twisted.protocols import http
       f = http.HTTPFactory()
       f.protocol = Proxy

Make the HTTPFactory a listener on a port as per usual, and you have a fully-functioning web proxy!

Method Summary
Inherited from HTTPChannel
| ``__init__`(self)`
| ``allContentReceived`(self)`
| ``allHeadersReceived`(self)`
| ``checkPersistence`(self, request, version)` Check if the channel should close or not.
| ``connectionLost`(self, reason)`
| ``connectionMade`(self)` Called when a connection is made.
| ``headerReceived`(self, line)` Do pre-processing (for content-length) and store this header away.
| ``lineReceived`(self, line)` Override this for when each line is received.
| ``rawDataReceived`(self, data)` Override this for when raw data is received.
| ``requestDone`(self, request)` Called by first request in queue when it is done.
| ``timeoutConnection`(self)` Called when the connection times out.
Inherited from LineReceiver
| ``clearLineBuffer`(self)` Clear buffered data.
| ``dataReceived`(self, data)` Protocol.dataReceived.
| ``lineLengthExceeded`(self, line)` Called when the maximum line length has been reached.
| ``sendLine`(self, line)` Sends a line to the other end of the connection.
| ``setLineMode`(self, extra)` Sets the line-mode of this receiver.
| ``setRawMode`(self)` Sets the raw mode of this receiver.
Inherited from Protocol
| ``connectionFailed`(self)` (Deprecated)
Inherited from BaseProtocol
| ``makeConnection`(self, transport)` Make a connection to a transport and a server.
Inherited from TimeoutMixin
| ``resetTimeout`(self)` Reset the timeout count down
| ``setTimeout`(self, period)` Change the timeout period

Class Variable Summary
`class` | `requestFactory` = `twisted.web.proxy.ProxyRequest`
Inherited from HTTPChannel
`NoneType` | `_HTTPChannel__content` = None
`int` | `_HTTPChannel__first_line` = 1
`str` | `_HTTPChannel__header` = `''`
`NoneType` | `_savedTimeOut` = None
`int` | `length` = 0
`int` | `maxHeaders` = 500
`int` | `persistent` = 1
Inherited from LineReceiver
`str` | `_LineReceiver__buffer` = `''`
`str` | `delimiter`: The line-ending delimiter to use.
`int` | `line_mode` = 1
`int` | `MAX_LENGTH`: The maximum length of a line to allow (If a sent line is longer than this, the connection is dropped).
Inherited from Protocol
`tuple` | `__implements__` = `(<class twisted.internet.interfaces.IPr...`
Inherited from BaseProtocol
`int` | `connected` = 0
`NoneType` | `transport` = None
Inherited from TimeoutMixin
`NoneType` | `_TimeoutMixin__lastReceived` = None
`NoneType` | `_TimeoutMixin__timeoutCall` = None
`NoneType` | `timeOut`: The number of seconds after which to timeout the connection.

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