Rebex
Products Downloads Buy Support Contact
Show / Hide Table of Contents

FileTransferClient Class

Namespace: Rebex.Net
Assembly: Rebex.FileTransfer.dll (version 7.0.9147)

This class is based on IFtp interface and provide common functionality for FTP, FTP/SSL and SFTP protocols.

Syntax
public class FileTransferClient : NetworkSession, ILogWriterProvider, IFtp, IDisposable
Inheritance
Object
NetworkSession
FileTransferClient
Implements
ILogWriterProvider
IFtp
IDisposable
Inherited Members
NetworkSession.DefaultLogWriter
NetworkSession.GetHashCode()
NetworkSession.InstanceId
NetworkSession.LogWriter
Object.Equals(Object)
Object.Equals(Object, Object)
Object.GetType()
Object.MemberwiseClone()
Object.ReferenceEquals(Object, Object)
Object.ToString()

Constructors

Name Description
FileTransferClient()

Creates new instance of FileTransferClient class.

Properties

Name Description
DefaultLogWriter

Gets or sets a default log writer used by all new instances of NetworkSession object. Inherited from NetworkSession.

Encoding

Gets or sets the Encoding to use to encode and decode command parameters and server responses.

Fingerprint

Gets the server public key fingerprint (for SFTP) or the server certificate thumbprint (for FTP/SSL).

FtpPassiveMode

Gets or sets a value which specifies the way data transfers are made. This is used only when FTP protocol is used.

FtpTransferMode

Gets or sets the data transfer mode. This is used only when FTP protocol is used.

Inner

Gets the inner protocol client. It can be Ftp or Sftp class instance. This is based on Connect method parameter.

InstanceId

Gets instance ID (intended for logging purposes). Inherited from NetworkSession.

IsAuthenticated

Gets a value indicating whether the session is authenticated.

IsBusy

Gets a value indicating whether there any operation (method) in progress. This is used only when FTP protocol is used.

IsConnected

Gets a value indicating whether the session is connected.

IsSecured

Gets the value indicating whether the control connection is secured.

LocalEndPoint

Gets the local client EndPoint.

LogWriter

Gets or sets the LogWriter used by this object. Inherited from NetworkSession.

MaxDownloadSpeed

Gets or sets the maximum allowed download speed, in kilobytes. For unlimited speed, set this to zero.

MaxUploadSpeed

Gets or sets the maximum allowed upload speed, in kilobytes. For unlimited speed, set this to zero.

Proxy

Gets or sets the network proxy to use to access a remote server.

RemoteEndPoint

Gets the remote server EndPoint.

ServerName

Gets the server name, if available.

ServerPort

Gets the server port, if available.

Settings

Gets the options set used by this object.

SshSession

Gets the SSH session used by the SFTP part of the client.

Timeout

Gets or sets the length of time in milliseconds before the operation times out (specify -1 or 0 to indicate that the request does not time out).

TransferType

Gets or sets the data transfer type.

UserName

Gets the authenticated user name, if available.

Methods

Name Description
Abort()

Abort pending operations.

ChangeDirectory(String)

Changes the current working directory on the server.

ChangeDirectoryAsync(String, Object)

Changes the current working directory on the server.

CheckConnectionState()

Checks whether the session is still connected. Throws an exception on error.

Connect(String, FileTransferMode)

Connects to the server using chosen protocol.

Connect(String, Int32, FileTransferMode)

Connects to the server using chosen protocol.

ConnectAsync(String, FileTransferMode, Object)

Begins asynchronous Connect operation. Connects to the server using chosen protocol.

ConnectAsync(String, Int32, FileTransferMode, Object)

Begins asynchronous Connect operation. Connects to the server using chosen protocol.

CreateDirectory(String)

Creates a directory on the server.

CreateDirectoryAsync(String, Object)

Creates a directory on the server.

Delete(FileSet)

Deletes specified files and/or directories on the server.

Delete(String, TraversalMode)

