Package twisted :: Package protocols :: Module postfix :: Class PostfixTCPMapServer
[frames | no frames]

Class PostfixTCPMapServer

BaseProtocol --+        
               |        
        Protocol --+    
                   |    
        LineReceiver --+
                       |
        TimeoutMixin --+
                       |
                      PostfixTCPMapServer


Postfix mail transport agent TCP map protocol implementation.

Receive requests for data matching given key via lineReceived, asks it's factory for the data with self.factory.get(key), and returns the data to the requester. None means no entry found.

You can use postfix's postmap to test the map service:

/usr/sbin/postmap -q KEY tcp:localhost:4242
Method Summary
  _cbGot(self, value)
  _cbNot(self, fail)
  connectionMade(self)
Called when a connection is made.
  do_get(self, key)
  do_put(self, keyAndValue)
  lineReceived(self, line)
Override this for when each line is received.
  sendCode(self, code, message)
Send an SMTP-like code with a message.
    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.
  rawDataReceived(self, data)
Override this for when raw data is received.
  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)
  connectionLost(self, reason)
Called when the connection is shut down.
    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
  timeoutConnection(self)
Called when the connection times out.

Class Variable Summary
str delimiter: The line-ending delimiter to use.
int timeout = 600                                                                   
    Inherited from LineReceiver
str _LineReceiver__buffer = ''
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.

Method Details

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.
Overrides:
twisted.internet.protocol.BaseProtocol.connectionMade (inherited documentation)

lineReceived(self, line)

Override this for when each line is received.
Overrides:
twisted.protocols.basic.LineReceiver.lineReceived (inherited documentation)

sendCode(self, code, message='')

Send an SMTP-like code with a message.

Class Variable Details

delimiter

The line-ending delimiter to use. By default this is '\r\n'.
Type:
str
Value:
'''
'''                                                                    

timeout

Type:
int
Value:
600                                                                   

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