twisted.protocols.ftp.FTPClient(FTPClientBasic) class documentationtwisted.protocols.ftp
(View In Hierarchy)
FTPClient is a
client implementation of the FTP protocol which exposes FTP commands as 
methods which return Deferreds.
Each command method returns a Deferred which
is called back when a successful response code (2xx or 3xx) is received 
from the server or which is error backed if an error response code (4xx or 
5xx) is received from the server or if a protocol violation occurs.  If an 
error response code is received, the Deferred fires
with a Failure 
wrapping a CommandFailed
instance.  The CommandFailed
instance is created with a list of the response lines received from the 
server.
See RFC 959 for error code definitions.
Both active and passive transfers are supported.
| Instance Variable | passive | See description in __init__. | 
| Method | __init__ | Constructor. | 
| Method | fail | Disconnect, and also give an error to any queued deferreds. | 
| Method | receiveFromConnection | Retrieves a file or listing generated by the given command, feeding it to the given protocol. | 
| Method | queueLogin | Login: send the username, send the password, and set retrieval mode to binary | 
| Method | sendToConnection | XXX | 
| Method | generatePortCommand | (Private) Generates the text of a given PORT command. | 
| Method | escapePath | Returns a FTP escaped path (replace newlines with nulls). | 
| Method | retrieveFile | Retrieve a file from the given path | 
| Method | storeFile | Store a file at the given path. | 
| Method | rename | Rename a file. | 
| Method | list | Retrieve a file listing into the given protocol instance. | 
| Method | nlst | Retrieve a short file listing into the given protocol instance. | 
| Method | cwd | Issues the CWD (Change Working Directory) command. | 
| Method | makeDirectory | Make a directory | 
| Method | removeFile | Delete a file on the server. | 
| Method | removeDirectory | Delete a directory on the server. | 
| Method | cdup | Issues the CDUP (Change Directory UP) command. | 
| Method | pwd | Issues the PWD (Print Working Directory) command. | 
| Method | getDirectory | Returns the current remote directory. | 
| Method | quit | Issues the QUIT command. | 
| Method | _openDataConnection | This method returns a DeferredList. | 
Inherited from FTPClientBasic:
| Method | sendLine | Sends a line, unless line is None. | 
| Method | sendNextCommand | (Private) Processes the next command in the queue. | 
| Method | queueCommand | Add an FTPCommand object to the queue. | 
| Method | queueStringCommand | Queues a string to be issued as an FTP command | 
| Method | popCommandQueue | Return the front element of the command queue, or None if empty. | 
| Method | lineReceived | (Private) Parses the response messages from the FTP server. | 
| Method | connectionLost | Called when the connection is shut down. | 
| Method | _fail | Errback all queued deferreds. | 
| Method | _cb_greeting | Undocumented | 
Inherited from LineReceiver (via FTPClientBasic):
| Class Variable | delimiter | The line-ending delimiter to use. By default this is b'\r\n'. | 
| Class Variable | MAX_LENGTH | The maximum length of a line to allow (If a sent line is longer than this, the connection is dropped). Default is 16384. | 
| Method | clearLineBuffer | Clear buffered data. | 
| Method | dataReceived | Protocol.dataReceived. Translates bytes into lines, and calls lineReceived (or rawDataReceived, depending on mode.) | 
| Method | setLineMode | Sets the line-mode of this receiver. | 
| Method | setRawMode | Sets the raw mode of this receiver. Further data received will be sent to rawDataReceived rather than lineReceived. | 
| Method | rawDataReceived | Override this for when raw data is received. | 
| Method | lineLengthExceeded | Called when the maximum line length has been reached. Override if it needs to be dealt with in some special way. | 
Inherited from Protocol (via FTPClientBasic, LineReceiver):
| Method | logPrefix | Return a prefix matching the class name, to identify log messages related to this protocol instance. | 
Inherited from BaseProtocol (via FTPClientBasic, LineReceiver, Protocol):
| Method | makeConnection | Make a connection to a transport and a server. | 
| Method | connectionMade | Called when a connection is made. | 
Inherited from _PauseableMixin (via FTPClientBasic, LineReceiver):
| Method | pauseProducing | Undocumented | 
| Method | resumeProducing | Undocumented | 
| Method | stopProducing | Undocumented | 
Constructor.
I will login as soon as I receive the welcome message from the server.
| Parameters | username | FTP username | 
| password | FTP password | |
| passive | flag that controls if I use active or passive data connections.  You can 
also change this after construction by assigning to self.passive. | 
Retrieves a file or listing generated by the given command, feeding it to the given protocol.
| Parameters | commands | list of strings of FTP commands to execute then receive the results of 
(e.g. LIST,RETR) | 
| protocol | A Protocolinstance e.g. anFTPFileListProtocol,
or something that can be adapted to one. Typically this will be anIConsumerimplementation. | |
| Returns | Deferred. | |
Login: send the username, send the password, and set retrieval mode to binary
XXX
| Returns | A tuple of two Deferreds:
 | |