Deletes specified files and/or directories on the server. Accepts wildcards.

DeleteAsync(FileSet, Object)

Deletes specified files and/or directories on the server.

DeleteAsync(String, TraversalMode, Object)

Deletes specified files and/or directories on the server. Accepts wildcards.

DeleteFile(String)

Deletes a file on the server.

DeleteFileAsync(String, Object)

Deletes a file on the server.

DirectoryExists(String)

Detects whether the specified directory exists on the server.

DirectoryExistsAsync(String, Object)

Detects whether the specified directory exists on the server.

Disconnect()

Informs the server that the connection is about to close and terminates the connection.

DisconnectAsync(Object)

Informs the server that the connection is about to close and terminates the connection.

Dispose()

Disposes the object. After calling this the inner instance will be disposed as well and Inner will be set to null.

Download(FileSet, String)

Downloads the specified files and/or directories from the server to the local directory.

Download(FileSet, String, TransferMethod, ActionOnExistingFiles)

Downloads the specified files and/or directories from the server to the local directory.

Download(String, String)

Downloads the specified file or directory hierarchy from the server to the local directory. Accepts wildcards.

Download(String, String, TraversalMode)

Downloads the specified file or directory hierarchy from the server to the local directory. Accepts wildcards.

Download(String, String, TraversalMode, TransferMethod, ActionOnExistingFiles)

Downloads the specified file or directory hierarchy from the server to the local directory. Accepts wildcards.

DownloadAsync(FileSet, String, TransferMethod, ActionOnExistingFiles, Object)

Downloads the specified files and/or directories from the server to the local directory.

DownloadAsync(String, String, TraversalMode, TransferMethod, ActionOnExistingFiles, Object)

Downloads the specified file or directory hierarchy from the server to the local directory. Accepts wildcards.

FileExists(String)

Detects whether the specified file exists on the server.

FileExistsAsync(String, Object)

Detects whether the specified file exists on the server.

GetChecksum(String, ChecksumAlgorithm)

Returns the checksum of the specified file on the server.

GetChecksum(String, ChecksumAlgorithm, Int64, Int64)

Returns the checksum of the specified file on the server.

GetCurrentDirectory()

Gets the absolute path of the current working directory on the remote server.

GetCurrentDirectoryAsync(Object)

Gets the absolute path of the current working directory on the remote server.

GetDownloadStream(String)

Returns a Stream for reading data from the remote file.

GetDownloadStream(String, SeekOrigin, Int64)

Returns a Stream for reading data from the remote file.

GetDownloadStreamAsync(String, SeekOrigin, Int64, Object)

Returns a Stream for reading data from the remote file.

GetFile(String, Stream)

Downloads the remote file to the data stream.

GetFile(String, Stream, Int64)

Downloads the specified part of the remote file to the data stream.

GetFile(String, String)

Downloads the remote file to the local file, overriding it if it already exists.

GetFile(String, String, Int64, Int64)

Downloads the specified part of the remote file to the specified offset of the local file.

GetFileAsync(String, Stream, Int64, Object)

Downloads the specified part of the remote file to the data stream.

GetFileAsync(String, Stream, Object)

Downloads the specified emote file to the data stream.

GetFileAsync(String, String, Int64, Int64, Object)

Downloads the specified part of the remote file to the specified offset of the local file.

GetFileAsync(String, String, Object)

Downloads the remote file to the specified local file.

GetFileDateTime(String)

Retrieves the modification date and time of the specified remote file.

GetFileDateTimeAsync(String, Object)

Retrieves the modification date and time of the specified remote file.

GetFileLength(String)

Retrieves the size of the specified remote file.

GetFileLengthAsync(String, Object)

Retrieves the size of the specified remote file.

GetHashCode()

Gets hash code for this object. Inherited from NetworkSession.

GetInfo(String, Boolean)

Retrieves a FileSystemItem containing the information about the specified remote file or directory.

GetInfoAsync(String, Boolean, Object)

