PWLib  1.10.10
Public Member Functions | Protected Member Functions | Protected Attributes
PFTPClient Class Reference

#include <ftp.h>

Inheritance diagram for PFTPClient:
PFTP PInternetProtocol PIndirectChannel PChannel PObject

List of all members.

Public Member Functions

 PFTPClient ()
 Declare an FTP client socket.
 ~PFTPClient ()
 Delete and close the socket.
Overrides from class PSocket.
virtual BOOL Close ()
New functions for class
BOOL LogIn (const PString &username, const PString &password)
PString GetSystemType ()
BOOL SetType (RepresentationType type)
BOOL ChangeDirectory (const PString &dirPath)
PString GetCurrentDirectory ()
PStringArray GetDirectoryNames (NameTypes type=ShortNames, DataChannelType channel=Passive)
PStringArray GetDirectoryNames (const PString &path, NameTypes type=ShortNames, DataChannelType channel=Passive)
PString GetFileStatus (const PString &path, DataChannelType channel=Passive)
PTCPSocketGetFile (const PString &filename, DataChannelType channel=NormalPort)
PTCPSocketPutFile (const PString &filename, DataChannelType channel=NormalPort)

Protected Member Functions

virtual BOOL OnOpen ()
 Call back to verify open succeeded in an PInternetProtocol class.
PTCPSocketNormalClientTransfer (Commands cmd, const PString &args)
PTCPSocketPassiveClientTransfer (Commands cmd, const PString &args)

Protected Attributes

WORD remotePort
 Port number on remote system.

Detailed Description

File Transfer Protocol client channel class.


Constructor & Destructor Documentation

Declare an FTP client socket.

Delete and close the socket.


Member Function Documentation

BOOL PFTPClient::ChangeDirectory ( const PString dirPath)

Change the current directory on the remote FTP host.

Returns:
TRUE if the log in was successfull.
Parameters:
dirPathNew directory
virtual BOOL PFTPClient::Close ( ) [virtual]

Close the socket, and if connected as a client, QUITs from server.

Returns:
TRUE if the channel was closed and the QUIT accepted by the server.

Reimplemented from PIndirectChannel.

Get the current working directory on the remote FTP host.

Returns:
String for the directory path, or empty string if an error occurred.

Get a list of files from the current working directory on the remote FTP host.

Returns:
String array for the files in the directory.
Parameters:
typeDetail level on a directory entry.
channelData channel type.

Get a list of files from the current working directory on the remote FTP host.

Returns:
String array for the files in the directory.
Parameters:
pathName to get details for.
typeDetail level on a directory entry.
channelData channel type.
PTCPSocket* PFTPClient::GetFile ( const PString filename,
DataChannelType  channel = NormalPort 
)

Begin retreiving a file from the remote FTP server. The second parameter indicates that the transfer is on a normal or passive data channel. In short, a normal transfer the server connects to the client and in passive mode the client connects to the server.

Returns:
Socket to read data from, or NULL if an error occurred.
Parameters:
filenameName of file to get
channelData channel type.

Get status information for the file path specified.

Returns:
String giving file status.
Parameters:
pathPath to get status for.
channelData channel type.

Get the type of the remote FTP server system, eg Unix, WindowsNT etc.

Returns:
String for the type of system.
BOOL PFTPClient::LogIn ( const PString username,
const PString password 
)

Log in to the remote host for FTP.

Returns:
TRUE if the log in was successfull.
Parameters:
usernameUser name for FTP log in.
passwordPassword for the specified user name.
PTCPSocket* PFTPClient::NormalClientTransfer ( Commands  cmd,
const PString args 
) [protected]
virtual BOOL PFTPClient::OnOpen ( ) [protected, virtual]

Call back to verify open succeeded in an PInternetProtocol class.

Reimplemented from PIndirectChannel.

PTCPSocket* PFTPClient::PassiveClientTransfer ( Commands  cmd,
const PString args 
) [protected]
PTCPSocket* PFTPClient::PutFile ( const PString filename,
DataChannelType  channel = NormalPort 
)

Begin storing a file to the remote FTP server. The second parameter indicates that the transfer is on a normal or passive data channel. In short, a normal transfer the server connects to the client and in passive mode the client connects to the server.

Returns:
Socket to write data to, or NULL if an error occurred.
Parameters:
filenameName of file to get
channelData channel type.

Set the transfer type.

Returns:
TRUE if transfer type set.
Parameters:
typeRepresentationTypeof file to transfer

Member Data Documentation

WORD PFTPClient::remotePort [protected]

Port number on remote system.


The documentation for this class was generated from the following file: