FtpClient

Overview

The FtpClient class provides methods to communicate with a remote FTP server.

The following example shows how the FtpClient class can be used to connect to a remote FTP server and to retrieve the root directory list:

var ftpCilent = new FtpClient()
    {
        HostAddress = IPAddress.Parse("192.168.0.100"),
        Port = 2211,
        UserName = "%your_login%",
        Password = "%your_password%",
        ShowHiddenFiles = true
    };
ftpCilent.Open();
ftpCilent.Login();
ftpCilent.List(); // default is root directory

foreach (FtpListingItem item in ftpCilent.CurrentDirectoryContents)
{
    Console.WriteLine(item.FileName);
}

Location


 

constructor

Creates a new instance of the FtpClient class.

 

constructor

 

FtpClient()

 

init()

 

Sub New()

Account  virtual

Gets or sets the account information that can be sent to the server using the SendAccount method.

Account information can be considered as a kind of password that the remote system uses to grant certain privileges. The exact form and meaning of the account information depends on the specific FTP server implementation.

 

property Account: String read write;

 

String Account { get; set; }

 

var Account: String { get{} set{} }

 

Property Account() As String

AutoRetrieveListing  virtual

Gets or sets a flag that enables or disables automatic retrieving of directory listings when the current remote directory is changed.

 

property AutoRetrieveListing: Boolean read write;

 

Boolean AutoRetrieveListing { get; set; }

 

var AutoRetrieveListing: Boolean { get{} set{} }

 

Property AutoRetrieveListing() As Boolean

Binding  virtual    (declared in Client)

Obsolete - Please use BindingV4 and BindingV6 instead.

 

property Binding: Binding read;

 

Binding Binding { get; }

 

var Binding: Binding { get{} }

 

ReadOnly Property Binding() As Binding

BindingV4  virtual    (declared in Client)

Gets the binding which provides properties and methods such as address family, IPv4 address, port number etc for client to connect to the host network.

 

property BindingV4: Binding read;

 

Binding BindingV4 { get; }

 

var BindingV4: Binding { get{} }

 

ReadOnly Property BindingV4() As Binding

BindingV6  virtual    (declared in Client)

Gets the binding which provides properties and methods such as address family, IPv6 address, port number etc for client to connect to the host network.

 

property BindingV6: Binding read;

 

Binding BindingV6 { get; }

 

var BindingV6: Binding { get{} }

 

ReadOnly Property BindingV6() As Binding

ChangeDirectory  virtual

Changes the current directory to the specified one.

Uses the FTP protocol command CWD.

 

method ChangeDirectory(directory: String)

 

void ChangeDirectory(String directory)

 

func ChangeDirectory(_ directory: String)

 

Sub ChangeDirectory(directory As String)

Parameters:

  • directory:

ChangeToParentDirectory  virtual

Changes the current directory to its parent directory.

Uses the FTP protocol command CDUP.

 

method ChangeToParentDirectory

 

void ChangeToParentDirectory()

 

func ChangeToParentDirectory()

 

Sub ChangeToParentDirectory()

Close  override

Closes the connection to the FTP server. This method doesn't send the QUIT FTP command to the server.

 

method Close

 

void Close()

 

func Close()

 

Sub Close()

Connect  virtual    (declared in Client)

 

method Connect: Connection

 

Connection Connect()

 

func Connect() -> Connection

 

Function Connect() As Connection

Connect (IPAddress, Int32): Connection  virtual    (declared in Client)

 

method Connect(host: IPAddress; port: Int32): Connection

 

Connection Connect(IPAddress host, Int32 port)

 

func Connect(_ host: IPAddress, _ port: Int32) -> Connection

 

Function Connect(host As IPAddress, port As Int32) As Connection

Parameters:

  • host:
  • port:

Connect (String, Int32): Connection  virtual    (declared in Client)

 

method Connect(hostname: String; port: Int32): Connection

 

Connection Connect(String hostname, Int32 port)

 

func Connect(_ hostname: String, _ port: Int32) -> Connection

 

Function Connect(hostname As String, port As Int32) As Connection

Parameters:

  • hostname:
  • port:

Connect (IPAddress, Int32, Binding): Connection  virtual    (declared in Client)

Overloaded. Use to connect the client to a remote network host using the specified host name (HostName) or IP address (HostAddress) and port number (Port) and/or Binding (BindingV4 or BindingV6).

 

class method Connect(host: IPAddress; port: Int32; binding: Binding): Connection

 

static Connection Connect(IPAddress host, Int32 port, Binding binding)

 

static func Connect(_ host: IPAddress, _ port: Int32, _ binding: Binding) -> Connection

 

Shared Function Connect(host As IPAddress, port As Int32, binding As Binding) As Connection

Parameters:

  • host:
  • port:
  • binding:

Connect (String, Int32, Binding): Connection  virtual    (declared in Client)

Overloaded. Use to connect the client to a remote network host using the specified host name (HostName) or IP address (HostAddress) and port number (Port) and/or Binding (BindingV4 or BindingV6).

 

class method Connect(hostname: String; port: Int32; binding: Binding): Connection

 

static Connection Connect(String hostname, Int32 port, Binding binding)

 

static func Connect(_ hostname: String, _ port: Int32, _ binding: Binding) -> Connection

 

Shared Function Connect(hostname As String, port As Int32, binding As Binding) As Connection

Parameters:

  • hostname:
  • port:
  • binding:

Connected  virtual    (declared in CommandBasedClient)

Returns the state of CurrentConnection. If it is false then CurrentConnection is not specified (null).

 

property Connected: Boolean read;

 

Boolean Connected { get; }

 

var Connected: Boolean { get{} }

 

ReadOnly Property Connected() As Boolean

ConnectionClass    (declared in Client) .NET, .NET Core 5.0, .NET Standard 2.0

Use the ConnectionClass property to specify an alternative Connection class to be used for out coming data connections. The class described by the assigned Type must be a descendant of Connection, and will be used for all connections that are established after the property has been set. Existing connections are not affected by changing the property.

If ConnectionType is null (default), instances of the Connection base class will be used.

 

property ConnectionClass: Type read write;

 

Type ConnectionClass { get; set; }

 

var ConnectionClass: Type { get{} set{} }

 

Property ConnectionClass() As Type

ConnectionFactory  virtual    (declared in Client)

Represents an interface for a connection.

 

property ConnectionFactory: IConnectionFactory read write;

 

IConnectionFactory ConnectionFactory { get; set; }

 

var ConnectionFactory: IConnectionFactory { get{} set{} }

 

Property ConnectionFactory() As IConnectionFactory

ConnectionPool  protected virtual    (declared in Client)

 

property ConnectionPool: ConnectionPool read write;

 

ConnectionPool ConnectionPool { get; set; }

 

var ConnectionPool: ConnectionPool { get{} set{} }

 

Property ConnectionPool() As ConnectionPool

ConnectNew  virtual    (declared in Client)

 