Retrieves a FileSystemItem containing the information about the specified remote file or directory.

GetItems(FileSet)

Retrieves the list of files and directories specified by the set.

GetItems(String)

Retrieves the list of files and directories. Matching directories are searched recursively.

GetItems(String, TraversalMode)

Retrieves the list of files and directories.

GetItemsAsync(FileSet, Object)

Retrieves the list of files and directories specified by the set.

GetItemsAsync(String, TraversalMode, Object)

Retrieves the list of files and directories.

GetList()

Retrieves the list of files and directories in the current server directory.

GetList(String)

Retrieves the list of files and directories in the current server directory.

GetListAsync(Object)

Retrieves the list of files and directories in the current server directory.

GetListAsync(String, Object)

Retrieves the list of files and directories in the current server directory.

GetNameList()

Retrieves the list of file and directory names in the current remote directory.

GetNameList(String)

Retrieves the list of file and directory names.

GetNameListAsync(Object)

Retrieves the list of file and directory names.

GetNameListAsync(String, Object)

Retrieves the list of file and directory names.

GetRawList()

Retrieves the raw list of files and directories in the current remote directory using a raw text format.

GetRawList(String)

Retrieves the raw list of files and directories using a raw text format.

GetRawListAsync(Object)

Retrieves the raw list of files and directories using a raw text format.

GetRawListAsync(String, Object)

Retrieves the raw list of files and directories using a raw text format.

GetUploadStream(String)

Returns a Stream for writing data to the remote file.

GetUploadStream(String, SeekOrigin, Int64)

Returns a Stream for writing data to the remote file.

GetUploadStreamAsync(String, SeekOrigin, Int64, Object)

Returns a Stream for writing data to the remote file.

KeepAlive()

Sends a command to the server to keep the connection alive.

KeepAliveAsync(Object)

Sends a command to the server to keep the connection alive.

Login(SshGssApiCredentials)

Authenticates to the server using GSSAPI. Kerberos (not on .NET CF) and NTLM methods are supported. This method cannot be used with FTP protocol.

Login(String, SshAuthenticationAgent)

Authenticates the user to the server using his private key and initializes the SFTP session. This method cannot be used with FTP protocol.

Login(String, SshPrivateKey)

Authenticates the user to the server using his private key and initializes the SFTP session.

Login(String, String)

Authenticates the user to the server.

Login(String, String, SshAuthenticationAgent)

Authenticates the user to the server using a combination of password and public key and initializes the SFTP session. This method cannot be used with FTP protocol.

Login(String, String, SshPrivateKey)

Authenticates the user to the server using a combination of password and public key and initializes the SFTP session. This method cannot be used with FTP protocol.

Login(String, String, String)

Authenticates the user to the FTP server. This method cannot be used with SFTP protocol.

LoginAsync(SshGssApiCredentials, Object)

Authenticates to the server using GSSAPI. Kerberos (not on .NET CF) and NTLM methods are supported. This method cannot be used with FTP protocol.

LoginAsync(String, SshAuthenticationAgent, Object)

Asynchronously authenticates the user to the server using his private key and initializes the SFTP session. This method cannot be used with FTP protocol.

LoginAsync(String, SshPrivateKey, Object)

Begins asynchronous Login operation. Authenticates the user to the server using his private key and initializes the SFTP session.

LoginAsync(String, String, SshAuthenticationAgent, Object)

Asynchronously authenticates the user to the server using a combination of password and public key and initializes the SFTP session. This method cannot be used with FTP protocol.

LoginAsync(String, String, SshPrivateKey, Object)

Begins asynchronous Login operation. Authenticates the user to the server using a combination of password and public key and initializes the SFTP session. This method cannot be used with FTP protocol.

LoginAsync(String, String, Object)

Begins asynchronous Login operation. Authenticates the user to the server.

LoginAsync(String, String, String, Object)

Begins asynchronous Login operation. Authenticates the user to the FTP server. This method cannot be used with SFTP protocol.