Retrieve a file from the given path
This method issues the 'RETR' FTP command.
The file is fed into the given Protocol instance. The data connection will be passive if self.passive is set.
| Parameters | path | path to file that you wish to receive. | 
| protocol | a Protocolinstance. | |
| offset | offset to start downloading from | |
| Returns | Deferred | |
Store a file at the given path.
This method issues the 'STOR' FTP command.
| Returns | A tuple of two Deferreds:
 | |
Rename a file.
This method issues the RNFR/RNTO command sequence to 
rename pathFrom to pathTo.
| Parameters | pathFrom: the absolute path to the file to be renamed | |
| pathTo: the absolute path to rename the file to. | ||
| Returns | A Deferredwhich fires when the rename operation has succeeded or failed.  If it 
succeeds, theDeferredis 
called back with a two-tuple of lists.  The first list contains the 
responses to the RNFR command.  The second list contains the 
responses to the RNTO command.  If either RNFR or RNTO
fails, theDeferredis 
errbacked withCommandFailedorBadResponse. (type:Deferred) | |
| Present Since | 8.2 | |
Retrieve a file listing into the given protocol instance.
This method issues the 'LIST' FTP command.
| Parameters | path | path to get a file listing for. | 
| protocol | a Protocolinstance, probably aFTPFileListProtocolinstance.  It can cope with most common file listing formats. | |
| Returns | Deferred | |
Retrieve a short file listing into the given protocol instance.
This method issues the 'NLST' FTP command.
NLST (should) return a list of filenames, one per line.
| Parameters | path | path to get short file listing for. | 
| protocol | a Protocolinstance. | 
Issues the CWD (Change Working Directory) command.
| Returns | a Deferredthat will be called when done. | |
Make a directory
This method issues the MKD command.
| Parameters | path | The path to the directory to create. (type: str) | 
| Returns | A Deferredwhich fires when the server responds.  If the directory is created, theDeferredis 
called back with the server response.  If the server response indicates the
directory was not created, theDeferredis 
errbacked with aFailurewrappingCommandFailedorBadResponse. (type:Deferred) | |
| Present Since | 8.2 | |
Delete a file on the server.
removeFile
issues a DELE command to the server to remove the indicated file.  
Note that this command cannot remove a directory.
| Parameters | path | The path to the file to delete. May be relative to the current dir. (type: str) | 
| Returns | A Deferredwhich fires when the server responds.  On error, it is errbacked with 
eitherCommandFailedorBadResponse.
On success, it is called back with a list of response lines. (type:Deferred) | |
| Present Since | 8.2 | |
Delete a directory on the server.
removeDirectory
issues a RMD command to the server to remove the indicated 
directory. Described in RFC959.
| Parameters | path | The path to the directory to delete. May be relative to the current working
directory. (type: str) | 
| Returns | A Deferredwhich fires when the server responds. On error, it is errbacked with eitherCommandFailedorBadResponse.
On success, it is called back with a list of response lines. (type:Deferred) | |
| Present Since | 11.1 | |
Issues the CDUP (Change Directory UP) command.
| Returns | a Deferredthat will be called when done. | |
Issues the PWD (Print Working Directory) command.
The getDirectory
does the same job but automatically parses the result.
| Returns | a Deferredthat will be called when done.  It is up to the caller to interpret the 
response, but theparsePWDResponsemethod in this module should work. | |
Returns the current remote directory.
| Returns | a Deferredthat will be called back with astrgiving the remote 
directory or which will errback withCommandFailedif an error response is returned. | |