method ConnectNew: Connection

 

Connection ConnectNew()

 

func ConnectNew() -> Connection

 

Function ConnectNew() As Connection

ConnectNew (IPAddress, Int32): Connection  virtual    (declared in Client)

Overloaded. Opens and returns new connection with specified IP address and port.

 

method ConnectNew(host: IPAddress; port: Int32): Connection

 

Connection ConnectNew(IPAddress host, Int32 port)

 

func ConnectNew(_ host: IPAddress, _ port: Int32) -> Connection

 

Function ConnectNew(host As IPAddress, port As Int32) As Connection

Parameters:

  • host:
  • port:

ConnectNew (String, Int32): Connection  virtual    (declared in Client)

 

method ConnectNew(hostname: String; port: Int32): Connection

 

Connection ConnectNew(String hostname, Int32 port)

 

func ConnectNew(_ hostname: String, _ port: Int32) -> Connection

 

Function ConnectNew(hostname As String, port As Int32) As Connection

Parameters:

  • hostname:
  • port:

CurrentConnection  virtual    (declared in CommandBasedClient)

Returns current connection.

 

property CurrentConnection: Connection read;

 

Connection CurrentConnection { get; }

 

var CurrentConnection: Connection { get{} }

 

ReadOnly Property CurrentConnection() As Connection

CurrentDirectoryContents  virtual

The FtpListing instance representing the contents of the current directory on the remote server.

 

property CurrentDirectoryContents: FtpListing read;

 

FtpListing CurrentDirectoryContents { get; }

 

var CurrentDirectoryContents: FtpListing { get{} }

 

ReadOnly Property CurrentDirectoryContents() As FtpListing

Delete  virtual

Deletes the specified file.

Uses the FTP protocol command DELE.

 

method Delete(filename: String)

 

void Delete(String filename)

 

func Delete(_ filename: String)

 

Sub Delete(filename As String)

Parameters:

  • filename:

Dispose  protected virtual    (declared in Component) Island, Toffee

 

method Dispose(disposing: Boolean)

 

void Dispose(Boolean disposing)

 

func Dispose(_ disposing: Boolean)

 

Sub Dispose(disposing As Boolean)

Parameters:

  • disposing:

DnsResolveType  virtual    (declared in Client)

Determines if the specified HostName should be look up only Once per application run (if you establish multiple connections to the server, the subsequent connections will use the cached IPAddress) or Always, for each connect (the Hostname will be resolved again for each subsequet connect).

You'll usually only change this setting off the defaut (Once) if you anticipate the IPAddress of the target host to change frequently.

 

// .NET, .NET Core 5.0, .NET Standard 2.0
[DefaultValue(DnsResolveType.Once)]
property DnsResolveType: DnsResolveType read write;
// Island
property DnsResolveType: DnsResolveType read write;

 

// .NET, .NET Core 5.0, .NET Standard 2.0
[DefaultValue(DnsResolveType.Once)]
DnsResolveType DnsResolveType { get; set; }
// Island
DnsResolveType DnsResolveType { get; set; }

 

// .NET, .NET Core 5.0, .NET Standard 2.0
@DefaultValue(DnsResolveType.Once)
var DnsResolveType: DnsResolveType { get{} set{} }
// Island, Toffee
var DnsResolveType: DnsResolveType { get{} set{} }

 

// .NET, .NET Core 5.0, .NET Standard 2.0
<DefaultValue(DnsResolveType.Once)>
Property DnsResolveType() As DnsResolveType
// Island
Property DnsResolveType() As DnsResolveType

EnableNagle  virtual    (declared in Client)

Set its value to true to enable the Nagle algorithm for send coalescing.

 

// .NET, .NET Core 5.0, .NET Standard 2.0
[DefaultValue(false)]
property EnableNagle: Boolean read write;
// Island
property EnableNagle: Boolean read write;

 

// .NET, .NET Core 5.0, .NET Standard 2.0
[DefaultValue(false)]
Boolean EnableNagle { get; set; }
// Island
Boolean EnableNagle { get; set; }

 

// .NET, .NET Core 5.0, .NET Standard 2.0
@DefaultValue(false)
var EnableNagle: Boolean { get{} set{} }
// Island, Toffee
var EnableNagle: Boolean { get{} set{} }

 

// .NET, .NET Core 5.0, .NET Standard 2.0
<DefaultValue(false)>
Property EnableNagle() As Boolean
// Island
Property EnableNagle() As Boolean

Encoding  virtual

Gets or sets the encoding for Retrieve, List and other methods that need proper encoding.

The default encoding is UTF-8.

 

property Encoding: Encoding read write;

 

Encoding Encoding { get; set; }

 

var Encoding: Encoding { get{} set{} }

 

Property Encoding() As Encoding

GetConnection  protected virtual    (declared in Client)

 

method GetConnection(host: IPAddress; port: Int32): Connection

 

Connection GetConnection(IPAddress host, Int32 port)

 

func GetConnection(_ host: IPAddress, _ port: Int32) -> Connection

 

Function GetConnection(host As IPAddress, port As Int32) As Connection

Parameters:

  • host:
  • port:

GetCurrentDirectory  virtual

Returns the name of the current directory.

Uses the FTP protocol command PWD.

 

method GetCurrentDirectory: String

 

String GetCurrentDirectory()

 

func GetCurrentDirectory() -> String

 

Function GetCurrentDirectory() As String

HostAddress  virtual    (declared in Client)

Gets or sets an Internet Protocol (IP) address.

 

property HostAddress: IPAddress read write;

 

IPAddress HostAddress { get; set; }

 

var HostAddress: IPAddress { get{} set{} }

 

Property HostAddress() As IPAddress

HostName  virtual    (declared in Client)

The server host name or IP address that you intend the client to connect to.

 

property HostName: String read write;

 

String HostName { get; set; }

 

var HostName: String { get{} set{} }

 

Property HostName() As String

LastResponseNo  virtual    (declared in CommandBasedClient)

 

property LastResponseNo: Int32 read;

 

Int32 LastResponseNo { get; }

 

var LastResponseNo: Int32 { get{} }

 

ReadOnly Property LastResponseNo() As Int32

LastResponseText  virtual    (declared in CommandBasedClient)

 

property LastResponseText: String read;

 

String LastResponseText { get; }

 

var LastResponseText: String { get{} }

 

ReadOnly Property LastResponseText() As String

List  virtual

Returns the list of files in the current working directory.

Uses the FTP protocol command LIST.

 

method List: String

 

String List()

 

func List() -> String

 

Function List() As String

List (Boolean): String  virtual

Returns the list of files in the current working directory.

Uses the FTP protocol command LIST.

 

method List(showHiddenFiles: Boolean): String

 

String List(Boolean showHiddenFiles)

 

func List(_ showHiddenFiles: Boolean) -> String

 

Function List(showHiddenFiles As Boolean) As String

Parameters:

  • showHiddenFiles:

Login  virtual

Attempts to login to the remote server using the UserName and Password property values as credentials.

 

method Login

 

void Login()

 

func Login()

 

Sub Login()

MakeDirectory  virtual

Creates a new directory on the remote server.

Uses the FTP protocol command MKD.

 

method MakeDirectory(directory: String)

 

void MakeDirectory(String directory)

 

func MakeDirectory(_ directory: String)

 

Sub MakeDirectory(directory As String)

Parameters:

  • directory:

NewConnection  protected virtual    (declared in Client)

 

method NewConnection(binding: Binding): Connection

 

Connection NewConnection(Binding binding)

 

func NewConnection(_ binding: Binding) -> Connection

 

Function NewConnection(binding As Binding) As Connection

Parameters:

  • binding:

OnLog    (declared in CommandBasedClient)

 

event OnLog: ClientLogEvent
delegate: method OnLog(sender: Object; e: ClientLogArgs)

 

delegate ClientLogEvent OnLog()
delegate: void OnLog(Object sender, ClientLogArgs e)

 

__event ClientLogEvent: OnLog!
delegate: func OnLog(_ sender: Object, _ e: ClientLogArgs)

 

Event OnLog As ClientLogEvent
delegate: Sub OnLog(sender As Object, e As ClientLogArgs)

OnNewListing

This event is raised when a file listing is retrieved from the remote server.

 

event OnNewListing: EventHandler

 

delegate EventHandler OnNewListing()

 

__event EventHandler: OnNewListing!

 

Event OnNewListing As EventHandler

OnResolvedHostName    (declared in Client)

This event is fired after the hostname has been successfully resolved.

 

event OnResolvedHostName: OnResolvedHostNameEventHandler
delegate: method OnResolvedHostName(sender: Object; e: OnResolvedHostNameEventArgs)

 

delegate OnResolvedHostNameEventHandler OnResolvedHostName()
delegate: void OnResolvedHostName(Object sender, OnResolvedHostNameEventArgs e)

 

__event OnResolvedHostNameEventHandler: OnResolvedHostName!
delegate: func OnResolvedHostName(_ sender: Object, _ e: OnResolvedHostNameEventArgs)

 

Event OnResolvedHostName As OnResolvedHostNameEventHandler
delegate: Sub OnResolvedHostName(sender As Object, e As OnResolvedHostNameEventArgs)

OnResolveHostName    (declared in Client)

This event is fired before the Client attepts to resolve the sepcifed HostName to an IP address. It provides you with an option to perform the resolution yourself, obtain the IP address from an internal cache you're maintaing, or do some other processing (such as for example chaging the hostname to look up).

 

event OnResolveHostName: OnResolveHostNameEventHandler
delegate: method OnResolveHostName(sender: Object; e: OnResolveHostNameEventArgs)

 

delegate OnResolveHostNameEventHandler OnResolveHostName()
delegate: void OnResolveHostName(Object sender, OnResolveHostNameEventArgs e)

 

__event OnResolveHostNameEventHandler: OnResolveHostName!
delegate: func OnResolveHostName(_ sender: Object, _ e: OnResolveHostNameEventArgs)

 

Event OnResolveHostName As OnResolveHostNameEventHandler
delegate: Sub OnResolveHostName(sender As Object, e As OnResolveHostNameEventArgs)

OnTransferProgress

This event is raised whenever any data package is sent in any direction.

 

event OnTransferProgress: TransferProgressEventHandler
delegate: method OnTransferProgress(sender: Object; e: TransferProgressEventArgs)

 

delegate TransferProgressEventHandler OnTransferProgress()
delegate: void OnTransferProgress(Object sender, TransferProgressEventArgs e)

 

__event TransferProgressEventHandler: OnTransferProgress!
delegate: func OnTransferProgress(_ sender: Object, _ e: TransferProgressEventArgs)

 

Event OnTransferProgress As TransferProgressEventHandler
delegate: Sub OnTransferProgress(sender As Object, e As TransferProgressEventArgs)

OnTransferStart

This event is raised before a data transfer between client and remote server is started.

 

event OnTransferStart: TransferStartEventHandler
delegate: method OnTransferStart(sender: Object; e: TransferStartEventArgs)

 

delegate TransferStartEventHandler OnTransferStart()
delegate: void OnTransferStart(Object sender, TransferStartEventArgs e)

 

__event TransferStartEventHandler: OnTransferStart!
delegate: func OnTransferStart(_ sender: Object, _ e: TransferStartEventArgs)

 

Event OnTransferStart As TransferStartEventHandler
delegate: Sub OnTransferStart(sender As Object, e As TransferStartEventArgs)

Open  override

Opens a connection to the remote server using the specified HostName or both the HostAddress and Port property values.

 

method Open

 

void Open()

 

func Open()

 

Sub Open()

Passive  virtual

Gets or sets a flag indicating that passive FTP mode should be used.

 

property Passive: Boolean read write;

 

Boolean Passive { get; set; }

 

var Passive: Boolean { get{} set{} }

 

Property Passive() As Boolean

Password  virtual

Gets or sets a password used for authentication on the FTP server.

 

property Password: String read write;

 

String Password { get; set; }

 

var Password: String { get{} set{} }

 

Property Password() As String

Port  virtual    (declared in Client)

The server Port that you intend the client to connect to.

 

property Port: Int32 read write;

 

Int32 Port { get; set; }

 

var Port: Int32 { get{} set{} }

 

Property Port() As Int32

Quit  virtual

Performs a logout from the remote server.

Uses the FTP protocol command QUIT.

 

method Quit

 

void Quit()

 

func Quit()

 

Sub Quit()

ReleaseConnection  protected virtual    (declared in Client)

 

method ReleaseConnection(connection: Connection)

 

void ReleaseConnection(Connection connection)

 

func ReleaseConnection(_ connection: Connection)

 

Sub ReleaseConnection(connection As Connection)

Parameters:

  • connection:

RemoveDirectory (String)  virtual

Deletes a directory on the remote server. This method cannot process non-empty directories.

Uses the FTP protocol command RMD.

 

method RemoveDirectory(directory: String)

 

void RemoveDirectory(String directory)

 

func RemoveDirectory(_ directory: String)

 

Sub RemoveDirectory(directory As String)

Parameters:

  • directory:

RemoveDirectory (String, Boolean)  virtual

Deletes a directory on the remote server. This method can not only delete the directory but also its sub-directories and all files they contain.

Uses the FTP protocol command RMD.

 

method RemoveDirectory(directory: String; recursive: Boolean)

 

void RemoveDirectory(String directory, Boolean recursive)

 

func RemoveDirectory(_ directory: String, _ recursive: Boolean)

 

Sub RemoveDirectory(directory As String, recursive As Boolean)

Parameters:

  • directory:
  • recursive:

Rename  virtual

Renames a file on the remote server.

Uses the FTP protocol commands RNFR and RNTO.

 

method Rename(from: String; to: String)

 

void Rename(String from, String to)

 

