Package twisted :: Package protocols :: Module msn :: Class FileReceive
[frames | no frames]

Class FileReceive

BaseProtocol --+        
               |        
        Protocol --+    
                   |    
        LineReceiver --+
                       |
                      FileReceive


This class provides support for receiving files from contacts.
Method Summary
  __init__(self, auth, myUserHandle, file, directory, overwrite)
  connectionLost(self, reason)
  connectionMade(self)
Called when a connection is made.
  gotSegment(self, data)
called when a segment (block) of data arrives.
  handle_FIL(self, params)
  handle_UNKNOWN(self, cmd, params)
  handle_VER(self, params)
  lineReceived(self, line)
Override this for when each line is received.
  parseHeader(self, header)
parse the header of each 'message' to obtain the segment length
  rawDataReceived(self, data)
Override this for when raw data is received.
    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.

Instance Variable Summary
  bytesReceived: number of bytes (of the file) received.
  completed: true if the transfer is complete.
  connected: true if a connection has been established.
  fileSize: the size of the receiving file.

Class Variable Summary
    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
NoneType transport = None                                                                  

Method Details

__init__(self, auth, myUserHandle, file, directory='', overwrite=0)
(Constructor)

Parameters:
auth - auth string received in the file invitation.
myUserHandle - your userhandle.
file - A string or file object represnting the file to save data to.
directory - optional parameter specifiying the directory. Defaults to the current directory.
overwrite - if true and a file of the same name exists on your system, it will be overwritten. (0 by default)

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)

gotSegment(self, data)

called when a segment (block) of data arrives.

lineReceived(self, line)

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

parseHeader(self, header)

parse the header of each 'message' to obtain the segment length

rawDataReceived(self, data)

Override this for when raw data is received.
Overrides:
twisted.protocols.basic.LineReceiver.rawDataReceived (inherited documentation)

Instance Variable Details

bytesReceived

number of bytes (of the file) received. This does not include header data.

completed

true if the transfer is complete.

connected

true if a connection has been established.

fileSize

the size of the receiving file. (you will have to set this)

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