PutFile(Stream, String)

Uploads the content of the data stream to the file on the server, overriding it if it already exists.

PutFile(Stream, String, Int64, Int64)

Uploads the content of the data stream to the specified offset of the file on the server.

PutFile(String, String)

Uploads the content of the local file to the file on the server, overriding it if it already exists.

PutFile(String, String, Int64, Int64, Int64)

Uploads the specified part of the local file to the specified offset of the file on the server.

PutFileAsync(Stream, String, Int64, Int64, Object)

Uploads the content of the data stream to the specified offset of the file on the server.

PutFileAsync(Stream, String, Object)

Uploads the content of the data stream to the specified offset of the file on the server.

PutFileAsync(String, String, Int64, Int64, Int64, Object)

Uploads the specified part of the local file to the specified offset of the file on the server.

PutFileAsync(String, String, Object)

Uploads the specified part of the local file to the specified offset of the file on the server.

RemoveDirectory(String)

Deletes an empty remote directory with the specified pathname.

RemoveDirectoryAsync(String, Object)

Deletes an empty remote directory with the specified pathname.

Rename(String, String)

Renames or moves a file or directory on the server.

RenameAsync(String, String, Object)

Renames a file or directory on the server.

SetFileDateTime(String, DateTime)

Sets the modification date and time of the specified remote file.

SetFileDateTimeAsync(String, DateTime, Object)

Sets the modification date and time of the specified remote file.

SetSocketFactory(ISocketFactory)

Sets the socket factory to be used to create communication sockets.

Upload(FileSet, String)

Uploads the specified local files and/or directories to the directory to the server.

Upload(FileSet, String, TransferMethod, ActionOnExistingFiles)

Uploads the specified local files and/or directories to the directory to the server.

Upload(String, String)

Uploads the specified file or directory hierarchy to the directory on the server. Accepts wildcards.

Upload(String, String, TraversalMode)

Uploads the specified file or directory hierarchy to the directory on the server. Accepts wildcards.

Upload(String, String, TraversalMode, TransferMethod, ActionOnExistingFiles)

Uploads the specified file or directory hierarchy to the directory on the server. Accepts wildcards.

UploadAsync(FileSet, String, TransferMethod, ActionOnExistingFiles, Object)

Uploads the specified local files and/or directories to the directory to the server.

UploadAsync(String, String, TraversalMode, TransferMethod, ActionOnExistingFiles, Object)

Uploads the specified file or directory hierarchy to the directory on the server. Accepts wildcards.

Events

Name Description
DeleteProgressChanged

Occurs when a significant action occurs in Delete(String, TraversalMode) method. Notifies the client about currently processing directory, currently deleting file and progress of the delete.

FingerprintCheck

Occurs when a fingerprint is received from the server and needs to be validated.

ListItemReceived

Occurs when a file and directory listing item is received by the GetList(), GetRawList(), GetNameList() or GetItems(String) methods. Notifies the client about currently processed item.

ProblemDetected

Occurs when a problem is detected in Download(String, String), Upload(String, String), Delete(String, TraversalMode) or GetItems(String) methods, making it possible for the handler to choose a desired reaction.

TransferProgressChanged

Occurs when a significant action occurs in Download(String, String), Upload(String, String) methods. Notifies the client about currently processing directory, currently transferring file and progress of the transfer.

Traversing

Occurs when a significant action occurs in Download(String, String), Upload(String, String), Delete(String, TraversalMode) or GetItems(String) methods. Notifies the client about traversing hierarchy structure.

ValidatingCertificate

Occurs when an FTP/SSL server certificate needs to be validated.

Explicit Interface Implementations

Name Description
IFtp.Settings

Gets the options set used by this object.

In This Article
  • Constructors
  • Properties
  • Methods
  • Events
  • Explicit Interface Implementations
© REBEX ČR s.r.o. Back to top
Privacy policy
Manage cookies