func Rename(_ from: String, _ to: String)

 

Sub Rename(from As String, to As String)

Parameters:

  • from:
  • to:

ResolveHostName  protected virtual    (declared in Client)

 

method ResolveHostName

 

void ResolveHostName()

 

func ResolveHostName()

 

Sub ResolveHostName()

ResolveHostNameIfNeeded  protected virtual    (declared in Client)

 

method ResolveHostNameIfNeeded

 

void ResolveHostNameIfNeeded()

 

func ResolveHostNameIfNeeded()

 

Sub ResolveHostNameIfNeeded()

Retrieve (String, Int64, Stream)  virtual

Retrieves a file and puts its contents into the provided stream.

Uses the FTP protocol command RETR.

 

method Retrieve(filename: String; size: Int64; stream: Stream)

 

void Retrieve(String filename, Int64 size, Stream stream)

 

func Retrieve(_ filename: String, _ size: Int64, _ stream: Stream)

 

Sub Retrieve(filename As String, size As Int64, stream As Stream)

Parameters:

  • filename:
  • size:
  • stream:

Retrieve (FtpListingItem, Stream)  virtual

Retrieves a file and puts its contents into the provided stream.

Uses the FTP protocol command RETR.

 

method Retrieve(item: FtpListingItem; stream: Stream)

 

void Retrieve(FtpListingItem item, Stream stream)

 

func Retrieve(_ item: FtpListingItem, _ stream: Stream)

 

Sub Retrieve(item As FtpListingItem, stream As Stream)

Parameters:

  • item:
  • stream:

SendAccount  virtual

Sends account information to the remote server.

Account information can be considered as a kind of password that the remote system uses to grant certain privileges. The exact form and meaning of the account information depends on the specific FTP server implementation.

Uses the FTP protocol command ACCT.

 

method SendAccount

 

void SendAccount()

 

func SendAccount()

 

Sub SendAccount()

SendAndWaitForResponse  protected virtual    (declared in CommandBasedClient)

 

method SendAndWaitForResponse(command: String; params validResponses: array of Int32): Boolean

 

Boolean SendAndWaitForResponse(String command, params Int32[] validResponses)

 

func SendAndWaitForResponse(_ command: String, _ validResponses: Int32...) -> Boolean

 

Function SendAndWaitForResponse(command As String, ParamArray validResponses As Int32()) As Boolean

Parameters:

  • command:
  • validResponses:

SendLog (TransferDirection, String, array of Object)  protected virtual    (declared in CommandBasedClient)

 

method SendLog(direction: TransferDirection; format: String; params parameters: array of Object)

 

void SendLog(TransferDirection direction, String format, params Object[] parameters)

 

func SendLog(_ direction: TransferDirection, _ format: String, _ parameters: Object...)

 

Sub SendLog(direction As TransferDirection, format As String, ParamArray parameters As Object())

Parameters:

  • direction:
  • format:
  • parameters:

SendLog (TransferDirection, String)  protected virtual    (declared in CommandBasedClient)

 

method SendLog(direction: TransferDirection; message: String)

 

void SendLog(TransferDirection direction, String message)

 

func SendLog(_ direction: TransferDirection, _ message: String)

 

Sub SendLog(direction As TransferDirection, message As String)

Parameters:

  • direction:
  • message:

SetType  virtual

Sets the FTP data transfer type to either I (binary type) or A (ascii type).

Uses the FTP protocol command TYPE.

 

method SetType(type: String)

 

void SetType(String type)

 

func SetType(_ type: String)

 

Sub SetType(type As String)

Parameters:

  • type:

ShowHiddenFiles  virtual

Gets or sets a flag that determines whether hidden files should be included into directory listings retrieved from the remote FTP server.

 

property ShowHiddenFiles: Boolean read write;

 

Boolean ShowHiddenFiles { get; set; }

 

var ShowHiddenFiles: Boolean { get{} set{} }

 

Property ShowHiddenFiles() As Boolean

StartActiveConnection  virtual

Opens a connection to the remote FTP server in active mode.

 

method StartActiveConnection

 

void StartActiveConnection()

 

func StartActiveConnection()

 

Sub StartActiveConnection()

StartPassiveConnection  virtual

Opens a connection to the remote FTP server in passive mode.

 

method StartPassiveConnection

 

void StartPassiveConnection()

 

func StartPassiveConnection()

 

Sub StartPassiveConnection()

Store  virtual

Sends a data stream to the remote server and stores it there as a file.

Uses the FTP protocol command STOR.

 

method Store(filename: String; stream: Stream)

 

void Store(String filename, Stream stream)

 

func Store(_ filename: String, _ stream: Stream)

 

Sub Store(filename As String, stream As Stream)

Parameters:

  • filename:
  • stream:

TriggerOnBytesReceived  protected virtual

 

method TriggerOnBytesReceived(sender: Object; e: EventArgs)

 

void TriggerOnBytesReceived(Object sender, EventArgs e)

 

func TriggerOnBytesReceived(_ sender: Object, _ e: EventArgs)

 

Sub TriggerOnBytesReceived(sender As Object, e As EventArgs)

Parameters:

  • sender:
  • e:

TriggerOnNewListing  protected virtual

 

method TriggerOnNewListing

 

void TriggerOnNewListing()

 

func TriggerOnNewListing()

 

Sub TriggerOnNewListing()

TriggerOnResolvedHostName  protected virtual    (declared in Client)

 

method TriggerOnResolvedHostName(e: OnResolvedHostNameEventArgs)

 

void TriggerOnResolvedHostName(OnResolvedHostNameEventArgs e)

 

func TriggerOnResolvedHostName(_ e: OnResolvedHostNameEventArgs)

 

Sub TriggerOnResolvedHostName(e As OnResolvedHostNameEventArgs)

Parameters:

  • e:

TriggerOnResolveHostName  protected virtual    (declared in Client)

 

method TriggerOnResolveHostName(e: OnResolveHostNameEventArgs)

 

void TriggerOnResolveHostName(OnResolveHostNameEventArgs e)

 

func TriggerOnResolveHostName(_ e: OnResolveHostNameEventArgs)

 

Sub TriggerOnResolveHostName(e As OnResolveHostNameEventArgs)

Parameters:

  • e:

TriggerOnTransferStart  protected virtual

 

method TriggerOnTransferStart(sender: Object; e: TransferStartEventArgs)

 

void TriggerOnTransferStart(Object sender, TransferStartEventArgs e)

 

func TriggerOnTransferStart(_ sender: Object, _ e: TransferStartEventArgs)

 

Sub TriggerOnTransferStart(sender As Object, e As TransferStartEventArgs)

Parameters:

  • sender:
  • e:

UserName  virtual

Gets or sets a user name used for authentication on the FTP server.

 

property UserName: String read write;

 

String UserName { get; set; }

 

var UserName: String { get{} set{} }

 

Property UserName() As String

WaitForResponse  protected virtual    (declared in CommandBasedClient)

 

