/* ----------------------------------------------------------------------------
 * This file was automatically generated by SWIG (https://www.swig.org).
 * Version 4.3.0
 *
 * Do not make changes to this file unless you know what you are doing - modify
 * the SWIG interface file instead.
 * ----------------------------------------------------------------------------- */

package com.chilkatsoft;

public class CkSFtp {
  private transient long swigCPtr;
  protected transient boolean swigCMemOwn;

  protected CkSFtp(long cPtr, boolean cMemoryOwn) {
    swigCMemOwn = cMemoryOwn;
    swigCPtr = cPtr;
  }

  protected static long getCPtr(CkSFtp obj) {
    return (obj == null) ? 0 : obj.swigCPtr;
  }

  protected static long swigRelease(CkSFtp obj) {
    long ptr = 0;
    if (obj != null) {
      if (!obj.swigCMemOwn)
        throw new RuntimeException("Cannot release ownership as memory is not owned");
      ptr = obj.swigCPtr;
      obj.swigCMemOwn = false;
      obj.delete();
    }
    return ptr;
  }

  @SuppressWarnings({"deprecation", "removal"})
  protected void finalize() {
    delete();
  }

  public synchronized void delete() {
    if (swigCPtr != 0) {
      if (swigCMemOwn) {
        swigCMemOwn = false;
        chilkatJNI.delete_CkSFtp(swigCPtr);
      }
      swigCPtr = 0;
    }
  }

  public CkSFtp() {
    this(chilkatJNI.new_CkSFtp(), true);
  }

  public void LastErrorXml(CkString str) {
    chilkatJNI.CkSFtp_LastErrorXml(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public void LastErrorHtml(CkString str) {
    chilkatJNI.CkSFtp_LastErrorHtml(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public void LastErrorText(CkString str) {
    chilkatJNI.CkSFtp_LastErrorText(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public void put_EventCallbackObject(CkSFtpProgress progress) {
    chilkatJNI.CkSFtp_put_EventCallbackObject(swigCPtr, this, CkSFtpProgress.getCPtr(progress), progress);
  }

  public boolean get_AbortCurrent() {
    return chilkatJNI.CkSFtp_get_AbortCurrent(swigCPtr, this);
  }

  public void put_AbortCurrent(boolean newVal) {
    chilkatJNI.CkSFtp_put_AbortCurrent(swigCPtr, this, newVal);
  }

  public int get_AuthFailReason() {
    return chilkatJNI.CkSFtp_get_AuthFailReason(swigCPtr, this);
  }

  public int get_BandwidthThrottleDown() {
    return chilkatJNI.CkSFtp_get_BandwidthThrottleDown(swigCPtr, this);
  }

  public void put_BandwidthThrottleDown(int newVal) {
    chilkatJNI.CkSFtp_put_BandwidthThrottleDown(swigCPtr, this, newVal);
  }

  public int get_BandwidthThrottleUp() {
    return chilkatJNI.CkSFtp_get_BandwidthThrottleUp(swigCPtr, this);
  }

  public void put_BandwidthThrottleUp(int newVal) {
    chilkatJNI.CkSFtp_put_BandwidthThrottleUp(swigCPtr, this, newVal);
  }

  public void get_ClientIdentifier(CkString str) {
    chilkatJNI.CkSFtp_get_ClientIdentifier(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String clientIdentifier() {
    return chilkatJNI.CkSFtp_clientIdentifier(swigCPtr, this);
  }

  public void put_ClientIdentifier(String newVal) {
    chilkatJNI.CkSFtp_put_ClientIdentifier(swigCPtr, this, newVal);
  }

  public void get_ClientIpAddress(CkString str) {
    chilkatJNI.CkSFtp_get_ClientIpAddress(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String clientIpAddress() {
    return chilkatJNI.CkSFtp_clientIpAddress(swigCPtr, this);
  }

  public void put_ClientIpAddress(String newVal) {
    chilkatJNI.CkSFtp_put_ClientIpAddress(swigCPtr, this, newVal);
  }

  public int get_ConnectTimeoutMs() {
    return chilkatJNI.CkSFtp_get_ConnectTimeoutMs(swigCPtr, this);
  }

  public void put_ConnectTimeoutMs(int newVal) {
    chilkatJNI.CkSFtp_put_ConnectTimeoutMs(swigCPtr, this, newVal);
  }

  public void get_DebugLogFilePath(CkString str) {
    chilkatJNI.CkSFtp_get_DebugLogFilePath(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String debugLogFilePath() {
    return chilkatJNI.CkSFtp_debugLogFilePath(swigCPtr, this);
  }

  public void put_DebugLogFilePath(String newVal) {
    chilkatJNI.CkSFtp_put_DebugLogFilePath(swigCPtr, this, newVal);
  }

  public int get_DisconnectCode() {
    return chilkatJNI.CkSFtp_get_DisconnectCode(swigCPtr, this);
  }

  public void get_DisconnectReason(CkString str) {
    chilkatJNI.CkSFtp_get_DisconnectReason(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String disconnectReason() {
    return chilkatJNI.CkSFtp_disconnectReason(swigCPtr, this);
  }

  public boolean get_EnableCache() {
    return chilkatJNI.CkSFtp_get_EnableCache(swigCPtr, this);
  }

  public void put_EnableCache(boolean newVal) {
    chilkatJNI.CkSFtp_put_EnableCache(swigCPtr, this, newVal);
  }

  public boolean get_EnableCompression() {
    return chilkatJNI.CkSFtp_get_EnableCompression(swigCPtr, this);
  }

  public void put_EnableCompression(boolean newVal) {
    chilkatJNI.CkSFtp_put_EnableCompression(swigCPtr, this, newVal);
  }

  public boolean get_EnableSecrets() {
    return chilkatJNI.CkSFtp_get_EnableSecrets(swigCPtr, this);
  }

  public void put_EnableSecrets(boolean newVal) {
    chilkatJNI.CkSFtp_put_EnableSecrets(swigCPtr, this, newVal);
  }

  public void get_FilenameCharset(CkString str) {
    chilkatJNI.CkSFtp_get_FilenameCharset(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String filenameCharset() {
    return chilkatJNI.CkSFtp_filenameCharset(swigCPtr, this);
  }

  public void put_FilenameCharset(String newVal) {
    chilkatJNI.CkSFtp_put_FilenameCharset(swigCPtr, this, newVal);
  }

  public void get_ForceCipher(CkString str) {
    chilkatJNI.CkSFtp_get_ForceCipher(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String forceCipher() {
    return chilkatJNI.CkSFtp_forceCipher(swigCPtr, this);
  }

  public void put_ForceCipher(String newVal) {
    chilkatJNI.CkSFtp_put_ForceCipher(swigCPtr, this, newVal);
  }

  public boolean get_ForceV3() {
    return chilkatJNI.CkSFtp_get_ForceV3(swigCPtr, this);
  }

  public void put_ForceV3(boolean newVal) {
    chilkatJNI.CkSFtp_put_ForceV3(swigCPtr, this, newVal);
  }

  public int get_HeartbeatMs() {
    return chilkatJNI.CkSFtp_get_HeartbeatMs(swigCPtr, this);
  }

  public void put_HeartbeatMs(int newVal) {
    chilkatJNI.CkSFtp_put_HeartbeatMs(swigCPtr, this, newVal);
  }

  public void get_HostKeyAlg(CkString str) {
    chilkatJNI.CkSFtp_get_HostKeyAlg(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String hostKeyAlg() {
    return chilkatJNI.CkSFtp_hostKeyAlg(swigCPtr, this);
  }

  public void put_HostKeyAlg(String newVal) {
    chilkatJNI.CkSFtp_put_HostKeyAlg(swigCPtr, this, newVal);
  }

  public void get_HostKeyFingerprint(CkString str) {
    chilkatJNI.CkSFtp_get_HostKeyFingerprint(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String hostKeyFingerprint() {
    return chilkatJNI.CkSFtp_hostKeyFingerprint(swigCPtr, this);
  }

  public void get_HttpProxyAuthMethod(CkString str) {
    chilkatJNI.CkSFtp_get_HttpProxyAuthMethod(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String httpProxyAuthMethod() {
    return chilkatJNI.CkSFtp_httpProxyAuthMethod(swigCPtr, this);
  }

  public void put_HttpProxyAuthMethod(String newVal) {
    chilkatJNI.CkSFtp_put_HttpProxyAuthMethod(swigCPtr, this, newVal);
  }

  public void get_HttpProxyDomain(CkString str) {
    chilkatJNI.CkSFtp_get_HttpProxyDomain(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String httpProxyDomain() {
    return chilkatJNI.CkSFtp_httpProxyDomain(swigCPtr, this);
  }

  public void put_HttpProxyDomain(String newVal) {
    chilkatJNI.CkSFtp_put_HttpProxyDomain(swigCPtr, this, newVal);
  }

  public void get_HttpProxyHostname(CkString str) {
    chilkatJNI.CkSFtp_get_HttpProxyHostname(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String httpProxyHostname() {
    return chilkatJNI.CkSFtp_httpProxyHostname(swigCPtr, this);
  }

  public void put_HttpProxyHostname(String newVal) {
    chilkatJNI.CkSFtp_put_HttpProxyHostname(swigCPtr, this, newVal);
  }

  public void get_HttpProxyPassword(CkString str) {
    chilkatJNI.CkSFtp_get_HttpProxyPassword(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String httpProxyPassword() {
    return chilkatJNI.CkSFtp_httpProxyPassword(swigCPtr, this);
  }

  public void put_HttpProxyPassword(String newVal) {
    chilkatJNI.CkSFtp_put_HttpProxyPassword(swigCPtr, this, newVal);
  }

  public int get_HttpProxyPort() {
    return chilkatJNI.CkSFtp_get_HttpProxyPort(swigCPtr, this);
  }

  public void put_HttpProxyPort(int newVal) {
    chilkatJNI.CkSFtp_put_HttpProxyPort(swigCPtr, this, newVal);
  }

  public void get_HttpProxyUsername(CkString str) {
    chilkatJNI.CkSFtp_get_HttpProxyUsername(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String httpProxyUsername() {
    return chilkatJNI.CkSFtp_httpProxyUsername(swigCPtr, this);
  }

  public void put_HttpProxyUsername(String newVal) {
    chilkatJNI.CkSFtp_put_HttpProxyUsername(swigCPtr, this, newVal);
  }

  public int get_IdleTimeoutMs() {
    return chilkatJNI.CkSFtp_get_IdleTimeoutMs(swigCPtr, this);
  }

  public void put_IdleTimeoutMs(int newVal) {
    chilkatJNI.CkSFtp_put_IdleTimeoutMs(swigCPtr, this, newVal);
  }

  public boolean get_IncludeDotDirs() {
    return chilkatJNI.CkSFtp_get_IncludeDotDirs(swigCPtr, this);
  }

  public void put_IncludeDotDirs(boolean newVal) {
    chilkatJNI.CkSFtp_put_IncludeDotDirs(swigCPtr, this, newVal);
  }

  public int get_InitializeFailCode() {
    return chilkatJNI.CkSFtp_get_InitializeFailCode(swigCPtr, this);
  }

  public void get_InitializeFailReason(CkString str) {
    chilkatJNI.CkSFtp_get_InitializeFailReason(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String initializeFailReason() {
    return chilkatJNI.CkSFtp_initializeFailReason(swigCPtr, this);
  }

  public boolean get_IsConnected() {
    return chilkatJNI.CkSFtp_get_IsConnected(swigCPtr, this);
  }

  public boolean get_KeepSessionLog() {
    return chilkatJNI.CkSFtp_get_KeepSessionLog(swigCPtr, this);
  }

  public void put_KeepSessionLog(boolean newVal) {
    chilkatJNI.CkSFtp_put_KeepSessionLog(swigCPtr, this, newVal);
  }

  public void get_LastErrorHtml(CkString str) {
    chilkatJNI.CkSFtp_get_LastErrorHtml(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String lastErrorHtml() {
    return chilkatJNI.CkSFtp_lastErrorHtml(swigCPtr, this);
  }

  public void get_LastErrorText(CkString str) {
    chilkatJNI.CkSFtp_get_LastErrorText(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String lastErrorText() {
    return chilkatJNI.CkSFtp_lastErrorText(swigCPtr, this);
  }

  public void get_LastErrorXml(CkString str) {
    chilkatJNI.CkSFtp_get_LastErrorXml(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String lastErrorXml() {
    return chilkatJNI.CkSFtp_lastErrorXml(swigCPtr, this);
  }

  public boolean get_LastMethodSuccess() {
    return chilkatJNI.CkSFtp_get_LastMethodSuccess(swigCPtr, this);
  }

  public void put_LastMethodSuccess(boolean newVal) {
    chilkatJNI.CkSFtp_put_LastMethodSuccess(swigCPtr, this, newVal);
  }

  public int get_LastStatusCode() {
    return chilkatJNI.CkSFtp_get_LastStatusCode(swigCPtr, this);
  }

  public void get_LastStatusMessage(CkString str) {
    chilkatJNI.CkSFtp_get_LastStatusMessage(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String lastStatusMessage() {
    return chilkatJNI.CkSFtp_lastStatusMessage(swigCPtr, this);
  }

  public int get_MaxPacketSize() {
    return chilkatJNI.CkSFtp_get_MaxPacketSize(swigCPtr, this);
  }

  public void put_MaxPacketSize(int newVal) {
    chilkatJNI.CkSFtp_put_MaxPacketSize(swigCPtr, this, newVal);
  }

  public boolean get_PasswordChangeRequested() {
    return chilkatJNI.CkSFtp_get_PasswordChangeRequested(swigCPtr, this);
  }

  public int get_PercentDoneScale() {
    return chilkatJNI.CkSFtp_get_PercentDoneScale(swigCPtr, this);
  }

  public void put_PercentDoneScale(int newVal) {
    chilkatJNI.CkSFtp_put_PercentDoneScale(swigCPtr, this, newVal);
  }

  public boolean get_PreferIpv6() {
    return chilkatJNI.CkSFtp_get_PreferIpv6(swigCPtr, this);
  }

  public void put_PreferIpv6(boolean newVal) {
    chilkatJNI.CkSFtp_put_PreferIpv6(swigCPtr, this, newVal);
  }

  public boolean get_PreserveDate() {
    return chilkatJNI.CkSFtp_get_PreserveDate(swigCPtr, this);
  }

  public void put_PreserveDate(boolean newVal) {
    chilkatJNI.CkSFtp_put_PreserveDate(swigCPtr, this, newVal);
  }

  public int get_ProtocolVersion() {
    return chilkatJNI.CkSFtp_get_ProtocolVersion(swigCPtr, this);
  }

  public void get_ReadDirMustMatch(CkString str) {
    chilkatJNI.CkSFtp_get_ReadDirMustMatch(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String readDirMustMatch() {
    return chilkatJNI.CkSFtp_readDirMustMatch(swigCPtr, this);
  }

  public void put_ReadDirMustMatch(String newVal) {
    chilkatJNI.CkSFtp_put_ReadDirMustMatch(swigCPtr, this, newVal);
  }

  public void get_ReadDirMustNotMatch(CkString str) {
    chilkatJNI.CkSFtp_get_ReadDirMustNotMatch(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String readDirMustNotMatch() {
    return chilkatJNI.CkSFtp_readDirMustNotMatch(swigCPtr, this);
  }

  public void put_ReadDirMustNotMatch(String newVal) {
    chilkatJNI.CkSFtp_put_ReadDirMustNotMatch(swigCPtr, this, newVal);
  }

  public void get_ServerIdentifier(CkString str) {
    chilkatJNI.CkSFtp_get_ServerIdentifier(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String serverIdentifier() {
    return chilkatJNI.CkSFtp_serverIdentifier(swigCPtr, this);
  }

  public void get_SessionLog(CkString str) {
    chilkatJNI.CkSFtp_get_SessionLog(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String sessionLog() {
    return chilkatJNI.CkSFtp_sessionLog(swigCPtr, this);
  }

  public void get_SocksHostname(CkString str) {
    chilkatJNI.CkSFtp_get_SocksHostname(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String socksHostname() {
    return chilkatJNI.CkSFtp_socksHostname(swigCPtr, this);
  }

  public void put_SocksHostname(String newVal) {
    chilkatJNI.CkSFtp_put_SocksHostname(swigCPtr, this, newVal);
  }

  public void get_SocksPassword(CkString str) {
    chilkatJNI.CkSFtp_get_SocksPassword(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String socksPassword() {
    return chilkatJNI.CkSFtp_socksPassword(swigCPtr, this);
  }

  public void put_SocksPassword(String newVal) {
    chilkatJNI.CkSFtp_put_SocksPassword(swigCPtr, this, newVal);
  }

  public int get_SocksPort() {
    return chilkatJNI.CkSFtp_get_SocksPort(swigCPtr, this);
  }

  public void put_SocksPort(int newVal) {
    chilkatJNI.CkSFtp_put_SocksPort(swigCPtr, this, newVal);
  }

  public void get_SocksUsername(CkString str) {
    chilkatJNI.CkSFtp_get_SocksUsername(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String socksUsername() {
    return chilkatJNI.CkSFtp_socksUsername(swigCPtr, this);
  }

  public void put_SocksUsername(String newVal) {
    chilkatJNI.CkSFtp_put_SocksUsername(swigCPtr, this, newVal);
  }

  public int get_SocksVersion() {
    return chilkatJNI.CkSFtp_get_SocksVersion(swigCPtr, this);
  }

  public void put_SocksVersion(int newVal) {
    chilkatJNI.CkSFtp_put_SocksVersion(swigCPtr, this, newVal);
  }

  public int get_SoRcvBuf() {
    return chilkatJNI.CkSFtp_get_SoRcvBuf(swigCPtr, this);
  }

  public void put_SoRcvBuf(int newVal) {
    chilkatJNI.CkSFtp_put_SoRcvBuf(swigCPtr, this, newVal);
  }

  public int get_SoSndBuf() {
    return chilkatJNI.CkSFtp_get_SoSndBuf(swigCPtr, this);
  }

  public void put_SoSndBuf(int newVal) {
    chilkatJNI.CkSFtp_put_SoSndBuf(swigCPtr, this, newVal);
  }

  public boolean get_SyncCreateAllLocalDirs() {
    return chilkatJNI.CkSFtp_get_SyncCreateAllLocalDirs(swigCPtr, this);
  }

  public void put_SyncCreateAllLocalDirs(boolean newVal) {
    chilkatJNI.CkSFtp_put_SyncCreateAllLocalDirs(swigCPtr, this, newVal);
  }

  public void get_SyncDirectives(CkString str) {
    chilkatJNI.CkSFtp_get_SyncDirectives(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String syncDirectives() {
    return chilkatJNI.CkSFtp_syncDirectives(swigCPtr, this);
  }

  public void put_SyncDirectives(String newVal) {
    chilkatJNI.CkSFtp_put_SyncDirectives(swigCPtr, this, newVal);
  }

  public void get_SyncMustMatch(CkString str) {
    chilkatJNI.CkSFtp_get_SyncMustMatch(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String syncMustMatch() {
    return chilkatJNI.CkSFtp_syncMustMatch(swigCPtr, this);
  }

  public void put_SyncMustMatch(String newVal) {
    chilkatJNI.CkSFtp_put_SyncMustMatch(swigCPtr, this, newVal);
  }

  public void get_SyncMustMatchDir(CkString str) {
    chilkatJNI.CkSFtp_get_SyncMustMatchDir(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String syncMustMatchDir() {
    return chilkatJNI.CkSFtp_syncMustMatchDir(swigCPtr, this);
  }

  public void put_SyncMustMatchDir(String newVal) {
    chilkatJNI.CkSFtp_put_SyncMustMatchDir(swigCPtr, this, newVal);
  }

  public void get_SyncMustNotMatch(CkString str) {
    chilkatJNI.CkSFtp_get_SyncMustNotMatch(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String syncMustNotMatch() {
    return chilkatJNI.CkSFtp_syncMustNotMatch(swigCPtr, this);
  }

  public void put_SyncMustNotMatch(String newVal) {
    chilkatJNI.CkSFtp_put_SyncMustNotMatch(swigCPtr, this, newVal);
  }

  public void get_SyncMustNotMatchDir(CkString str) {
    chilkatJNI.CkSFtp_get_SyncMustNotMatchDir(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String syncMustNotMatchDir() {
    return chilkatJNI.CkSFtp_syncMustNotMatchDir(swigCPtr, this);
  }

  public void put_SyncMustNotMatchDir(String newVal) {
    chilkatJNI.CkSFtp_put_SyncMustNotMatchDir(swigCPtr, this, newVal);
  }

  public boolean get_TcpNoDelay() {
    return chilkatJNI.CkSFtp_get_TcpNoDelay(swigCPtr, this);
  }

  public void put_TcpNoDelay(boolean newVal) {
    chilkatJNI.CkSFtp_put_TcpNoDelay(swigCPtr, this, newVal);
  }

  public void get_UncommonOptions(CkString str) {
    chilkatJNI.CkSFtp_get_UncommonOptions(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String uncommonOptions() {
    return chilkatJNI.CkSFtp_uncommonOptions(swigCPtr, this);
  }

  public void put_UncommonOptions(String newVal) {
    chilkatJNI.CkSFtp_put_UncommonOptions(swigCPtr, this, newVal);
  }

  public int get_UploadChunkSize() {
    return chilkatJNI.CkSFtp_get_UploadChunkSize(swigCPtr, this);
  }

  public void put_UploadChunkSize(int newVal) {
    chilkatJNI.CkSFtp_put_UploadChunkSize(swigCPtr, this, newVal);
  }

  public void get_UserAuthBanner(CkString str) {
    chilkatJNI.CkSFtp_get_UserAuthBanner(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String userAuthBanner() {
    return chilkatJNI.CkSFtp_userAuthBanner(swigCPtr, this);
  }

  public void put_UserAuthBanner(String newVal) {
    chilkatJNI.CkSFtp_put_UserAuthBanner(swigCPtr, this, newVal);
  }

  public boolean get_UtcMode() {
    return chilkatJNI.CkSFtp_get_UtcMode(swigCPtr, this);
  }

  public void put_UtcMode(boolean newVal) {
    chilkatJNI.CkSFtp_put_UtcMode(swigCPtr, this, newVal);
  }

  public boolean get_VerboseLogging() {
    return chilkatJNI.CkSFtp_get_VerboseLogging(swigCPtr, this);
  }

  public void put_VerboseLogging(boolean newVal) {
    chilkatJNI.CkSFtp_put_VerboseLogging(swigCPtr, this, newVal);
  }

  public void get_Version(CkString str) {
    chilkatJNI.CkSFtp_get_Version(swigCPtr, this, CkString.getCPtr(str), str);
  }

  public String version() {
    return chilkatJNI.CkSFtp_version(swigCPtr, this);
  }

  public long get_XferByteCount() {
    return chilkatJNI.CkSFtp_get_XferByteCount(swigCPtr, this);
  }

  public long get_XferByteCount64() {
    return chilkatJNI.CkSFtp_get_XferByteCount64(swigCPtr, this);
  }

  public int AccumulateBytes(String handle, int maxBytes) {
    return chilkatJNI.CkSFtp_AccumulateBytes(swigCPtr, this, handle, maxBytes);
  }

  public CkTask AccumulateBytesAsync(String handle, int maxBytes) {
    long cPtr = chilkatJNI.CkSFtp_AccumulateBytesAsync(swigCPtr, this, handle, maxBytes);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean Add64(String n1, String n2, CkString outStr) {
    return chilkatJNI.CkSFtp_Add64(swigCPtr, this, n1, n2, CkString.getCPtr(outStr), outStr);
  }

  public String add64(String n1, String n2) {
    return chilkatJNI.CkSFtp_add64(swigCPtr, this, n1, n2);
  }

  public boolean AuthenticatePk(String username, CkSshKey privateKey) {
    return chilkatJNI.CkSFtp_AuthenticatePk(swigCPtr, this, username, CkSshKey.getCPtr(privateKey), privateKey);
  }

  public CkTask AuthenticatePkAsync(String username, CkSshKey privateKey) {
    long cPtr = chilkatJNI.CkSFtp_AuthenticatePkAsync(swigCPtr, this, username, CkSshKey.getCPtr(privateKey), privateKey);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean AuthenticatePw(String login, String password) {
    return chilkatJNI.CkSFtp_AuthenticatePw(swigCPtr, this, login, password);
  }

  public CkTask AuthenticatePwAsync(String login, String password) {
    long cPtr = chilkatJNI.CkSFtp_AuthenticatePwAsync(swigCPtr, this, login, password);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean AuthenticatePwPk(String username, String password, CkSshKey privateKey) {
    return chilkatJNI.CkSFtp_AuthenticatePwPk(swigCPtr, this, username, password, CkSshKey.getCPtr(privateKey), privateKey);
  }

  public CkTask AuthenticatePwPkAsync(String username, String password, CkSshKey privateKey) {
    long cPtr = chilkatJNI.CkSFtp_AuthenticatePwPkAsync(swigCPtr, this, username, password, CkSshKey.getCPtr(privateKey), privateKey);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean AuthenticateSecPw(CkSecureString login, CkSecureString password) {
    return chilkatJNI.CkSFtp_AuthenticateSecPw(swigCPtr, this, CkSecureString.getCPtr(login), login, CkSecureString.getCPtr(password), password);
  }

  public CkTask AuthenticateSecPwAsync(CkSecureString login, CkSecureString password) {
    long cPtr = chilkatJNI.CkSFtp_AuthenticateSecPwAsync(swigCPtr, this, CkSecureString.getCPtr(login), login, CkSecureString.getCPtr(password), password);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean AuthenticateSecPwPk(CkSecureString username, CkSecureString password, CkSshKey privateKey) {
    return chilkatJNI.CkSFtp_AuthenticateSecPwPk(swigCPtr, this, CkSecureString.getCPtr(username), username, CkSecureString.getCPtr(password), password, CkSshKey.getCPtr(privateKey), privateKey);
  }

  public CkTask AuthenticateSecPwPkAsync(CkSecureString username, CkSecureString password, CkSshKey privateKey) {
    long cPtr = chilkatJNI.CkSFtp_AuthenticateSecPwPkAsync(swigCPtr, this, CkSecureString.getCPtr(username), username, CkSecureString.getCPtr(password), password, CkSshKey.getCPtr(privateKey), privateKey);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public void ClearAccumulateBuffer() {
    chilkatJNI.CkSFtp_ClearAccumulateBuffer(swigCPtr, this);
  }

  public void ClearCache() {
    chilkatJNI.CkSFtp_ClearCache(swigCPtr, this);
  }

  public void ClearSessionLog() {
    chilkatJNI.CkSFtp_ClearSessionLog(swigCPtr, this);
  }

  public boolean CloseHandle(String handle) {
    return chilkatJNI.CkSFtp_CloseHandle(swigCPtr, this, handle);
  }

  public CkTask CloseHandleAsync(String handle) {
    long cPtr = chilkatJNI.CkSFtp_CloseHandleAsync(swigCPtr, this, handle);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean Connect(String domainName, int port) {
    return chilkatJNI.CkSFtp_Connect(swigCPtr, this, domainName, port);
  }

  public CkTask ConnectAsync(String domainName, int port) {
    long cPtr = chilkatJNI.CkSFtp_ConnectAsync(swigCPtr, this, domainName, port);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean ConnectThroughSsh(CkSsh sshConn, String hostname, int port) {
    return chilkatJNI.CkSFtp_ConnectThroughSsh(swigCPtr, this, CkSsh.getCPtr(sshConn), sshConn, hostname, port);
  }

  public CkTask ConnectThroughSshAsync(CkSsh sshConn, String hostname, int port) {
    long cPtr = chilkatJNI.CkSFtp_ConnectThroughSshAsync(swigCPtr, this, CkSsh.getCPtr(sshConn), sshConn, hostname, port);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean ContinueKeyboardAuth(String response, CkString outStr) {
    return chilkatJNI.CkSFtp_ContinueKeyboardAuth(swigCPtr, this, response, CkString.getCPtr(outStr), outStr);
  }

  public String continueKeyboardAuth(String response) {
    return chilkatJNI.CkSFtp_continueKeyboardAuth(swigCPtr, this, response);
  }

  public CkTask ContinueKeyboardAuthAsync(String response) {
    long cPtr = chilkatJNI.CkSFtp_ContinueKeyboardAuthAsync(swigCPtr, this, response);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean CopyFileAttr(String localFilename, String remoteFilename, boolean isHandle) {
    return chilkatJNI.CkSFtp_CopyFileAttr(swigCPtr, this, localFilename, remoteFilename, isHandle);
  }

  public CkTask CopyFileAttrAsync(String localFilename, String remoteFilename, boolean isHandle) {
    long cPtr = chilkatJNI.CkSFtp_CopyFileAttrAsync(swigCPtr, this, localFilename, remoteFilename, isHandle);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean CreateDir(String path) {
    return chilkatJNI.CkSFtp_CreateDir(swigCPtr, this, path);
  }

  public CkTask CreateDirAsync(String path) {
    long cPtr = chilkatJNI.CkSFtp_CreateDirAsync(swigCPtr, this, path);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public void Disconnect() {
    chilkatJNI.CkSFtp_Disconnect(swigCPtr, this);
  }

  public boolean DownloadBd(String remoteFilePath, CkBinData binData) {
    return chilkatJNI.CkSFtp_DownloadBd(swigCPtr, this, remoteFilePath, CkBinData.getCPtr(binData), binData);
  }

  public CkTask DownloadBdAsync(String remoteFilePath, CkBinData binData) {
    long cPtr = chilkatJNI.CkSFtp_DownloadBdAsync(swigCPtr, this, remoteFilePath, CkBinData.getCPtr(binData), binData);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean DownloadFile(String handle, String toFilename) {
    return chilkatJNI.CkSFtp_DownloadFile(swigCPtr, this, handle, toFilename);
  }

  public CkTask DownloadFileAsync(String handle, String toFilename) {
    long cPtr = chilkatJNI.CkSFtp_DownloadFileAsync(swigCPtr, this, handle, toFilename);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean DownloadFileByName(String remoteFilePath, String localFilePath) {
    return chilkatJNI.CkSFtp_DownloadFileByName(swigCPtr, this, remoteFilePath, localFilePath);
  }

  public CkTask DownloadFileByNameAsync(String remoteFilePath, String localFilePath) {
    long cPtr = chilkatJNI.CkSFtp_DownloadFileByNameAsync(swigCPtr, this, remoteFilePath, localFilePath);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean DownloadSb(String remoteFilePath, String charset, CkStringBuilder sb) {
    return chilkatJNI.CkSFtp_DownloadSb(swigCPtr, this, remoteFilePath, charset, CkStringBuilder.getCPtr(sb), sb);
  }

  public CkTask DownloadSbAsync(String remoteFilePath, String charset, CkStringBuilder sb) {
    long cPtr = chilkatJNI.CkSFtp_DownloadSbAsync(swigCPtr, this, remoteFilePath, charset, CkStringBuilder.getCPtr(sb), sb);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean Eof(String handle) {
    return chilkatJNI.CkSFtp_Eof(swigCPtr, this, handle);
  }

  public int FileExists(String remotePath, boolean followLinks) {
    return chilkatJNI.CkSFtp_FileExists(swigCPtr, this, remotePath, followLinks);
  }

  public CkTask FileExistsAsync(String remotePath, boolean followLinks) {
    long cPtr = chilkatJNI.CkSFtp_FileExistsAsync(swigCPtr, this, remotePath, followLinks);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean Fsync(String handle) {
    return chilkatJNI.CkSFtp_Fsync(swigCPtr, this, handle);
  }

  public CkTask FsyncAsync(String handle) {
    long cPtr = chilkatJNI.CkSFtp_FsyncAsync(swigCPtr, this, handle);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public CkDateTime GetFileCreateDt(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    long cPtr = chilkatJNI.CkSFtp_GetFileCreateDt(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
    return (cPtr == 0) ? null : new CkDateTime(cPtr, true);
  }

  public CkTask GetFileCreateDtAsync(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    long cPtr = chilkatJNI.CkSFtp_GetFileCreateDtAsync(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean GetFileCreateTimeStr(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle, CkString outStr) {
    return chilkatJNI.CkSFtp_GetFileCreateTimeStr(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle, CkString.getCPtr(outStr), outStr);
  }

  public String getFileCreateTimeStr(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    return chilkatJNI.CkSFtp_getFileCreateTimeStr(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
  }

  public String fileCreateTimeStr(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    return chilkatJNI.CkSFtp_fileCreateTimeStr(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
  }

  public CkTask GetFileCreateTimeStrAsync(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    long cPtr = chilkatJNI.CkSFtp_GetFileCreateTimeStrAsync(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean GetFileGroup(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle, CkString outStr) {
    return chilkatJNI.CkSFtp_GetFileGroup(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle, CkString.getCPtr(outStr), outStr);
  }

  public String getFileGroup(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    return chilkatJNI.CkSFtp_getFileGroup(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
  }

  public String fileGroup(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    return chilkatJNI.CkSFtp_fileGroup(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
  }

  public CkTask GetFileGroupAsync(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    long cPtr = chilkatJNI.CkSFtp_GetFileGroupAsync(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public CkDateTime GetFileLastAccessDt(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    long cPtr = chilkatJNI.CkSFtp_GetFileLastAccessDt(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
    return (cPtr == 0) ? null : new CkDateTime(cPtr, true);
  }

  public CkTask GetFileLastAccessDtAsync(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    long cPtr = chilkatJNI.CkSFtp_GetFileLastAccessDtAsync(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean GetFileLastAccessStr(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle, CkString outStr) {
    return chilkatJNI.CkSFtp_GetFileLastAccessStr(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle, CkString.getCPtr(outStr), outStr);
  }

  public String getFileLastAccessStr(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    return chilkatJNI.CkSFtp_getFileLastAccessStr(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
  }

  public String fileLastAccessStr(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    return chilkatJNI.CkSFtp_fileLastAccessStr(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
  }

  public CkTask GetFileLastAccessStrAsync(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    long cPtr = chilkatJNI.CkSFtp_GetFileLastAccessStrAsync(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public CkDateTime GetFileLastModifiedDt(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    long cPtr = chilkatJNI.CkSFtp_GetFileLastModifiedDt(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
    return (cPtr == 0) ? null : new CkDateTime(cPtr, true);
  }

  public CkTask GetFileLastModifiedDtAsync(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    long cPtr = chilkatJNI.CkSFtp_GetFileLastModifiedDtAsync(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean GetFileLastModifiedStr(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle, CkString outStr) {
    return chilkatJNI.CkSFtp_GetFileLastModifiedStr(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle, CkString.getCPtr(outStr), outStr);
  }

  public String getFileLastModifiedStr(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    return chilkatJNI.CkSFtp_getFileLastModifiedStr(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
  }

  public String fileLastModifiedStr(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    return chilkatJNI.CkSFtp_fileLastModifiedStr(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
  }

  public CkTask GetFileLastModifiedStrAsync(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    long cPtr = chilkatJNI.CkSFtp_GetFileLastModifiedStrAsync(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean GetFileOwner(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle, CkString outStr) {
    return chilkatJNI.CkSFtp_GetFileOwner(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle, CkString.getCPtr(outStr), outStr);
  }

  public String getFileOwner(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    return chilkatJNI.CkSFtp_getFileOwner(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
  }

  public String fileOwner(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    return chilkatJNI.CkSFtp_fileOwner(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
  }

  public CkTask GetFileOwnerAsync(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    long cPtr = chilkatJNI.CkSFtp_GetFileOwnerAsync(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public int GetFilePermissions(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    return chilkatJNI.CkSFtp_GetFilePermissions(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
  }

  public CkTask GetFilePermissionsAsync(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    long cPtr = chilkatJNI.CkSFtp_GetFilePermissionsAsync(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public int GetFileSize32(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    return chilkatJNI.CkSFtp_GetFileSize32(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
  }

  public CkTask GetFileSize32Async(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    long cPtr = chilkatJNI.CkSFtp_GetFileSize32Async(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public long GetFileSize64(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    return chilkatJNI.CkSFtp_GetFileSize64(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
  }

  public CkTask GetFileSize64Async(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    long cPtr = chilkatJNI.CkSFtp_GetFileSize64Async(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean GetFileSizeStr(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle, CkString outStr) {
    return chilkatJNI.CkSFtp_GetFileSizeStr(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle, CkString.getCPtr(outStr), outStr);
  }

  public String getFileSizeStr(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    return chilkatJNI.CkSFtp_getFileSizeStr(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
  }

  public String fileSizeStr(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    return chilkatJNI.CkSFtp_fileSizeStr(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
  }

  public CkTask GetFileSizeStrAsync(String pathOrHandle, boolean bFollowLinks, boolean bIsHandle) {
    long cPtr = chilkatJNI.CkSFtp_GetFileSizeStrAsync(swigCPtr, this, pathOrHandle, bFollowLinks, bIsHandle);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean GetHostKeyFP(String hashAlg, boolean includeKeyType, boolean includeHashName, CkString outStr) {
    return chilkatJNI.CkSFtp_GetHostKeyFP(swigCPtr, this, hashAlg, includeKeyType, includeHashName, CkString.getCPtr(outStr), outStr);
  }

  public String getHostKeyFP(String hashAlg, boolean includeKeyType, boolean includeHashName) {
    return chilkatJNI.CkSFtp_getHostKeyFP(swigCPtr, this, hashAlg, includeKeyType, includeHashName);
  }

  public String hostKeyFP(String hashAlg, boolean includeKeyType, boolean includeHashName) {
    return chilkatJNI.CkSFtp_hostKeyFP(swigCPtr, this, hashAlg, includeKeyType, includeHashName);
  }

  public void GetLastJsonData(CkJsonObject json) {
    chilkatJNI.CkSFtp_GetLastJsonData(swigCPtr, this, CkJsonObject.getCPtr(json), json);
  }

  public void GetSyncedFiles(CkStringTable strTab) {
    chilkatJNI.CkSFtp_GetSyncedFiles(swigCPtr, this, CkStringTable.getCPtr(strTab), strTab);
  }

  public boolean HardLink(String oldPath, String newPath) {
    return chilkatJNI.CkSFtp_HardLink(swigCPtr, this, oldPath, newPath);
  }

  public CkTask HardLinkAsync(String oldPath, String newPath) {
    long cPtr = chilkatJNI.CkSFtp_HardLinkAsync(swigCPtr, this, oldPath, newPath);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean InitializeSftp() {
    return chilkatJNI.CkSFtp_InitializeSftp(swigCPtr, this);
  }

  public CkTask InitializeSftpAsync() {
    long cPtr = chilkatJNI.CkSFtp_InitializeSftpAsync(swigCPtr, this);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public CkJsonObject LastJsonData() {
    long cPtr = chilkatJNI.CkSFtp_LastJsonData(swigCPtr, this);
    return (cPtr == 0) ? null : new CkJsonObject(cPtr, true);
  }

  public boolean LastReadFailed(String handle) {
    return chilkatJNI.CkSFtp_LastReadFailed(swigCPtr, this, handle);
  }

  public int LastReadNumBytes(String handle) {
    return chilkatJNI.CkSFtp_LastReadNumBytes(swigCPtr, this, handle);
  }

  public boolean LoadTaskCaller(CkTask task) {
    return chilkatJNI.CkSFtp_LoadTaskCaller(swigCPtr, this, CkTask.getCPtr(task), task);
  }

  public boolean OpenDir(String path, CkString outStr) {
    return chilkatJNI.CkSFtp_OpenDir(swigCPtr, this, path, CkString.getCPtr(outStr), outStr);
  }

  public String openDir(String path) {
    return chilkatJNI.CkSFtp_openDir(swigCPtr, this, path);
  }

  public CkTask OpenDirAsync(String path) {
    long cPtr = chilkatJNI.CkSFtp_OpenDirAsync(swigCPtr, this, path);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean OpenFile(String remotePath, String access, String createDisposition, CkString outStr) {
    return chilkatJNI.CkSFtp_OpenFile(swigCPtr, this, remotePath, access, createDisposition, CkString.getCPtr(outStr), outStr);
  }

  public String openFile(String remotePath, String access, String createDisposition) {
    return chilkatJNI.CkSFtp_openFile(swigCPtr, this, remotePath, access, createDisposition);
  }

  public CkTask OpenFileAsync(String remotePath, String access, String createDisposition) {
    long cPtr = chilkatJNI.CkSFtp_OpenFileAsync(swigCPtr, this, remotePath, access, createDisposition);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public CkSFtpDir ReadDir(String handle) {
    long cPtr = chilkatJNI.CkSFtp_ReadDir(swigCPtr, this, handle);
    return (cPtr == 0) ? null : new CkSFtpDir(cPtr, true);
  }

  public CkTask ReadDirAsync(String handle) {
    long cPtr = chilkatJNI.CkSFtp_ReadDirAsync(swigCPtr, this, handle);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean ReadDirListing(String handle, CkSFtpDir dirObj) {
    return chilkatJNI.CkSFtp_ReadDirListing(swigCPtr, this, handle, CkSFtpDir.getCPtr(dirObj), dirObj);
  }

  public CkTask ReadDirListingAsync(String handle, CkSFtpDir dirObj) {
    long cPtr = chilkatJNI.CkSFtp_ReadDirListingAsync(swigCPtr, this, handle, CkSFtpDir.getCPtr(dirObj), dirObj);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean ReadFileBd(String handle, int numBytes, CkBinData bd) {
    return chilkatJNI.CkSFtp_ReadFileBd(swigCPtr, this, handle, numBytes, CkBinData.getCPtr(bd), bd);
  }

  public CkTask ReadFileBdAsync(String handle, int numBytes, CkBinData bd) {
    long cPtr = chilkatJNI.CkSFtp_ReadFileBdAsync(swigCPtr, this, handle, numBytes, CkBinData.getCPtr(bd), bd);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean ReadFileBytes(String handle, int numBytes, CkByteData outBytes) {
    return chilkatJNI.CkSFtp_ReadFileBytes(swigCPtr, this, handle, numBytes, CkByteData.getCPtr(outBytes), outBytes);
  }

  public CkTask ReadFileBytesAsync(String handle, int numBytes) {
    long cPtr = chilkatJNI.CkSFtp_ReadFileBytesAsync(swigCPtr, this, handle, numBytes);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean ReadFileBytes32(String handle, int offset, int numBytes, CkByteData outBytes) {
    return chilkatJNI.CkSFtp_ReadFileBytes32(swigCPtr, this, handle, offset, numBytes, CkByteData.getCPtr(outBytes), outBytes);
  }

  public CkTask ReadFileBytes32Async(String handle, int offset, int numBytes) {
    long cPtr = chilkatJNI.CkSFtp_ReadFileBytes32Async(swigCPtr, this, handle, offset, numBytes);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean ReadFileBytes64(String handle, long offset, int numBytes, CkByteData outBytes) {
    return chilkatJNI.CkSFtp_ReadFileBytes64(swigCPtr, this, handle, offset, numBytes, CkByteData.getCPtr(outBytes), outBytes);
  }

  public CkTask ReadFileBytes64Async(String handle, long offset, int numBytes) {
    long cPtr = chilkatJNI.CkSFtp_ReadFileBytes64Async(swigCPtr, this, handle, offset, numBytes);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean ReadFileBytes64s(String handle, String offset, int numBytes, CkByteData outBytes) {
    return chilkatJNI.CkSFtp_ReadFileBytes64s(swigCPtr, this, handle, offset, numBytes, CkByteData.getCPtr(outBytes), outBytes);
  }

  public CkTask ReadFileBytes64sAsync(String handle, String offset, int numBytes) {
    long cPtr = chilkatJNI.CkSFtp_ReadFileBytes64sAsync(swigCPtr, this, handle, offset, numBytes);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean ReadFileText(String handle, int numBytes, String charset, CkString outStr) {
    return chilkatJNI.CkSFtp_ReadFileText(swigCPtr, this, handle, numBytes, charset, CkString.getCPtr(outStr), outStr);
  }

  public String readFileText(String handle, int numBytes, String charset) {
    return chilkatJNI.CkSFtp_readFileText(swigCPtr, this, handle, numBytes, charset);
  }

  public CkTask ReadFileTextAsync(String handle, int numBytes, String charset) {
    long cPtr = chilkatJNI.CkSFtp_ReadFileTextAsync(swigCPtr, this, handle, numBytes, charset);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean ReadFileText32(String handle, int offset, int numBytes, String charset, CkString outStr) {
    return chilkatJNI.CkSFtp_ReadFileText32(swigCPtr, this, handle, offset, numBytes, charset, CkString.getCPtr(outStr), outStr);
  }

  public String readFileText32(String handle, int offset, int numBytes, String charset) {
    return chilkatJNI.CkSFtp_readFileText32(swigCPtr, this, handle, offset, numBytes, charset);
  }

  public CkTask ReadFileText32Async(String handle, int offset, int numBytes, String charset) {
    long cPtr = chilkatJNI.CkSFtp_ReadFileText32Async(swigCPtr, this, handle, offset, numBytes, charset);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean ReadFileText64(String handle, long offset, int numBytes, String charset, CkString outStr) {
    return chilkatJNI.CkSFtp_ReadFileText64(swigCPtr, this, handle, offset, numBytes, charset, CkString.getCPtr(outStr), outStr);
  }

  public String readFileText64(String handle, long offset, int numBytes, String charset) {
    return chilkatJNI.CkSFtp_readFileText64(swigCPtr, this, handle, offset, numBytes, charset);
  }

  public CkTask ReadFileText64Async(String handle, long offset, int numBytes, String charset) {
    long cPtr = chilkatJNI.CkSFtp_ReadFileText64Async(swigCPtr, this, handle, offset, numBytes, charset);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean ReadFileText64s(String handle, String offset, int numBytes, String charset, CkString outStr) {
    return chilkatJNI.CkSFtp_ReadFileText64s(swigCPtr, this, handle, offset, numBytes, charset, CkString.getCPtr(outStr), outStr);
  }

  public String readFileText64s(String handle, String offset, int numBytes, String charset) {
    return chilkatJNI.CkSFtp_readFileText64s(swigCPtr, this, handle, offset, numBytes, charset);
  }

  public CkTask ReadFileText64sAsync(String handle, String offset, int numBytes, String charset) {
    long cPtr = chilkatJNI.CkSFtp_ReadFileText64sAsync(swigCPtr, this, handle, offset, numBytes, charset);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean ReadLink(String path, CkString outStr) {
    return chilkatJNI.CkSFtp_ReadLink(swigCPtr, this, path, CkString.getCPtr(outStr), outStr);
  }

  public String readLink(String path) {
    return chilkatJNI.CkSFtp_readLink(swigCPtr, this, path);
  }

  public CkTask ReadLinkAsync(String path) {
    long cPtr = chilkatJNI.CkSFtp_ReadLinkAsync(swigCPtr, this, path);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean RealPath(String originalPath, String composePath, CkString outStr) {
    return chilkatJNI.CkSFtp_RealPath(swigCPtr, this, originalPath, composePath, CkString.getCPtr(outStr), outStr);
  }

  public String realPath(String originalPath, String composePath) {
    return chilkatJNI.CkSFtp_realPath(swigCPtr, this, originalPath, composePath);
  }

  public CkTask RealPathAsync(String originalPath, String composePath) {
    long cPtr = chilkatJNI.CkSFtp_RealPathAsync(swigCPtr, this, originalPath, composePath);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean RemoveDir(String path) {
    return chilkatJNI.CkSFtp_RemoveDir(swigCPtr, this, path);
  }

  public CkTask RemoveDirAsync(String path) {
    long cPtr = chilkatJNI.CkSFtp_RemoveDirAsync(swigCPtr, this, path);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean RemoveFile(String filename) {
    return chilkatJNI.CkSFtp_RemoveFile(swigCPtr, this, filename);
  }

  public CkTask RemoveFileAsync(String filename) {
    long cPtr = chilkatJNI.CkSFtp_RemoveFileAsync(swigCPtr, this, filename);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean RenameFileOrDir(String oldPath, String newPath) {
    return chilkatJNI.CkSFtp_RenameFileOrDir(swigCPtr, this, oldPath, newPath);
  }

  public CkTask RenameFileOrDirAsync(String oldPath, String newPath) {
    long cPtr = chilkatJNI.CkSFtp_RenameFileOrDirAsync(swigCPtr, this, oldPath, newPath);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean ResumeDownloadFileByName(String remoteFilePath, String localFilePath) {
    return chilkatJNI.CkSFtp_ResumeDownloadFileByName(swigCPtr, this, remoteFilePath, localFilePath);
  }

  public CkTask ResumeDownloadFileByNameAsync(String remoteFilePath, String localFilePath) {
    long cPtr = chilkatJNI.CkSFtp_ResumeDownloadFileByNameAsync(swigCPtr, this, remoteFilePath, localFilePath);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean ResumeUploadFileByName(String remoteFilePath, String localFilePath) {
    return chilkatJNI.CkSFtp_ResumeUploadFileByName(swigCPtr, this, remoteFilePath, localFilePath);
  }

  public CkTask ResumeUploadFileByNameAsync(String remoteFilePath, String localFilePath) {
    long cPtr = chilkatJNI.CkSFtp_ResumeUploadFileByNameAsync(swigCPtr, this, remoteFilePath, localFilePath);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean SendIgnore() {
    return chilkatJNI.CkSFtp_SendIgnore(swigCPtr, this);
  }

  public CkTask SendIgnoreAsync() {
    long cPtr = chilkatJNI.CkSFtp_SendIgnoreAsync(swigCPtr, this);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean SetAllowedAlgorithms(CkJsonObject json) {
    return chilkatJNI.CkSFtp_SetAllowedAlgorithms(swigCPtr, this, CkJsonObject.getCPtr(json), json);
  }

  public boolean SetCreateDt(String pathOrHandle, boolean isHandle, CkDateTime createDateTime) {
    return chilkatJNI.CkSFtp_SetCreateDt(swigCPtr, this, pathOrHandle, isHandle, CkDateTime.getCPtr(createDateTime), createDateTime);
  }

  public CkTask SetCreateDtAsync(String pathOrHandle, boolean isHandle, CkDateTime createDateTime) {
    long cPtr = chilkatJNI.CkSFtp_SetCreateDtAsync(swigCPtr, this, pathOrHandle, isHandle, CkDateTime.getCPtr(createDateTime), createDateTime);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean SetCreateTimeStr(String pathOrHandle, boolean bIsHandle, String dateTimeStr) {
    return chilkatJNI.CkSFtp_SetCreateTimeStr(swigCPtr, this, pathOrHandle, bIsHandle, dateTimeStr);
  }

  public CkTask SetCreateTimeStrAsync(String pathOrHandle, boolean bIsHandle, String dateTimeStr) {
    long cPtr = chilkatJNI.CkSFtp_SetCreateTimeStrAsync(swigCPtr, this, pathOrHandle, bIsHandle, dateTimeStr);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean SetLastAccessDt(String pathOrHandle, boolean isHandle, CkDateTime accessDateTime) {
    return chilkatJNI.CkSFtp_SetLastAccessDt(swigCPtr, this, pathOrHandle, isHandle, CkDateTime.getCPtr(accessDateTime), accessDateTime);
  }

  public CkTask SetLastAccessDtAsync(String pathOrHandle, boolean isHandle, CkDateTime accessDateTime) {
    long cPtr = chilkatJNI.CkSFtp_SetLastAccessDtAsync(swigCPtr, this, pathOrHandle, isHandle, CkDateTime.getCPtr(accessDateTime), accessDateTime);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean SetLastAccessTimeStr(String pathOrHandle, boolean bIsHandle, String dateTimeStr) {
    return chilkatJNI.CkSFtp_SetLastAccessTimeStr(swigCPtr, this, pathOrHandle, bIsHandle, dateTimeStr);
  }

  public CkTask SetLastAccessTimeStrAsync(String pathOrHandle, boolean bIsHandle, String dateTimeStr) {
    long cPtr = chilkatJNI.CkSFtp_SetLastAccessTimeStrAsync(swigCPtr, this, pathOrHandle, bIsHandle, dateTimeStr);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean SetLastModifiedDt(String pathOrHandle, boolean isHandle, CkDateTime modifiedDateTime) {
    return chilkatJNI.CkSFtp_SetLastModifiedDt(swigCPtr, this, pathOrHandle, isHandle, CkDateTime.getCPtr(modifiedDateTime), modifiedDateTime);
  }

  public CkTask SetLastModifiedDtAsync(String pathOrHandle, boolean isHandle, CkDateTime modifiedDateTime) {
    long cPtr = chilkatJNI.CkSFtp_SetLastModifiedDtAsync(swigCPtr, this, pathOrHandle, isHandle, CkDateTime.getCPtr(modifiedDateTime), modifiedDateTime);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean SetLastModifiedTimeStr(String pathOrHandle, boolean bIsHandle, String dateTimeStr) {
    return chilkatJNI.CkSFtp_SetLastModifiedTimeStr(swigCPtr, this, pathOrHandle, bIsHandle, dateTimeStr);
  }

  public CkTask SetLastModifiedTimeStrAsync(String pathOrHandle, boolean bIsHandle, String dateTimeStr) {
    long cPtr = chilkatJNI.CkSFtp_SetLastModifiedTimeStrAsync(swigCPtr, this, pathOrHandle, bIsHandle, dateTimeStr);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean SetOwnerAndGroup(String pathOrHandle, boolean isHandle, String owner, String group) {
    return chilkatJNI.CkSFtp_SetOwnerAndGroup(swigCPtr, this, pathOrHandle, isHandle, owner, group);
  }

  public CkTask SetOwnerAndGroupAsync(String pathOrHandle, boolean isHandle, String owner, String group) {
    long cPtr = chilkatJNI.CkSFtp_SetOwnerAndGroupAsync(swigCPtr, this, pathOrHandle, isHandle, owner, group);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean SetPermissions(String pathOrHandle, boolean isHandle, int permissions) {
    return chilkatJNI.CkSFtp_SetPermissions(swigCPtr, this, pathOrHandle, isHandle, permissions);
  }

  public CkTask SetPermissionsAsync(String pathOrHandle, boolean isHandle, int permissions) {
    long cPtr = chilkatJNI.CkSFtp_SetPermissionsAsync(swigCPtr, this, pathOrHandle, isHandle, permissions);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean StartKeyboardAuth(String login, CkString outStr) {
    return chilkatJNI.CkSFtp_StartKeyboardAuth(swigCPtr, this, login, CkString.getCPtr(outStr), outStr);
  }

  public String startKeyboardAuth(String login) {
    return chilkatJNI.CkSFtp_startKeyboardAuth(swigCPtr, this, login);
  }

  public CkTask StartKeyboardAuthAsync(String login) {
    long cPtr = chilkatJNI.CkSFtp_StartKeyboardAuthAsync(swigCPtr, this, login);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean SymLink(String oldPath, String newPath) {
    return chilkatJNI.CkSFtp_SymLink(swigCPtr, this, oldPath, newPath);
  }

  public CkTask SymLinkAsync(String oldPath, String newPath) {
    long cPtr = chilkatJNI.CkSFtp_SymLinkAsync(swigCPtr, this, oldPath, newPath);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean SyncTreeDownload(String remoteRoot, String localRoot, int mode, boolean recurse) {
    return chilkatJNI.CkSFtp_SyncTreeDownload(swigCPtr, this, remoteRoot, localRoot, mode, recurse);
  }

  public CkTask SyncTreeDownloadAsync(String remoteRoot, String localRoot, int mode, boolean recurse) {
    long cPtr = chilkatJNI.CkSFtp_SyncTreeDownloadAsync(swigCPtr, this, remoteRoot, localRoot, mode, recurse);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean SyncTreeUpload(String localBaseDir, String remoteBaseDir, int mode, boolean bRecurse) {
    return chilkatJNI.CkSFtp_SyncTreeUpload(swigCPtr, this, localBaseDir, remoteBaseDir, mode, bRecurse);
  }

  public CkTask SyncTreeUploadAsync(String localBaseDir, String remoteBaseDir, int mode, boolean bRecurse) {
    long cPtr = chilkatJNI.CkSFtp_SyncTreeUploadAsync(swigCPtr, this, localBaseDir, remoteBaseDir, mode, bRecurse);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean UploadBd(CkBinData binData, String remoteFilePath) {
    return chilkatJNI.CkSFtp_UploadBd(swigCPtr, this, CkBinData.getCPtr(binData), binData, remoteFilePath);
  }

  public CkTask UploadBdAsync(CkBinData binData, String remoteFilePath) {
    long cPtr = chilkatJNI.CkSFtp_UploadBdAsync(swigCPtr, this, CkBinData.getCPtr(binData), binData, remoteFilePath);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean UploadFile(String handle, String fromLocalFilePath) {
    return chilkatJNI.CkSFtp_UploadFile(swigCPtr, this, handle, fromLocalFilePath);
  }

  public CkTask UploadFileAsync(String handle, String fromLocalFilePath) {
    long cPtr = chilkatJNI.CkSFtp_UploadFileAsync(swigCPtr, this, handle, fromLocalFilePath);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean UploadFileByName(String remoteFilePath, String localFilePath) {
    return chilkatJNI.CkSFtp_UploadFileByName(swigCPtr, this, remoteFilePath, localFilePath);
  }

  public CkTask UploadFileByNameAsync(String remoteFilePath, String localFilePath) {
    long cPtr = chilkatJNI.CkSFtp_UploadFileByNameAsync(swigCPtr, this, remoteFilePath, localFilePath);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean UploadSb(CkStringBuilder sb, String remoteFilePath, String charset, boolean includeBom) {
    return chilkatJNI.CkSFtp_UploadSb(swigCPtr, this, CkStringBuilder.getCPtr(sb), sb, remoteFilePath, charset, includeBom);
  }

  public CkTask UploadSbAsync(CkStringBuilder sb, String remoteFilePath, String charset, boolean includeBom) {
    long cPtr = chilkatJNI.CkSFtp_UploadSbAsync(swigCPtr, this, CkStringBuilder.getCPtr(sb), sb, remoteFilePath, charset, includeBom);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean WriteFileBd(String handle, CkBinData bd) {
    return chilkatJNI.CkSFtp_WriteFileBd(swigCPtr, this, handle, CkBinData.getCPtr(bd), bd);
  }

  public CkTask WriteFileBdAsync(String handle, CkBinData bd) {
    long cPtr = chilkatJNI.CkSFtp_WriteFileBdAsync(swigCPtr, this, handle, CkBinData.getCPtr(bd), bd);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean WriteFileBytes(String handle, CkByteData byteData) {
    return chilkatJNI.CkSFtp_WriteFileBytes(swigCPtr, this, handle, CkByteData.getCPtr(byteData), byteData);
  }

  public CkTask WriteFileBytesAsync(String handle, CkByteData byteData) {
    long cPtr = chilkatJNI.CkSFtp_WriteFileBytesAsync(swigCPtr, this, handle, CkByteData.getCPtr(byteData), byteData);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean WriteFileBytes32(String handle, int offset, CkByteData data) {
    return chilkatJNI.CkSFtp_WriteFileBytes32(swigCPtr, this, handle, offset, CkByteData.getCPtr(data), data);
  }

  public CkTask WriteFileBytes32Async(String handle, int offset, CkByteData data) {
    long cPtr = chilkatJNI.CkSFtp_WriteFileBytes32Async(swigCPtr, this, handle, offset, CkByteData.getCPtr(data), data);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean WriteFileBytes64(String handle, long offset64, CkByteData data) {
    return chilkatJNI.CkSFtp_WriteFileBytes64(swigCPtr, this, handle, offset64, CkByteData.getCPtr(data), data);
  }

  public CkTask WriteFileBytes64Async(String handle, long offset64, CkByteData data) {
    long cPtr = chilkatJNI.CkSFtp_WriteFileBytes64Async(swigCPtr, this, handle, offset64, CkByteData.getCPtr(data), data);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean WriteFileBytes64s(String handle, String offset64, CkByteData data) {
    return chilkatJNI.CkSFtp_WriteFileBytes64s(swigCPtr, this, handle, offset64, CkByteData.getCPtr(data), data);
  }

  public CkTask WriteFileBytes64sAsync(String handle, String offset64, CkByteData data) {
    long cPtr = chilkatJNI.CkSFtp_WriteFileBytes64sAsync(swigCPtr, this, handle, offset64, CkByteData.getCPtr(data), data);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean WriteFileText(String handle, String charset, String textData) {
    return chilkatJNI.CkSFtp_WriteFileText(swigCPtr, this, handle, charset, textData);
  }

  public CkTask WriteFileTextAsync(String handle, String charset, String textData) {
    long cPtr = chilkatJNI.CkSFtp_WriteFileTextAsync(swigCPtr, this, handle, charset, textData);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean WriteFileText32(String handle, int offset32, String charset, String textData) {
    return chilkatJNI.CkSFtp_WriteFileText32(swigCPtr, this, handle, offset32, charset, textData);
  }

  public CkTask WriteFileText32Async(String handle, int offset32, String charset, String textData) {
    long cPtr = chilkatJNI.CkSFtp_WriteFileText32Async(swigCPtr, this, handle, offset32, charset, textData);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean WriteFileText64(String handle, long offset64, String charset, String textData) {
    return chilkatJNI.CkSFtp_WriteFileText64(swigCPtr, this, handle, offset64, charset, textData);
  }

  public CkTask WriteFileText64Async(String handle, long offset64, String charset, String textData) {
    long cPtr = chilkatJNI.CkSFtp_WriteFileText64Async(swigCPtr, this, handle, offset64, charset, textData);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

  public boolean WriteFileText64s(String handle, String offset64, String charset, String textData) {
    return chilkatJNI.CkSFtp_WriteFileText64s(swigCPtr, this, handle, offset64, charset, textData);
  }

  public CkTask WriteFileText64sAsync(String handle, String offset64, String charset, String textData) {
    long cPtr = chilkatJNI.CkSFtp_WriteFileText64sAsync(swigCPtr, this, handle, offset64, charset, textData);
    return (cPtr == 0) ? null : new CkTask(cPtr, true);
  }

}