method WaitForResponse(params validResponses: array of Int32): Boolean

 

Boolean WaitForResponse(params Int32[] validResponses)

 

func WaitForResponse(_ validResponses: Int32...) -> Boolean

 

Function WaitForResponse(ParamArray validResponses As Int32()) As Boolean

Parameters:

  • validResponses:

 

Account  virtual

Gets or sets the account information that can be sent to the server using the SendAccount method.

Account information can be considered as a kind of password that the remote system uses to grant certain privileges. The exact form and meaning of the account information depends on the specific FTP server implementation.

 

property Account: String read write;

 

String Account { get; set; }

 

var Account: String { get{} set{} }

 

Property Account() As String

AutoRetrieveListing  virtual

Gets or sets a flag that enables or disables automatic retrieving of directory listings when the current remote directory is changed.

 

property AutoRetrieveListing: Boolean read write;

 

Boolean AutoRetrieveListing { get; set; }

 

var AutoRetrieveListing: Boolean { get{} set{} }

 

Property AutoRetrieveListing() As Boolean

Binding  virtual    (declared in Client)

Obsolete - Please use BindingV4 and BindingV6 instead.

 

property Binding: Binding read;

 

Binding Binding { get; }

 

var Binding: Binding { get{} }

 

ReadOnly Property Binding() As Binding

BindingV4  virtual    (declared in Client)

Gets the binding which provides properties and methods such as address family, IPv4 address, port number etc for client to connect to the host network.

 

property BindingV4: Binding read;

 

Binding BindingV4 { get; }

 

var BindingV4: Binding { get{} }

 

ReadOnly Property BindingV4() As Binding

BindingV6  virtual    (declared in Client)

Gets the binding which provides properties and methods such as address family, IPv6 address, port number etc for client to connect to the host network.

 

property BindingV6: Binding read;

 

Binding BindingV6 { get; }

 

var BindingV6: Binding { get{} }

 

ReadOnly Property BindingV6() As Binding

Connected  virtual    (declared in CommandBasedClient)

Returns the state of CurrentConnection. If it is false then CurrentConnection is not specified (null).

 

property Connected: Boolean read;

 

Boolean Connected { get; }

 

var Connected: Boolean { get{} }

 

ReadOnly Property Connected() As Boolean

ConnectionClass    (declared in Client) .NET, .NET Core 5.0, .NET Standard 2.0

Use the ConnectionClass property to specify an alternative Connection class to be used for out coming data connections. The class described by the assigned Type must be a descendant of Connection, and will be used for all connections that are established after the property has been set. Existing connections are not affected by changing the property.

If ConnectionType is null (default), instances of the Connection base class will be used.

 

property ConnectionClass: Type read write;

 

Type ConnectionClass { get; set; }

 

var ConnectionClass: Type { get{} set{} }

 

Property ConnectionClass() As Type

ConnectionFactory  virtual    (declared in Client)

Represents an interface for a connection.

 

property ConnectionFactory: IConnectionFactory read write;

 

IConnectionFactory ConnectionFactory { get; set; }

 

var ConnectionFactory: IConnectionFactory { get{} set{} }

 

Property ConnectionFactory() As IConnectionFactory

ConnectionPool  protected virtual    (declared in Client)

 

property ConnectionPool: ConnectionPool read write;

 

ConnectionPool ConnectionPool { get; set; }

 

var ConnectionPool: ConnectionPool { get{} set{} }

 

Property ConnectionPool() As ConnectionPool

CurrentConnection  virtual    (declared in CommandBasedClient)

Returns current connection.

 

property CurrentConnection: Connection read;

 

Connection CurrentConnection { get; }

 

var CurrentConnection: Connection { get{} }

 

ReadOnly Property CurrentConnection() As Connection

CurrentDirectoryContents  virtual

The FtpListing instance representing the contents of the current directory on the remote server.

 

property CurrentDirectoryContents: FtpListing read;

 

FtpListing CurrentDirectoryContents { get; }

 

var CurrentDirectoryContents: FtpListing { get{} }

 

ReadOnly Property CurrentDirectoryContents() As FtpListing

DnsResolveType  virtual    (declared in Client)

Determines if the specified HostName should be look up only Once per application run (if you establish multiple connections to the server, the subsequent connections will use the cached IPAddress) or Always, for each connect (the Hostname will be resolved again for each subsequet connect).

You'll usually only change this setting off the defaut (Once) if you anticipate the IPAddress of the target host to change frequently.

 

// .NET, .NET Core 5.0, .NET Standard 2.0
[DefaultValue(DnsResolveType.Once)]
property DnsResolveType: DnsResolveType read write;
// Island
property DnsResolveType: DnsResolveType read write;

 

// .NET, .NET Core 5.0, .NET Standard 2.0
[DefaultValue(DnsResolveType.Once)]
DnsResolveType DnsResolveType { get; set; }
// Island
DnsResolveType DnsResolveType { get; set; }

 

// .NET, .NET Core 5.0, .NET Standard 2.0
@DefaultValue(DnsResolveType.Once)
var DnsResolveType: DnsResolveType { get{} set{} }
// Island, Toffee
var DnsResolveType: DnsResolveType { get{} set{} }

 

// .NET, .NET Core 5.0, .NET Standard 2.0
<DefaultValue(DnsResolveType.Once)>
Property DnsResolveType() As DnsResolveType
// Island
Property DnsResolveType() As DnsResolveType

EnableNagle  virtual    (declared in Client)

Set its value to true to enable the Nagle algorithm for send coalescing.

 

// .NET, .NET Core 5.0, .NET Standard 2.0
[DefaultValue(false)]
property EnableNagle: Boolean read write;
// Island
property EnableNagle: Boolean read write;

 

// .NET, .NET Core 5.0, .NET Standard 2.0
[DefaultValue(false)]
Boolean EnableNagle { get; set; }
// Island
Boolean EnableNagle { get; set; }

 

// .NET, .NET Core 5.0, .NET Standard 2.0
@DefaultValue(false)
var EnableNagle: Boolean { get{} set{} }
// Island, Toffee
var EnableNagle: Boolean { get{} set{} }

 

// .NET, .NET Core 5.0, .NET Standard 2.0
<DefaultValue(false)>
Property EnableNagle() As Boolean
// Island
Property EnableNagle() As Boolean

Encoding  virtual

Gets or sets the encoding for Retrieve, List and other methods that need proper encoding.

The default encoding is UTF-8.

 

property Encoding: Encoding read write;

 

Encoding Encoding { get; set; }

 

var Encoding: Encoding { get{} set{} }

 

Property Encoding() As Encoding

HostAddress  virtual    (declared in Client)

Gets or sets an Internet Protocol (IP) address.

 

property HostAddress: IPAddress read write;

 

IPAddress HostAddress { get; set; }

 

var HostAddress: IPAddress { get{} set{} }

 

Property HostAddress() As IPAddress

HostName  virtual    (declared in Client)

The server host name or IP address that you intend the client to connect to.

 

property HostName: String read write;

 

String HostName { get; set; }

 

var HostName: String { get{} set{} }

 

Property HostName() As String

LastResponseNo  virtual    (declared in CommandBasedClient)

 

property LastResponseNo: Int32 read;

 

Int32 LastResponseNo { get; }

 

var LastResponseNo: Int32 { get{} }

 

ReadOnly Property LastResponseNo() As Int32

LastResponseText  virtual    (declared in CommandBasedClient)

 

property LastResponseText: String read;

 

String LastResponseText { get; }

 

var LastResponseText: String { get{} }

 

ReadOnly Property LastResponseText() As String

Passive  virtual

Gets or sets a flag indicating that passive FTP mode should be used.

 

property Passive: Boolean read write;

 

Boolean Passive { get; set; }

 

var Passive: Boolean { get{} set{} }

 

Property Passive() As Boolean

Password  virtual

Gets or sets a password used for authentication on the FTP server.

 

property Password: String read write;

 

String Password { get; set; }

 

var Password: String { get{} set{} }

 

Property Password() As String

Port  virtual    (declared in Client)

The server Port that you intend the client to connect to.

 

property Port: Int32 read write;

 

Int32 Port { get; set; }

 

var Port: Int32 { get{} set{} }

 

Property Port() As Int32

ShowHiddenFiles  virtual

Gets or sets a flag that determines whether hidden files should be included into directory listings retrieved from the remote FTP server.

 

property ShowHiddenFiles: Boolean read write;

 

Boolean ShowHiddenFiles { get; set; }

 

var ShowHiddenFiles: Boolean { get{} set{} }

 

Property ShowHiddenFiles() As Boolean

UserName  virtual

Gets or sets a user name used for authentication on the FTP server.

 

property UserName: String read write;

 

String UserName { get; set; }

 

var UserName: String { get{} set{} }

 

Property UserName() As String

 

Connect (IPAddress, Int32, Binding): Connection  virtual    (declared in Client)

Overloaded. Use to connect the client to a remote network host using the specified host name (HostName) or IP address (HostAddress) and port number (Port) and/or Binding (BindingV4 or BindingV6).

 

class method Connect(host: IPAddress; port: Int32; binding: Binding): Connection

 

static Connection Connect(IPAddress host, Int32 port, Binding binding)

 

static func Connect(_ host: IPAddress, _ port: Int32, _ binding: Binding) -> Connection

 

Shared Function Connect(host As IPAddress, port As Int32, binding As Binding) As Connection

Parameters:

  • host:
  • port:
  • binding:

Connect (String, Int32, Binding): Connection  virtual    (declared in Client)

Overloaded. Use to connect the client to a remote network host using the specified host name (HostName) or IP address (HostAddress) and port number (Port) and/or Binding (BindingV4 or BindingV6).

 

class method Connect(hostname: String; port: Int32; binding: Binding): Connection

 

static Connection Connect(String hostname, Int32 port, Binding binding)

 

static func Connect(_ hostname: String, _ port: Int32, _ binding: Binding) -> Connection

 

Shared Function Connect(hostname As String, port As Int32, binding As Binding) As Connection

Parameters:

  • hostname:
  • port:
  • binding:

 

constructor

Creates a new instance of the FtpClient class.

 

constructor

 

FtpClient()

 

init()

 

Sub New()

ChangeDirectory  virtual

Changes the current directory to the specified one.

Uses the FTP protocol command CWD.

 

method ChangeDirectory(directory: String)

 

void ChangeDirectory(String directory)

 

func ChangeDirectory(_ directory: String)

 

Sub ChangeDirectory(directory As String)

Parameters:

  • directory:

ChangeToParentDirectory  virtual

Changes the current directory to its parent directory.

Uses the FTP protocol command CDUP.

 

method ChangeToParentDirectory

 

void ChangeToParentDirectory()

 

func ChangeToParentDirectory()

 

Sub ChangeToParentDirectory()

Close  override

Closes the connection to the FTP server. This method doesn't send the QUIT FTP command to the server.

 

method Close

 

void Close()

 

func Close()

 

Sub Close()

Connect  virtual    (declared in Client)

 

method Connect: Connection

 

Connection Connect()

 

func Connect() -> Connection

 

Function Connect() As Connection

Connect (IPAddress, Int32): Connection  virtual    (declared in Client)

 

method Connect(host: IPAddress; port: Int32): Connection

 

Connection Connect(IPAddress host, Int32 port)

 

func Connect(_ host: IPAddress, _ port: Int32) -> Connection

 

Function Connect(host As IPAddress, port As Int32) As Connection

Parameters:

  • host:
  • port:

Connect (String, Int32): Connection  virtual    (declared in Client)

 

method Connect(hostname: String; port: Int32): Connection

 

Connection Connect(String hostname, Int32 port)

 

func Connect(_ hostname: String, _ port: Int32) -> Connection

 

Function Connect(hostname As String, port As Int32) As Connection

Parameters:

  • hostname:
  • port:

ConnectNew  virtual    (declared in Client)

 

method ConnectNew: Connection

 

Connection ConnectNew()

 

func ConnectNew() -> Connection

 

Function ConnectNew() As Connection

ConnectNew (IPAddress, Int32): Connection  virtual    (declared in Client)

Overloaded. Opens and returns new connection with specified IP address and port.

 

method ConnectNew(host: IPAddress; port: Int32): Connection

 

Connection ConnectNew(IPAddress host, Int32 port)

 

func ConnectNew(_ host: IPAddress, _ port: Int32) -> Connection

 

Function ConnectNew(host As IPAddress, port As Int32) As Connection

Parameters:

  • host:
  • port:

ConnectNew (String, Int32): Connection  virtual    (declared in Client)

 

method ConnectNew(hostname: String; port: Int32): Connection

 

Connection ConnectNew(String hostname, Int32 port)

 

func ConnectNew(_ hostname: String, _ port: Int32) -> Connection

 

Function ConnectNew(hostname As String, port As Int32) As Connection

Parameters:

  • hostname:
  • port:

Delete  virtual

Deletes the specified file.

Uses the FTP protocol command DELE.

 

method Delete(filename: String)

 

void Delete(String filename)

 

func Delete(_ filename: String)

 

Sub Delete(filename As String)

Parameters:

  • filename:

Dispose  protected virtual    (declared in Component) Island, Toffee

 

method Dispose(disposing: Boolean)

 

void Dispose(Boolean disposing)

 

func Dispose(_ disposing: Boolean)

 

Sub Dispose(disposing As Boolean)

Parameters:

  • disposing:

GetConnection  protected virtual    (declared in Client)

 

method GetConnection(host: IPAddress; port: Int32): Connection

 

Connection GetConnection(IPAddress host, Int32 port)

 

func GetConnection(_ host: IPAddress, _ port: Int32) -> Connection

 

Function GetConnection(host As IPAddress, port As Int32) As Connection

Parameters:

  • host:
  • port:

GetCurrentDirectory  virtual

Returns the name of the current directory.

Uses the FTP protocol command PWD.

 

method GetCurrentDirectory: String

 

String GetCurrentDirectory()

 

func GetCurrentDirectory() -> String

 

Function GetCurrentDirectory() As String

List  virtual

Returns the list of files in the current working directory.

Uses the FTP protocol command LIST.

 

method List: String

 

String List()

 

func List() -> String

 

Function List() As String

List (Boolean): String  virtual

Returns the list of files in the current working directory.

Uses the FTP protocol command LIST.

 

method List(showHiddenFiles: Boolean): String

 

String List(Boolean showHiddenFiles)

 

func List(_ showHiddenFiles: Boolean) -> String

 

Function List(showHiddenFiles As Boolean) As String

Parameters:

  • showHiddenFiles:

Login  virtual

Attempts to login to the remote server using the UserName and Password property values as credentials.

 

method Login

 

void Login()

 

func Login()

 

Sub Login()

MakeDirectory  virtual

Creates a new directory on the remote server.

Uses the FTP protocol command MKD.

 

method MakeDirectory(directory: String)

 

void MakeDirectory(String directory)

 

func MakeDirectory(_ directory: String)

 

Sub MakeDirectory(directory As String)

Parameters:

  • directory:

NewConnection  protected virtual    (declared in Client)

 

method NewConnection(binding: Binding): Connection

 

Connection NewConnection(Binding binding)

 

func NewConnection(_ binding: Binding) -> Connection

 

Function NewConnection(binding As Binding) As Connection

Parameters:

  • binding:

Open  override

Opens a connection to the remote server using the specified HostName or both the HostAddress and Port property values.

 

method Open

 

void Open()

 

func Open()

 

Sub Open()

Quit  virtual

Performs a logout from the remote server.

Uses the FTP protocol command QUIT.

 

method Quit

 

void Quit()

 

func Quit()

 

Sub Quit()

ReleaseConnection  protected virtual    (declared in Client)

 

method ReleaseConnection(connection: Connection)

 

void ReleaseConnection(Connection connection)

 

func ReleaseConnection(_ connection: Connection)

 

Sub ReleaseConnection(connection As Connection)

Parameters:

  • connection:

RemoveDirectory (String)  virtual

Deletes a directory on the remote server. This method cannot process non-empty directories.

Uses the FTP protocol command RMD.

 

method RemoveDirectory(directory: String)

 

void RemoveDirectory(String directory)

 

func RemoveDirectory(_ directory: String)

 

Sub RemoveDirectory(directory As String)

Parameters:

  • directory:

RemoveDirectory (String, Boolean)  virtual

Deletes a directory on the remote server. This method can not only delete the directory but also its sub-directories and all files they contain.

Uses the FTP protocol command RMD.

 

method RemoveDirectory(directory: String; recursive: Boolean)

 

void RemoveDirectory(String directory, Boolean recursive)

 

func RemoveDirectory(_ directory: String, _ recursive: Boolean)

 

Sub RemoveDirectory(directory As String, recursive As Boolean)

Parameters:

  • directory:
  • recursive:

Rename  virtual

Renames a file on the remote server.

Uses the FTP protocol commands RNFR and RNTO.

 

method Rename(from: String; to: String)

 

void Rename(String from, String to)

 

func Rename(_ from: String, _ to: String)

 

Sub Rename(from As String, to As String)

Parameters:

  • from:
  • to:

ResolveHostName  protected virtual    (declared in Client)

 

method ResolveHostName

 

void ResolveHostName()

 

func ResolveHostName()

 

Sub ResolveHostName()

ResolveHostNameIfNeeded  protected virtual    (declared in Client)

 

method ResolveHostNameIfNeeded

 

void ResolveHostNameIfNeeded()

 

func ResolveHostNameIfNeeded()

 

Sub ResolveHostNameIfNeeded()

Retrieve (String, Int64, Stream)  virtual

Retrieves a file and puts its contents into the provided stream.

Uses the FTP protocol command RETR.

 

method Retrieve(filename: String; size: Int64; stream: Stream)

 

void Retrieve(String filename, Int64 size, Stream stream)

 

func Retrieve(_ filename: String, _ size: Int64, _ stream: Stream)

 

Sub Retrieve(filename As String, size As Int64, stream As Stream)

Parameters:

  • filename:
  • size:
  • stream:

Retrieve (FtpListingItem, Stream)  virtual

Retrieves a file and puts its contents into the provided stream.

Uses the FTP protocol command RETR.

 

method Retrieve(item: FtpListingItem; stream: Stream)

 

void Retrieve(FtpListingItem item, Stream stream)

 

func Retrieve(_ item: FtpListingItem, _ stream: Stream)

 

Sub Retrieve(item As FtpListingItem, stream As Stream)

Parameters:

  • item:
  • stream:

SendAccount  virtual

Sends account information to the remote server.

Account information can be considered as a kind of password that the remote system uses to grant certain privileges. The exact form and meaning of the account information depends on the specific FTP server implementation.

Uses the FTP protocol command ACCT.

 

method SendAccount

 

void SendAccount()

 

func SendAccount()

 

Sub SendAccount()

SendAndWaitForResponse  protected virtual    (declared in CommandBasedClient)

 

method SendAndWaitForResponse(command: String; params validResponses: array of Int32): Boolean

 

Boolean SendAndWaitForResponse(String command, params Int32[] validResponses)

 

func SendAndWaitForResponse(_ command: String, _ validResponses: Int32...) -> Boolean

 

Function SendAndWaitForResponse(command As String, ParamArray validResponses As Int32()) As Boolean

Parameters:

  • command:
  • validResponses:

SendLog (TransferDirection, String, array of Object)  protected virtual    (declared in CommandBasedClient)

 

method SendLog(direction: TransferDirection; format: String; params parameters: array of Object)

 

void SendLog(TransferDirection direction, String format, params Object[] parameters)

 

func SendLog(_ direction: TransferDirection, _ format: String, _ parameters: Object...)

 

Sub SendLog(direction As TransferDirection, format As String, ParamArray parameters As Object())

Parameters:

  • direction:
  • format:
  • parameters:

SendLog (TransferDirection, String)  protected virtual    (declared in CommandBasedClient)

 

method SendLog(direction: TransferDirection; message: String)

 

void SendLog(TransferDirection direction, String message)

 

func SendLog(_ direction: TransferDirection, _ message: String)

 

Sub SendLog(direction As TransferDirection, message As String)

Parameters:

  • direction:
  • message:

SetType  virtual

Sets the FTP data transfer type to either I (binary type) or A (ascii type).

Uses the FTP protocol command TYPE.

 

method SetType(type: String)

 

void SetType(String type)

 

func SetType(_ type: String)

 

Sub SetType(type As String)

Parameters:

  • type:

StartActiveConnection  virtual

Opens a connection to the remote FTP server in active mode.

 

method StartActiveConnection

 

void StartActiveConnection()

 

func StartActiveConnection()

 

Sub StartActiveConnection()

StartPassiveConnection  virtual

Opens a connection to the remote FTP server in passive mode.

 

method StartPassiveConnection

 

void StartPassiveConnection()

 

func StartPassiveConnection()

 

Sub StartPassiveConnection()

Store  virtual

Sends a data stream to the remote server and stores it there as a file.

Uses the FTP protocol command STOR.

 

method Store(filename: String; stream: Stream)

 

void Store(String filename, Stream stream)

 

func Store(_ filename: String, _ stream: Stream)

 

Sub Store(filename As String, stream As Stream)

Parameters:

  • filename:
  • stream:

TriggerOnBytesReceived  protected virtual

 

method TriggerOnBytesReceived(sender: Object; e: EventArgs)

 

void TriggerOnBytesReceived(Object sender, EventArgs e)

 

func TriggerOnBytesReceived(_ sender: Object, _ e: EventArgs)

 

Sub TriggerOnBytesReceived(sender As Object, e As EventArgs)

Parameters:

  • sender:
  • e:

TriggerOnNewListing  protected virtual

 

method TriggerOnNewListing

 

void TriggerOnNewListing()

 

func TriggerOnNewListing()

 

Sub TriggerOnNewListing()

TriggerOnResolvedHostName  protected virtual    (declared in Client)

 

method TriggerOnResolvedHostName(e: OnResolvedHostNameEventArgs)

 

void TriggerOnResolvedHostName(OnResolvedHostNameEventArgs e)

 

func TriggerOnResolvedHostName(_ e: OnResolvedHostNameEventArgs)

 

Sub TriggerOnResolvedHostName(e As OnResolvedHostNameEventArgs)

Parameters:

  • e:

TriggerOnResolveHostName  protected virtual    (declared in Client)

 

method TriggerOnResolveHostName(e: OnResolveHostNameEventArgs)

 

void TriggerOnResolveHostName(OnResolveHostNameEventArgs e)

 

func TriggerOnResolveHostName(_ e: OnResolveHostNameEventArgs)

 

Sub TriggerOnResolveHostName(e As OnResolveHostNameEventArgs)

Parameters:

  • e:

TriggerOnTransferStart  protected virtual

 

method TriggerOnTransferStart(sender: Object; e: TransferStartEventArgs)

 

void TriggerOnTransferStart(Object sender, TransferStartEventArgs e)

 

func TriggerOnTransferStart(_ sender: Object, _ e: TransferStartEventArgs)

 

Sub TriggerOnTransferStart(sender As Object, e As TransferStartEventArgs)

Parameters:

  • sender:
  • e:

WaitForResponse  protected virtual    (declared in CommandBasedClient)

 

method WaitForResponse(params validResponses: array of Int32): Boolean

 

Boolean WaitForResponse(params Int32[] validResponses)

 

func WaitForResponse(_ validResponses: Int32...) -> Boolean

 

Function WaitForResponse(ParamArray validResponses As Int32()) As Boolean

Parameters:

  • validResponses:

 

OnLog    (declared in CommandBasedClient)

 

event OnLog: ClientLogEvent
delegate: method OnLog(sender: Object; e: ClientLogArgs)

 

delegate ClientLogEvent OnLog()
delegate: void OnLog(Object sender, ClientLogArgs e)

 

__event ClientLogEvent: OnLog!
delegate: func OnLog(_ sender: Object, _ e: ClientLogArgs)

 

Event OnLog As ClientLogEvent
delegate: Sub OnLog(sender As Object, e As ClientLogArgs)

OnNewListing

This event is raised when a file listing is retrieved from the remote server.

 

event OnNewListing: EventHandler

 

delegate EventHandler OnNewListing()

 

__event EventHandler: OnNewListing!

 

Event OnNewListing As EventHandler

OnResolvedHostName    (declared in Client)

This event is fired after the hostname has been successfully resolved.

 

event OnResolvedHostName: OnResolvedHostNameEventHandler
delegate: method OnResolvedHostName(sender: Object; e: OnResolvedHostNameEventArgs)

 

delegate OnResolvedHostNameEventHandler OnResolvedHostName()
delegate: void OnResolvedHostName(Object sender, OnResolvedHostNameEventArgs e)

 

__event OnResolvedHostNameEventHandler: OnResolvedHostName!
delegate: func OnResolvedHostName(_ sender: Object, _ e: OnResolvedHostNameEventArgs)

 

Event OnResolvedHostName As OnResolvedHostNameEventHandler
delegate: Sub OnResolvedHostName(sender As Object, e As OnResolvedHostNameEventArgs)

OnResolveHostName    (declared in Client)

This event is fired before the Client attepts to resolve the sepcifed HostName to an IP address. It provides you with an option to perform the resolution yourself, obtain the IP address from an internal cache you're maintaing, or do some other processing (such as for example chaging the hostname to look up).

 

event OnResolveHostName: OnResolveHostNameEventHandler
delegate: method OnResolveHostName(sender: Object; e: OnResolveHostNameEventArgs)

 

delegate OnResolveHostNameEventHandler OnResolveHostName()
delegate: void OnResolveHostName(Object sender, OnResolveHostNameEventArgs e)

 

__event OnResolveHostNameEventHandler: OnResolveHostName!
delegate: func OnResolveHostName(_ sender: Object, _ e: OnResolveHostNameEventArgs)

 

Event OnResolveHostName As OnResolveHostNameEventHandler
delegate: Sub OnResolveHostName(sender As Object, e As OnResolveHostNameEventArgs)

OnTransferProgress

This event is raised whenever any data package is sent in any direction.

 

event OnTransferProgress: TransferProgressEventHandler
delegate: method OnTransferProgress(sender: Object; e: TransferProgressEventArgs)

 

delegate TransferProgressEventHandler OnTransferProgress()
delegate: void OnTransferProgress(Object sender, TransferProgressEventArgs e)

 

__event TransferProgressEventHandler: OnTransferProgress!
delegate: func OnTransferProgress(_ sender: Object, _ e: TransferProgressEventArgs)

 

Event OnTransferProgress As TransferProgressEventHandler
delegate: Sub OnTransferProgress(sender As Object, e As TransferProgressEventArgs)

OnTransferStart

This event is raised before a data transfer between client and remote server is started.

 

event OnTransferStart: TransferStartEventHandler
delegate: method OnTransferStart(sender: Object; e: TransferStartEventArgs)

 

delegate TransferStartEventHandler OnTransferStart()
delegate: void OnTransferStart(Object sender, TransferStartEventArgs e)

 

__event TransferStartEventHandler: OnTransferStart!
delegate: func OnTransferStart(_ sender: Object, _ e: TransferStartEventArgs)

 

Event OnTransferStart As TransferStartEventHandler
delegate: Sub OnTransferStart(sender As Object, e As TransferStartEventArgs)