@chilkat/react-native 11.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/ChilkatRN.podspec +44 -0
- package/LICENSE +254 -0
- package/README.md +67 -0
- package/android/CMakeLists.txt +60 -0
- package/android/build.gradle +148 -0
- package/android/gradle.properties +5 -0
- package/android/src/main/AndroidManifest.xml +2 -0
- package/android/src/main/cpp/cpp-adapter.cpp +12 -0
- package/android/src/main/java/com/margelo/nitro/chilkat/ChilkatRNPackage.java +33 -0
- package/chilkat-checksums.json +9 -0
- package/cpp/HybridAi.cpp +660 -0
- package/cpp/HybridAi.hpp +159 -0
- package/cpp/HybridAsn.cpp +403 -0
- package/cpp/HybridAsn.hpp +105 -0
- package/cpp/HybridAuthAws.cpp +188 -0
- package/cpp/HybridAuthAws.hpp +55 -0
- package/cpp/HybridAuthAzureSAS.cpp +142 -0
- package/cpp/HybridAuthAzureSAS.hpp +47 -0
- package/cpp/HybridAuthAzureStorage.cpp +144 -0
- package/cpp/HybridAuthAzureStorage.hpp +47 -0
- package/cpp/HybridAuthGoogle.cpp +215 -0
- package/cpp/HybridAuthGoogle.hpp +67 -0
- package/cpp/HybridBinData.cpp +439 -0
- package/cpp/HybridBinData.hpp +112 -0
- package/cpp/HybridBz2.cpp +177 -0
- package/cpp/HybridBz2.hpp +58 -0
- package/cpp/HybridCache.cpp +314 -0
- package/cpp/HybridCache.hpp +82 -0
- package/cpp/HybridCert.cpp +840 -0
- package/cpp/HybridCert.hpp +196 -0
- package/cpp/HybridCertChain.cpp +149 -0
- package/cpp/HybridCertChain.hpp +50 -0
- package/cpp/HybridCertStore.cpp +276 -0
- package/cpp/HybridCertStore.hpp +78 -0
- package/cpp/HybridCharset.cpp +333 -0
- package/cpp/HybridCharset.hpp +83 -0
- package/cpp/HybridCkDateTime.cpp +384 -0
- package/cpp/HybridCkDateTime.hpp +105 -0
- package/cpp/HybridCodeSign.cpp +156 -0
- package/cpp/HybridCodeSign.hpp +55 -0
- package/cpp/HybridCompression.cpp +422 -0
- package/cpp/HybridCompression.hpp +100 -0
- package/cpp/HybridCrypt2.cpp +1517 -0
- package/cpp/HybridCrypt2.hpp +320 -0
- package/cpp/HybridCsr.cpp +292 -0
- package/cpp/HybridCsr.hpp +77 -0
- package/cpp/HybridCsv.cpp +382 -0
- package/cpp/HybridCsv.hpp +101 -0
- package/cpp/HybridDh.cpp +137 -0
- package/cpp/HybridDh.hpp +47 -0
- package/cpp/HybridDirTree.cpp +167 -0
- package/cpp/HybridDirTree.hpp +53 -0
- package/cpp/HybridDkim.cpp +249 -0
- package/cpp/HybridDkim.hpp +74 -0
- package/cpp/HybridDns.cpp +193 -0
- package/cpp/HybridDns.hpp +64 -0
- package/cpp/HybridDsa.cpp +453 -0
- package/cpp/HybridDsa.hpp +112 -0
- package/cpp/HybridDtObj.cpp +172 -0
- package/cpp/HybridDtObj.hpp +57 -0
- package/cpp/HybridEcc.cpp +195 -0
- package/cpp/HybridEcc.hpp +55 -0
- package/cpp/HybridEdDSA.cpp +147 -0
- package/cpp/HybridEdDSA.hpp +47 -0
- package/cpp/HybridEmail.cpp +1911 -0
- package/cpp/HybridEmail.hpp +419 -0
- package/cpp/HybridEmailBundle.cpp +204 -0
- package/cpp/HybridEmailBundle.hpp +64 -0
- package/cpp/HybridFileAccess.cpp +631 -0
- package/cpp/HybridFileAccess.hpp +149 -0
- package/cpp/HybridFtp2.cpp +2308 -0
- package/cpp/HybridFtp2.hpp +462 -0
- package/cpp/HybridGlobal.cpp +221 -0
- package/cpp/HybridGlobal.hpp +68 -0
- package/cpp/HybridGzip.cpp +440 -0
- package/cpp/HybridGzip.hpp +105 -0
- package/cpp/HybridHashtable.cpp +211 -0
- package/cpp/HybridHashtable.hpp +64 -0
- package/cpp/HybridHtmlToText.cpp +136 -0
- package/cpp/HybridHtmlToText.hpp +47 -0
- package/cpp/HybridHtmlToXml.cpp +218 -0
- package/cpp/HybridHtmlToXml.hpp +65 -0
- package/cpp/HybridHttp.cpp +2067 -0
- package/cpp/HybridHttp.hpp +416 -0
- package/cpp/HybridHttpCurl.cpp +337 -0
- package/cpp/HybridHttpCurl.hpp +93 -0
- package/cpp/HybridHttpRequest.cpp +455 -0
- package/cpp/HybridHttpRequest.hpp +109 -0
- package/cpp/HybridHttpResponse.cpp +340 -0
- package/cpp/HybridHttpResponse.hpp +86 -0
- package/cpp/HybridImap.cpp +1818 -0
- package/cpp/HybridImap.hpp +363 -0
- package/cpp/HybridJavaKeyStore.cpp +387 -0
- package/cpp/HybridJavaKeyStore.hpp +98 -0
- package/cpp/HybridJs.cpp +154 -0
- package/cpp/HybridJs.hpp +54 -0
- package/cpp/HybridJsonArray.cpp +441 -0
- package/cpp/HybridJsonArray.hpp +120 -0
- package/cpp/HybridJsonObject.cpp +1125 -0
- package/cpp/HybridJsonObject.hpp +260 -0
- package/cpp/HybridJwe.cpp +294 -0
- package/cpp/HybridJwe.hpp +82 -0
- package/cpp/HybridJws.cpp +290 -0
- package/cpp/HybridJws.hpp +82 -0
- package/cpp/HybridJwt.cpp +198 -0
- package/cpp/HybridJwt.hpp +57 -0
- package/cpp/HybridLog.cpp +212 -0
- package/cpp/HybridLog.hpp +63 -0
- package/cpp/HybridMailMan.cpp +1853 -0
- package/cpp/HybridMailMan.hpp +386 -0
- package/cpp/HybridMailboxes.cpp +165 -0
- package/cpp/HybridMailboxes.hpp +54 -0
- package/cpp/HybridMcp.cpp +322 -0
- package/cpp/HybridMcp.hpp +85 -0
- package/cpp/HybridMessageSet.cpp +162 -0
- package/cpp/HybridMessageSet.hpp +54 -0
- package/cpp/HybridMht.cpp +700 -0
- package/cpp/HybridMht.hpp +165 -0
- package/cpp/HybridMime.cpp +1119 -0
- package/cpp/HybridMime.hpp +266 -0
- package/cpp/HybridNtlm.cpp +333 -0
- package/cpp/HybridNtlm.hpp +83 -0
- package/cpp/HybridOAuth1.cpp +307 -0
- package/cpp/HybridOAuth1.hpp +78 -0
- package/cpp/HybridOAuth2.cpp +515 -0
- package/cpp/HybridOAuth2.hpp +127 -0
- package/cpp/HybridPdf.cpp +370 -0
- package/cpp/HybridPdf.hpp +103 -0
- package/cpp/HybridPem.cpp +327 -0
- package/cpp/HybridPem.hpp +88 -0
- package/cpp/HybridPfx.cpp +343 -0
- package/cpp/HybridPfx.hpp +87 -0
- package/cpp/HybridPkcs11.cpp +318 -0
- package/cpp/HybridPkcs11.hpp +88 -0
- package/cpp/HybridPrivateKey.cpp +464 -0
- package/cpp/HybridPrivateKey.hpp +117 -0
- package/cpp/HybridPrng.cpp +192 -0
- package/cpp/HybridPrng.hpp +57 -0
- package/cpp/HybridPublicKey.cpp +238 -0
- package/cpp/HybridPublicKey.hpp +68 -0
- package/cpp/HybridRest.cpp +993 -0
- package/cpp/HybridRest.hpp +214 -0
- package/cpp/HybridRsa.cpp +348 -0
- package/cpp/HybridRsa.hpp +90 -0
- package/cpp/HybridSCard.cpp +328 -0
- package/cpp/HybridSCard.hpp +91 -0
- package/cpp/HybridSFtp.cpp +1889 -0
- package/cpp/HybridSFtp.hpp +366 -0
- package/cpp/HybridSFtpDir.cpp +119 -0
- package/cpp/HybridSFtpDir.hpp +43 -0
- package/cpp/HybridSFtpFile.cpp +203 -0
- package/cpp/HybridSFtpFile.hpp +60 -0
- package/cpp/HybridScMinidriver.cpp +341 -0
- package/cpp/HybridScMinidriver.hpp +88 -0
- package/cpp/HybridScp.cpp +398 -0
- package/cpp/HybridScp.hpp +96 -0
- package/cpp/HybridSecrets.cpp +328 -0
- package/cpp/HybridSecrets.hpp +84 -0
- package/cpp/HybridSecureString.cpp +175 -0
- package/cpp/HybridSecureString.hpp +55 -0
- package/cpp/HybridServerSentEvent.cpp +112 -0
- package/cpp/HybridServerSentEvent.hpp +41 -0
- package/cpp/HybridSocket.cpp +1567 -0
- package/cpp/HybridSocket.hpp +336 -0
- package/cpp/HybridSpider.cpp +543 -0
- package/cpp/HybridSpider.hpp +138 -0
- package/cpp/HybridSsh.cpp +1330 -0
- package/cpp/HybridSsh.hpp +282 -0
- package/cpp/HybridSshKey.cpp +310 -0
- package/cpp/HybridSshKey.hpp +83 -0
- package/cpp/HybridSshTunnel.cpp +687 -0
- package/cpp/HybridSshTunnel.hpp +159 -0
- package/cpp/HybridStream.cpp +496 -0
- package/cpp/HybridStream.hpp +123 -0
- package/cpp/HybridStringArray.cpp +368 -0
- package/cpp/HybridStringArray.hpp +99 -0
- package/cpp/HybridStringBuilder.cpp +739 -0
- package/cpp/HybridStringBuilder.hpp +178 -0
- package/cpp/HybridStringTable.cpp +218 -0
- package/cpp/HybridStringTable.hpp +66 -0
- package/cpp/HybridTar.cpp +547 -0
- package/cpp/HybridTar.hpp +134 -0
- package/cpp/HybridTrustedRoots.cpp +178 -0
- package/cpp/HybridTrustedRoots.hpp +61 -0
- package/cpp/HybridUnixCompress.cpp +191 -0
- package/cpp/HybridUnixCompress.hpp +60 -0
- package/cpp/HybridUpload.cpp +427 -0
- package/cpp/HybridUpload.hpp +114 -0
- package/cpp/HybridUrl.cpp +152 -0
- package/cpp/HybridUrl.hpp +48 -0
- package/cpp/HybridWebSocket.cpp +378 -0
- package/cpp/HybridWebSocket.hpp +103 -0
- package/cpp/HybridXml.cpp +1527 -0
- package/cpp/HybridXml.hpp +340 -0
- package/cpp/HybridXmlCertVault.cpp +215 -0
- package/cpp/HybridXmlCertVault.hpp +63 -0
- package/cpp/HybridXmlDSig.cpp +328 -0
- package/cpp/HybridXmlDSig.hpp +88 -0
- package/cpp/HybridXmlDSigGen.cpp +549 -0
- package/cpp/HybridXmlDSigGen.hpp +126 -0
- package/cpp/HybridXmp.cpp +329 -0
- package/cpp/HybridXmp.hpp +86 -0
- package/cpp/HybridZip.cpp +1000 -0
- package/cpp/HybridZip.hpp +226 -0
- package/cpp/HybridZipCrc.cpp +162 -0
- package/cpp/HybridZipCrc.hpp +57 -0
- package/cpp/HybridZipEntry.cpp +395 -0
- package/cpp/HybridZipEntry.hpp +102 -0
- package/cpp/runtime/AsyncCall.hpp +96 -0
- package/cpp/runtime/Bytes.hpp +49 -0
- package/cpp/runtime/ChilkatError.hpp +66 -0
- package/cpp/runtime/ChilkatObject.hpp +219 -0
- package/cpp/runtime/ProgLang.hpp +9 -0
- package/cpp/runtime/ProgressAdapter.hpp +43 -0
- package/nitro.json +113 -0
- package/nitrogen/generated/.gitattributes +1 -0
- package/nitrogen/generated/android/ChilkatRN+autolinking.cmake +179 -0
- package/nitrogen/generated/android/ChilkatRN+autolinking.gradle +27 -0
- package/nitrogen/generated/android/ChilkatRNOnLoad.cpp +1029 -0
- package/nitrogen/generated/android/ChilkatRNOnLoad.hpp +34 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/chilkat/ChilkatRNOnLoad.kt +35 -0
- package/nitrogen/generated/ios/ChilkatRN+autolinking.rb +62 -0
- package/nitrogen/generated/ios/ChilkatRN-Swift-Cxx-Bridge.cpp +17 -0
- package/nitrogen/generated/ios/ChilkatRN-Swift-Cxx-Bridge.hpp +27 -0
- package/nitrogen/generated/ios/ChilkatRN-Swift-Cxx-Umbrella.hpp +38 -0
- package/nitrogen/generated/ios/ChilkatRNAutolinking.mm +1015 -0
- package/nitrogen/generated/ios/ChilkatRNAutolinking.swift +16 -0
- package/nitrogen/generated/shared/c++/HybridAiSpec.cpp +114 -0
- package/nitrogen/generated/shared/c++/HybridAiSpec.hpp +175 -0
- package/nitrogen/generated/shared/c++/HybridAsnSpec.cpp +70 -0
- package/nitrogen/generated/shared/c++/HybridAsnSpec.hpp +116 -0
- package/nitrogen/generated/shared/c++/HybridAuthAwsSpec.cpp +49 -0
- package/nitrogen/generated/shared/c++/HybridAuthAwsSpec.hpp +89 -0
- package/nitrogen/generated/shared/c++/HybridAuthAzureSASSpec.cpp +38 -0
- package/nitrogen/generated/shared/c++/HybridAuthAzureSASSpec.hpp +78 -0
- package/nitrogen/generated/shared/c++/HybridAuthAzureStorageSpec.cpp +41 -0
- package/nitrogen/generated/shared/c++/HybridAuthAzureStorageSpec.hpp +81 -0
- package/nitrogen/generated/shared/c++/HybridAuthGoogleSpec.cpp +56 -0
- package/nitrogen/generated/shared/c++/HybridAuthGoogleSpec.hpp +108 -0
- package/nitrogen/generated/shared/c++/HybridBinDataSpec.cpp +69 -0
- package/nitrogen/generated/shared/c++/HybridBinDataSpec.hpp +116 -0
- package/nitrogen/generated/shared/c++/HybridBz2Spec.cpp +47 -0
- package/nitrogen/generated/shared/c++/HybridBz2Spec.hpp +93 -0
- package/nitrogen/generated/shared/c++/HybridCacheSpec.cpp +57 -0
- package/nitrogen/generated/shared/c++/HybridCacheSpec.hpp +106 -0
- package/nitrogen/generated/shared/c++/HybridCertChainSpec.cpp +40 -0
- package/nitrogen/generated/shared/c++/HybridCertChainSpec.hpp +89 -0
- package/nitrogen/generated/shared/c++/HybridCertSpec.cpp +138 -0
- package/nitrogen/generated/shared/c++/HybridCertSpec.hpp +205 -0
- package/nitrogen/generated/shared/c++/HybridCertStoreSpec.cpp +55 -0
- package/nitrogen/generated/shared/c++/HybridCertStoreSpec.hpp +104 -0
- package/nitrogen/generated/shared/c++/HybridCharsetSpec.cpp +61 -0
- package/nitrogen/generated/shared/c++/HybridCharsetSpec.hpp +101 -0
- package/nitrogen/generated/shared/c++/HybridCkDateTimeSpec.cpp +66 -0
- package/nitrogen/generated/shared/c++/HybridCkDateTimeSpec.hpp +115 -0
- package/nitrogen/generated/shared/c++/HybridCodeSignSpec.cpp +44 -0
- package/nitrogen/generated/shared/c++/HybridCodeSignSpec.hpp +93 -0
- package/nitrogen/generated/shared/c++/HybridCompressionSpec.cpp +79 -0
- package/nitrogen/generated/shared/c++/HybridCompressionSpec.hpp +134 -0
- package/nitrogen/generated/shared/c++/HybridCrypt2Spec.cpp +215 -0
- package/nitrogen/generated/shared/c++/HybridCrypt2Spec.hpp +283 -0
- package/nitrogen/generated/shared/c++/HybridCsrSpec.cpp +61 -0
- package/nitrogen/generated/shared/c++/HybridCsrSpec.hpp +116 -0
- package/nitrogen/generated/shared/c++/HybridCsvSpec.cpp +72 -0
- package/nitrogen/generated/shared/c++/HybridCsvSpec.hpp +121 -0
- package/nitrogen/generated/shared/c++/HybridDhSpec.cpp +37 -0
- package/nitrogen/generated/shared/c++/HybridDhSpec.hpp +77 -0
- package/nitrogen/generated/shared/c++/HybridDirTreeSpec.cpp +46 -0
- package/nitrogen/generated/shared/c++/HybridDirTreeSpec.hpp +86 -0
- package/nitrogen/generated/shared/c++/HybridDkimSpec.cpp +60 -0
- package/nitrogen/generated/shared/c++/HybridDkimSpec.hpp +109 -0
- package/nitrogen/generated/shared/c++/HybridDnsSpec.cpp +51 -0
- package/nitrogen/generated/shared/c++/HybridDnsSpec.hpp +97 -0
- package/nitrogen/generated/shared/c++/HybridDsaSpec.cpp +73 -0
- package/nitrogen/generated/shared/c++/HybridDsaSpec.hpp +116 -0
- package/nitrogen/generated/shared/c++/HybridDtObjSpec.cpp +50 -0
- package/nitrogen/generated/shared/c++/HybridDtObjSpec.hpp +90 -0
- package/nitrogen/generated/shared/c++/HybridEccSpec.cpp +41 -0
- package/nitrogen/generated/shared/c++/HybridEccSpec.hpp +96 -0
- package/nitrogen/generated/shared/c++/HybridEdDSASpec.cpp +38 -0
- package/nitrogen/generated/shared/c++/HybridEdDSASpec.hpp +90 -0
- package/nitrogen/generated/shared/c++/HybridEmailBundleSpec.cpp +45 -0
- package/nitrogen/generated/shared/c++/HybridEmailBundleSpec.hpp +91 -0
- package/nitrogen/generated/shared/c++/HybridEmailSpec.cpp +259 -0
- package/nitrogen/generated/shared/c++/HybridEmailSpec.hpp +326 -0
- package/nitrogen/generated/shared/c++/HybridFileAccessSpec.cpp +90 -0
- package/nitrogen/generated/shared/c++/HybridFileAccessSpec.hpp +140 -0
- package/nitrogen/generated/shared/c++/HybridFtp2Spec.cpp +367 -0
- package/nitrogen/generated/shared/c++/HybridFtp2Spec.hpp +434 -0
- package/nitrogen/generated/shared/c++/HybridGlobalSpec.cpp +59 -0
- package/nitrogen/generated/shared/c++/HybridGlobalSpec.hpp +99 -0
- package/nitrogen/generated/shared/c++/HybridGzipSpec.cpp +79 -0
- package/nitrogen/generated/shared/c++/HybridGzipSpec.hpp +134 -0
- package/nitrogen/generated/shared/c++/HybridHashtableSpec.cpp +45 -0
- package/nitrogen/generated/shared/c++/HybridHashtableSpec.hpp +91 -0
- package/nitrogen/generated/shared/c++/HybridHtmlToTextSpec.cpp +40 -0
- package/nitrogen/generated/shared/c++/HybridHtmlToTextSpec.hpp +83 -0
- package/nitrogen/generated/shared/c++/HybridHtmlToXmlSpec.cpp +49 -0
- package/nitrogen/generated/shared/c++/HybridHtmlToXmlSpec.hpp +95 -0
- package/nitrogen/generated/shared/c++/HybridHttpCurlSpec.cpp +67 -0
- package/nitrogen/generated/shared/c++/HybridHttpCurlSpec.hpp +125 -0
- package/nitrogen/generated/shared/c++/HybridHttpRequestSpec.cpp +76 -0
- package/nitrogen/generated/shared/c++/HybridHttpRequestSpec.hpp +122 -0
- package/nitrogen/generated/shared/c++/HybridHttpResponseSpec.cpp +64 -0
- package/nitrogen/generated/shared/c++/HybridHttpResponseSpec.hpp +119 -0
- package/nitrogen/generated/shared/c++/HybridHttpSpec.cpp +334 -0
- package/nitrogen/generated/shared/c++/HybridHttpSpec.hpp +407 -0
- package/nitrogen/generated/shared/c++/HybridImapSpec.cpp +275 -0
- package/nitrogen/generated/shared/c++/HybridImapSpec.hpp +360 -0
- package/nitrogen/generated/shared/c++/HybridJavaKeyStoreSpec.cpp +65 -0
- package/nitrogen/generated/shared/c++/HybridJavaKeyStoreSpec.hpp +132 -0
- package/nitrogen/generated/shared/c++/HybridJsSpec.cpp +43 -0
- package/nitrogen/generated/shared/c++/HybridJsSpec.hpp +92 -0
- package/nitrogen/generated/shared/c++/HybridJsonArraySpec.cpp +76 -0
- package/nitrogen/generated/shared/c++/HybridJsonArraySpec.hpp +131 -0
- package/nitrogen/generated/shared/c++/HybridJsonObjectSpec.cpp +154 -0
- package/nitrogen/generated/shared/c++/HybridJsonObjectSpec.hpp +218 -0
- package/nitrogen/generated/shared/c++/HybridJweSpec.cpp +57 -0
- package/nitrogen/generated/shared/c++/HybridJweSpec.hpp +112 -0
- package/nitrogen/generated/shared/c++/HybridJwsSpec.cpp +57 -0
- package/nitrogen/generated/shared/c++/HybridJwsSpec.hpp +115 -0
- package/nitrogen/generated/shared/c++/HybridJwtSpec.cpp +43 -0
- package/nitrogen/generated/shared/c++/HybridJwtSpec.hpp +92 -0
- package/nitrogen/generated/shared/c++/HybridLogSpec.cpp +44 -0
- package/nitrogen/generated/shared/c++/HybridLogSpec.hpp +85 -0
- package/nitrogen/generated/shared/c++/HybridMailManSpec.cpp +311 -0
- package/nitrogen/generated/shared/c++/HybridMailManSpec.hpp +396 -0
- package/nitrogen/generated/shared/c++/HybridMailboxesSpec.cpp +40 -0
- package/nitrogen/generated/shared/c++/HybridMailboxesSpec.hpp +80 -0
- package/nitrogen/generated/shared/c++/HybridMcpSpec.cpp +68 -0
- package/nitrogen/generated/shared/c++/HybridMcpSpec.hpp +117 -0
- package/nitrogen/generated/shared/c++/HybridMessageSetSpec.cpp +41 -0
- package/nitrogen/generated/shared/c++/HybridMessageSetSpec.hpp +84 -0
- package/nitrogen/generated/shared/c++/HybridMhtSpec.cpp +138 -0
- package/nitrogen/generated/shared/c++/HybridMhtSpec.hpp +181 -0
- package/nitrogen/generated/shared/c++/HybridMimeSpec.cpp +169 -0
- package/nitrogen/generated/shared/c++/HybridMimeSpec.hpp +233 -0
- package/nitrogen/generated/shared/c++/HybridNtlmSpec.cpp +69 -0
- package/nitrogen/generated/shared/c++/HybridNtlmSpec.hpp +109 -0
- package/nitrogen/generated/shared/c++/HybridOAuth1Spec.cpp +67 -0
- package/nitrogen/generated/shared/c++/HybridOAuth1Spec.hpp +110 -0
- package/nitrogen/generated/shared/c++/HybridOAuth2Spec.cpp +107 -0
- package/nitrogen/generated/shared/c++/HybridOAuth2Spec.hpp +156 -0
- package/nitrogen/generated/shared/c++/HybridPdfSpec.cpp +73 -0
- package/nitrogen/generated/shared/c++/HybridPdfSpec.hpp +134 -0
- package/nitrogen/generated/shared/c++/HybridPemSpec.cpp +63 -0
- package/nitrogen/generated/shared/c++/HybridPemSpec.hpp +124 -0
- package/nitrogen/generated/shared/c++/HybridPfxSpec.cpp +61 -0
- package/nitrogen/generated/shared/c++/HybridPfxSpec.hpp +122 -0
- package/nitrogen/generated/shared/c++/HybridPkcs11Spec.cpp +60 -0
- package/nitrogen/generated/shared/c++/HybridPkcs11Spec.hpp +115 -0
- package/nitrogen/generated/shared/c++/HybridPrivateKeySpec.cpp +76 -0
- package/nitrogen/generated/shared/c++/HybridPrivateKeySpec.hpp +131 -0
- package/nitrogen/generated/shared/c++/HybridPrngSpec.cpp +42 -0
- package/nitrogen/generated/shared/c++/HybridPrngSpec.hpp +85 -0
- package/nitrogen/generated/shared/c++/HybridPublicKeySpec.cpp +48 -0
- package/nitrogen/generated/shared/c++/HybridPublicKeySpec.hpp +91 -0
- package/nitrogen/generated/shared/c++/HybridRestSpec.cpp +150 -0
- package/nitrogen/generated/shared/c++/HybridRestSpec.hpp +229 -0
- package/nitrogen/generated/shared/c++/HybridRsaSpec.cpp +68 -0
- package/nitrogen/generated/shared/c++/HybridRsaSpec.hpp +120 -0
- package/nitrogen/generated/shared/c++/HybridSCardSpec.cpp +64 -0
- package/nitrogen/generated/shared/c++/HybridSCardSpec.hpp +116 -0
- package/nitrogen/generated/shared/c++/HybridSFtpDirSpec.cpp +35 -0
- package/nitrogen/generated/shared/c++/HybridSFtpDirSpec.hpp +78 -0
- package/nitrogen/generated/shared/c++/HybridSFtpFileSpec.cpp +57 -0
- package/nitrogen/generated/shared/c++/HybridSFtpFileSpec.hpp +98 -0
- package/nitrogen/generated/shared/c++/HybridSFtpSpec.cpp +284 -0
- package/nitrogen/generated/shared/c++/HybridSFtpSpec.hpp +354 -0
- package/nitrogen/generated/shared/c++/HybridScMinidriverSpec.cpp +61 -0
- package/nitrogen/generated/shared/c++/HybridScMinidriverSpec.hpp +119 -0
- package/nitrogen/generated/shared/c++/HybridScpSpec.cpp +78 -0
- package/nitrogen/generated/shared/c++/HybridScpSpec.hpp +127 -0
- package/nitrogen/generated/shared/c++/HybridSecretsSpec.cpp +65 -0
- package/nitrogen/generated/shared/c++/HybridSecretsSpec.hpp +120 -0
- package/nitrogen/generated/shared/c++/HybridSecureStringSpec.cpp +42 -0
- package/nitrogen/generated/shared/c++/HybridSecureStringSpec.hpp +88 -0
- package/nitrogen/generated/shared/c++/HybridServerSentEventSpec.cpp +35 -0
- package/nitrogen/generated/shared/c++/HybridServerSentEventSpec.hpp +75 -0
- package/nitrogen/generated/shared/c++/HybridSocketSpec.cpp +262 -0
- package/nitrogen/generated/shared/c++/HybridSocketSpec.hpp +327 -0
- package/nitrogen/generated/shared/c++/HybridSpiderSpec.cpp +110 -0
- package/nitrogen/generated/shared/c++/HybridSpiderSpec.hpp +153 -0
- package/nitrogen/generated/shared/c++/HybridSshKeySpec.cpp +59 -0
- package/nitrogen/generated/shared/c++/HybridSshKeySpec.hpp +102 -0
- package/nitrogen/generated/shared/c++/HybridSshSpec.cpp +215 -0
- package/nitrogen/generated/shared/c++/HybridSshSpec.hpp +276 -0
- package/nitrogen/generated/shared/c++/HybridSshTunnelSpec.cpp +136 -0
- package/nitrogen/generated/shared/c++/HybridSshTunnelSpec.hpp +191 -0
- package/nitrogen/generated/shared/c++/HybridStreamSpec.cpp +100 -0
- package/nitrogen/generated/shared/c++/HybridStreamSpec.hpp +150 -0
- package/nitrogen/generated/shared/c++/HybridStringArraySpec.cpp +66 -0
- package/nitrogen/generated/shared/c++/HybridStringArraySpec.hpp +109 -0
- package/nitrogen/generated/shared/c++/HybridStringBuilderSpec.cpp +104 -0
- package/nitrogen/generated/shared/c++/HybridStringBuilderSpec.hpp +156 -0
- package/nitrogen/generated/shared/c++/HybridStringTableSpec.cpp +46 -0
- package/nitrogen/generated/shared/c++/HybridStringTableSpec.hpp +89 -0
- package/nitrogen/generated/shared/c++/HybridTarSpec.cpp +110 -0
- package/nitrogen/generated/shared/c++/HybridTarSpec.hpp +156 -0
- package/nitrogen/generated/shared/c++/HybridTrustedRootsSpec.cpp +48 -0
- package/nitrogen/generated/shared/c++/HybridTrustedRootsSpec.hpp +97 -0
- package/nitrogen/generated/shared/c++/HybridUnixCompressSpec.cpp +48 -0
- package/nitrogen/generated/shared/c++/HybridUnixCompressSpec.hpp +91 -0
- package/nitrogen/generated/shared/c++/HybridUploadSpec.cpp +98 -0
- package/nitrogen/generated/shared/c++/HybridUploadSpec.hpp +141 -0
- package/nitrogen/generated/shared/c++/HybridUrlSpec.cpp +42 -0
- package/nitrogen/generated/shared/c++/HybridUrlSpec.hpp +82 -0
- package/nitrogen/generated/shared/c++/HybridWebSocketSpec.cpp +80 -0
- package/nitrogen/generated/shared/c++/HybridWebSocketSpec.hpp +135 -0
- package/nitrogen/generated/shared/c++/HybridXmlCertVaultSpec.cpp +45 -0
- package/nitrogen/generated/shared/c++/HybridXmlCertVaultSpec.hpp +94 -0
- package/nitrogen/generated/shared/c++/HybridXmlDSigGenSpec.cpp +99 -0
- package/nitrogen/generated/shared/c++/HybridXmlDSigGenSpec.hpp +163 -0
- package/nitrogen/generated/shared/c++/HybridXmlDSigSpec.cpp +62 -0
- package/nitrogen/generated/shared/c++/HybridXmlDSigSpec.hpp +126 -0
- package/nitrogen/generated/shared/c++/HybridXmlSpec.cpp +203 -0
- package/nitrogen/generated/shared/c++/HybridXmlSpec.hpp +253 -0
- package/nitrogen/generated/shared/c++/HybridXmpSpec.cpp +58 -0
- package/nitrogen/generated/shared/c++/HybridXmpSpec.hpp +104 -0
- package/nitrogen/generated/shared/c++/HybridZipCrcSpec.cpp +43 -0
- package/nitrogen/generated/shared/c++/HybridZipCrcSpec.hpp +92 -0
- package/nitrogen/generated/shared/c++/HybridZipEntrySpec.cpp +82 -0
- package/nitrogen/generated/shared/c++/HybridZipEntrySpec.hpp +137 -0
- package/nitrogen/generated/shared/c++/HybridZipSpec.cpp +176 -0
- package/nitrogen/generated/shared/c++/HybridZipSpec.hpp +231 -0
- package/package.json +46 -0
- package/react-native.config.js +9 -0
- package/scripts/fetch-chilkat.js +184 -0
- package/src/index.ts +306 -0
- package/src/runtime/chilkat.ts +25 -0
- package/src/specs/Ai.nitro.ts +1288 -0
- package/src/specs/Asn.nitro.ts +509 -0
- package/src/specs/AuthAws.nitro.ts +234 -0
- package/src/specs/AuthAzureSAS.nitro.ts +205 -0
- package/src/specs/AuthAzureStorage.nitro.ts +172 -0
- package/src/specs/AuthGoogle.nitro.ts +291 -0
- package/src/specs/BinData.nitro.ts +470 -0
- package/src/specs/Bz2.nitro.ts +269 -0
- package/src/specs/Cache.nitro.ts +483 -0
- package/src/specs/Cert.nitro.ts +1279 -0
- package/src/specs/CertChain.nitro.ts +312 -0
- package/src/specs/CertStore.nitro.ts +430 -0
- package/src/specs/Charset.nitro.ts +518 -0
- package/src/specs/CkDateTime.nitro.ts +492 -0
- package/src/specs/CodeSign.nitro.ts +307 -0
- package/src/specs/Compression.nitro.ts +654 -0
- package/src/specs/Crypt2.nitro.ts +2387 -0
- package/src/specs/Csr.nitro.ts +461 -0
- package/src/specs/Csv.nitro.ts +670 -0
- package/src/specs/Dh.nitro.ts +343 -0
- package/src/specs/DirTree.nitro.ts +332 -0
- package/src/specs/Dkim.nitro.ts +595 -0
- package/src/specs/Dns.nitro.ts +271 -0
- package/src/specs/Dsa.nitro.ts +653 -0
- package/src/specs/DtObj.nitro.ts +198 -0
- package/src/specs/Ecc.nitro.ts +375 -0
- package/src/specs/EdDSA.nitro.ts +273 -0
- package/src/specs/Email.nitro.ts +2921 -0
- package/src/specs/EmailBundle.nitro.ts +334 -0
- package/src/specs/FileAccess.nitro.ts +836 -0
- package/src/specs/Ftp2.nitro.ts +3943 -0
- package/src/specs/Global.nitro.ts +319 -0
- package/src/specs/Gzip.nitro.ts +646 -0
- package/src/specs/Hashtable.nitro.ts +356 -0
- package/src/specs/HtmlToText.nitro.ts +238 -0
- package/src/specs/HtmlToXml.nitro.ts +323 -0
- package/src/specs/Http.nitro.ts +3095 -0
- package/src/specs/HttpCurl.nitro.ts +550 -0
- package/src/specs/HttpRequest.nitro.ts +522 -0
- package/src/specs/HttpResponse.nitro.ts +424 -0
- package/src/specs/Imap.nitro.ts +2991 -0
- package/src/specs/JavaKeyStore.nitro.ts +619 -0
- package/src/specs/Js.nitro.ts +263 -0
- package/src/specs/JsonArray.nitro.ts +681 -0
- package/src/specs/JsonObject.nitro.ts +1454 -0
- package/src/specs/Jwe.nitro.ts +756 -0
- package/src/specs/Jws.nitro.ts +733 -0
- package/src/specs/Jwt.nitro.ts +380 -0
- package/src/specs/Log.nitro.ts +258 -0
- package/src/specs/MailMan.nitro.ts +3571 -0
- package/src/specs/Mailboxes.nitro.ts +251 -0
- package/src/specs/Mcp.nitro.ts +491 -0
- package/src/specs/MessageSet.nitro.ts +320 -0
- package/src/specs/Mht.nitro.ts +1684 -0
- package/src/specs/Mime.nitro.ts +1745 -0
- package/src/specs/Ntlm.nitro.ts +556 -0
- package/src/specs/OAuth1.nitro.ts +331 -0
- package/src/specs/OAuth2.nitro.ts +1023 -0
- package/src/specs/Pdf.nitro.ts +740 -0
- package/src/specs/Pem.nitro.ts +484 -0
- package/src/specs/Pfx.nitro.ts +1003 -0
- package/src/specs/Pkcs11.nitro.ts +559 -0
- package/src/specs/PrivateKey.nitro.ts +994 -0
- package/src/specs/Prng.nitro.ts +348 -0
- package/src/specs/PublicKey.nitro.ts +610 -0
- package/src/specs/Rest.nitro.ts +1972 -0
- package/src/specs/Rsa.nitro.ts +453 -0
- package/src/specs/SCard.nitro.ts +739 -0
- package/src/specs/SFtp.nitro.ts +3138 -0
- package/src/specs/SFtpDir.nitro.ts +213 -0
- package/src/specs/SFtpFile.nitro.ts +452 -0
- package/src/specs/ScMinidriver.nitro.ts +443 -0
- package/src/specs/Scp.nitro.ts +708 -0
- package/src/specs/Secrets.nitro.ts +470 -0
- package/src/specs/SecureString.nitro.ts +231 -0
- package/src/specs/ServerSentEvent.nitro.ts +183 -0
- package/src/specs/Socket.nitro.ts +3335 -0
- package/src/specs/Spider.nitro.ts +609 -0
- package/src/specs/Ssh.nitro.ts +2842 -0
- package/src/specs/SshKey.nitro.ts +740 -0
- package/src/specs/SshTunnel.nitro.ts +1243 -0
- package/src/specs/Stream.nitro.ts +737 -0
- package/src/specs/StringArray.nitro.ts +396 -0
- package/src/specs/StringBuilder.nitro.ts +920 -0
- package/src/specs/StringTable.nitro.ts +271 -0
- package/src/specs/Tar.nitro.ts +804 -0
- package/src/specs/TrustedRoots.nitro.ts +360 -0
- package/src/specs/UnixCompress.nitro.ts +293 -0
- package/src/specs/Upload.nitro.ts +623 -0
- package/src/specs/Url.nitro.ts +246 -0
- package/src/specs/WebSocket.nitro.ts +840 -0
- package/src/specs/Xml.nitro.ts +1988 -0
- package/src/specs/XmlCertVault.nitro.ts +259 -0
- package/src/specs/XmlDSig.nitro.ts +464 -0
- package/src/specs/XmlDSigGen.nitro.ts +978 -0
- package/src/specs/Xmp.nitro.ts +364 -0
- package/src/specs/Zip.nitro.ts +1611 -0
- package/src/specs/ZipCrc.nitro.ts +229 -0
- package/src/specs/ZipEntry.nitro.ts +782 -0
|
@@ -0,0 +1,3943 @@
|
|
|
1
|
+
// Generated by ReactNativeNs.RnGenerator -- do not edit.
|
|
2
|
+
import type { HybridObject } from 'react-native-nitro-modules'
|
|
3
|
+
import type { BinData } from './BinData.nitro'
|
|
4
|
+
import type { Cert } from './Cert.nitro'
|
|
5
|
+
import type { CkDateTime } from './CkDateTime.nitro'
|
|
6
|
+
import type { JsonObject } from './JsonObject.nitro'
|
|
7
|
+
import type { SecureString } from './SecureString.nitro'
|
|
8
|
+
import type { Stream } from './Stream.nitro'
|
|
9
|
+
import type { StringBuilder } from './StringBuilder.nitro'
|
|
10
|
+
import type { StringTable } from './StringTable.nitro'
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Connect, secure, transfer, synchronize, and manage files on FTP servers.
|
|
14
|
+
*
|
|
15
|
+
* `Ftp2` is a comprehensive FTP and FTPS client class for
|
|
16
|
+
* applications that need reliable file transfer and remote file management. It
|
|
17
|
+
* supports connection setup, explicit and implicit TLS, passive and active data
|
|
18
|
+
* connections, uploads, downloads, directory listings, recursive operations,
|
|
19
|
+
* synchronization, proxy traversal, credential protection, and detailed
|
|
20
|
+
* diagnostics.
|
|
21
|
+
*
|
|
22
|
+
* **FTP and FTPS connections**
|
|
23
|
+
*
|
|
24
|
+
* Connect using plain FTP, explicit TLS, or implicit TLS, with control over
|
|
25
|
+
* ports, timeouts, passive mode, and IPv4/IPv6 behavior.
|
|
26
|
+
*
|
|
27
|
+
* **Upload and download files**
|
|
28
|
+
*
|
|
29
|
+
* Transfer files, text, binary data, streams, and in-memory content, with
|
|
30
|
+
* support for resume, append, and progress monitoring.
|
|
31
|
+
*
|
|
32
|
+
* **Remote file management**
|
|
33
|
+
*
|
|
34
|
+
* List directories, create and remove folders, rename files, delete files,
|
|
35
|
+
* inspect sizes and timestamps, and manage remote paths.
|
|
36
|
+
*
|
|
37
|
+
* **Recursive and sync operations**
|
|
38
|
+
*
|
|
39
|
+
* Upload or download directory trees, mirror folders, and synchronize local
|
|
40
|
+
* and remote content.
|
|
41
|
+
*
|
|
42
|
+
* **Security and credentials**
|
|
43
|
+
*
|
|
44
|
+
* Use TLS options, client certificates, secure password handling, and
|
|
45
|
+
* secret-backed credential references where appropriate.
|
|
46
|
+
*
|
|
47
|
+
* **Diagnostics and TLS details**
|
|
48
|
+
*
|
|
49
|
+
* Use `LastErrorText`, session logs, directory listings, and
|
|
50
|
+
* TLS negotiation details to troubleshoot server behavior.
|
|
51
|
+
*
|
|
52
|
+
* **Protocol note:**
|
|
53
|
+
* `Ftp2` implements FTP and FTP over TLS (FTPS). It does not implement
|
|
54
|
+
* SSH File Transfer Protocol. Use `SFtp` when the server requires SFTP over SSH.
|
|
55
|
+
*
|
|
56
|
+
* **Stateful session:**
|
|
57
|
+
* One `Ftp2` object represents one FTP session with a current remote
|
|
58
|
+
* directory, transfer type, detected server capabilities, and a cached directory
|
|
59
|
+
* listing. FTP commands and replies use the persistent control connection, while
|
|
60
|
+
* each listing, upload, or download uses a separate data connection.
|
|
61
|
+
*
|
|
62
|
+
* **Paths and encodings:**
|
|
63
|
+
* Remote paths are interpreted by the FTP server and are normally relative to the
|
|
64
|
+
* current remote directory unless the server recognizes an absolute path. Remote
|
|
65
|
+
* command text uses `CommandCharset`, directory-listing bytes use
|
|
66
|
+
* `DirListingCharset`, and text-transfer methods use their own content
|
|
67
|
+
* charset argument.
|
|
68
|
+
*
|
|
69
|
+
* **Partial operations:**
|
|
70
|
+
* FTP operations are not transactional. A transfer, recursive operation,
|
|
71
|
+
* deletion, or synchronization can complete some work before a later step fails.
|
|
72
|
+
* Chilkat does not generally roll back completed filesystem or server changes and
|
|
73
|
+
* does not automatically retry or resume a failed transfer unless the application
|
|
74
|
+
* explicitly uses the resume features.
|
|
75
|
+
*
|
|
76
|
+
* **Server variability:**
|
|
77
|
+
* FTP extensions and server behavior vary. Features such as `MLSD`,
|
|
78
|
+
* `EPSV`, `MODE Z`, checksum commands, timestamp-setting
|
|
79
|
+
* commands, wildcard matching, and rename-overwrite behavior depend on the server.
|
|
80
|
+
* Inspect `LastReply`, LastErrorText, and the session log when behavior
|
|
81
|
+
* differs between servers.
|
|
82
|
+
*
|
|
83
|
+
* **FTPS certificate verification:**
|
|
84
|
+
* `RequireSslCertVerify` defaults to `false`. Production FTPS clients
|
|
85
|
+
* should normally enable certificate-chain verification and use the expected
|
|
86
|
+
* server hostname. Certificate pinning and certificate requirements are additional
|
|
87
|
+
* checks and do not replace normal trust and hostname validation.
|
|
88
|
+
*
|
|
89
|
+
* **Tip:**
|
|
90
|
+
* For FTPS troubleshooting, inspect the detailed diagnostic output and, when
|
|
91
|
+
* available, the last JSON data describing the TLS negotiation, certificate
|
|
92
|
+
* validation, protocol version, and related connection details.
|
|
93
|
+
*
|
|
94
|
+
* For an extended overview, see
|
|
95
|
+
* [Ftp2 Class Overview](https://www.chilkatsoft.com/ftp2_class_overview.asp).
|
|
96
|
+
*
|
|
97
|
+
* Each `Ftp2` instance owns a native Chilkat object. It is released when the JavaScript object is
|
|
98
|
+
* garbage collected, or immediately by `dispose()`; any use after `dispose()` throws.
|
|
99
|
+
* Create one with `new Ftp2()`.
|
|
100
|
+
*
|
|
101
|
+
* Methods that can take a while (network, files, compression, key generation) also have an
|
|
102
|
+
* `...Async` form returning a `Promise`; it runs on a native worker thread so the UI keeps
|
|
103
|
+
* rendering. While such a call is pending, every other call on this object throws, except
|
|
104
|
+
* {@link Ftp2.abort} and assigning {@link Ftp2.onPercentDone} / {@link Ftp2.onProgressInfo}.
|
|
105
|
+
*/
|
|
106
|
+
export interface Ftp2 extends HybridObject<{ ios: 'c++', android: 'c++' }> {
|
|
107
|
+
// ---- Properties ----
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* Provides HTML-formatted information about the last called method or property. If a method call
|
|
111
|
+
* fails or behaves unexpectedly, check this property for details. Note that information is
|
|
112
|
+
* available regardless of the method call's success.
|
|
113
|
+
*
|
|
114
|
+
* This property is read-only.
|
|
115
|
+
*/
|
|
116
|
+
readonly lastErrorHtml: string
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* Provides plain text information about the last called method or property. If a method call
|
|
120
|
+
* fails or behaves unexpectedly, check this property for details. Note that information is
|
|
121
|
+
* available regardless of the method call's success.
|
|
122
|
+
*
|
|
123
|
+
* This property is read-only.
|
|
124
|
+
*/
|
|
125
|
+
readonly lastErrorText: string
|
|
126
|
+
|
|
127
|
+
/**
|
|
128
|
+
* Provides XML-formatted information about the last called method or property. If a method call
|
|
129
|
+
* fails or behaves unexpectedly, check this property for details. Note that information is
|
|
130
|
+
* available regardless of the method call's success.
|
|
131
|
+
*
|
|
132
|
+
* This property is read-only.
|
|
133
|
+
*/
|
|
134
|
+
readonly lastErrorXml: string
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* Version of the component/library, such as "10.1.0"
|
|
138
|
+
*
|
|
139
|
+
* This property is read-only.
|
|
140
|
+
*/
|
|
141
|
+
readonly version: string
|
|
142
|
+
|
|
143
|
+
/**
|
|
144
|
+
* If set to a file path, this property logs the LastErrorText of each Chilkat method or property
|
|
145
|
+
* call to the specified file. This logging helps identify the context and history of Chilkat
|
|
146
|
+
* calls leading up to any crash or hang, aiding in debugging.
|
|
147
|
+
*
|
|
148
|
+
* Enabling the VerboseLogging property provides more detailed information.
|
|
149
|
+
*
|
|
150
|
+
* This property is mainly used for debugging rare instances where a Chilkat method call causes a
|
|
151
|
+
* hang or crash, which should generally not happen.
|
|
152
|
+
*
|
|
153
|
+
* Possible causes of hangs include:
|
|
154
|
+
*
|
|
155
|
+
* - A timeout property set to 0, indicating an infinite timeout.
|
|
156
|
+
*
|
|
157
|
+
* - A hang occurring within an event callback in the application code.
|
|
158
|
+
*
|
|
159
|
+
* - An internal bug in the Chilkat code causing the hang.
|
|
160
|
+
*/
|
|
161
|
+
debugLogFilePath: string
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* If set to `true`, then the contents of LastErrorText (or LastErrorXml, or LastErrorHtml) may
|
|
165
|
+
* contain more verbose information. The default value is `false`. Verbose logging should only be
|
|
166
|
+
* used for debugging. The potentially large quantity of logged information may adversely affect
|
|
167
|
+
* peformance.
|
|
168
|
+
*/
|
|
169
|
+
verboseLogging: boolean
|
|
170
|
+
|
|
171
|
+
/**
|
|
172
|
+
* Indicates the success or failure of the most recent method call: `true` means success, `false`
|
|
173
|
+
* means failure. This property remains unchanged by property setters or getters. This method is
|
|
174
|
+
* present to address challenges in checking for null or Nothing returns in certain programming
|
|
175
|
+
* languages. Note: This property does not apply to methods that return integer values or to
|
|
176
|
+
* boolean-returning methods where the boolean does not indicate success or failure.
|
|
177
|
+
*/
|
|
178
|
+
lastMethodSuccess: boolean
|
|
179
|
+
|
|
180
|
+
/**
|
|
181
|
+
* Set to `true` to request cancellation of the operation currently running on this object.
|
|
182
|
+
* Long-running network and file-transfer methods periodically check this property; methods that
|
|
183
|
+
* complete quickly may finish before the request is observed.
|
|
184
|
+
*
|
|
185
|
+
* A synchronous call can be cancelled from another thread by setting this property on the same
|
|
186
|
+
* object. The property is reset to `false` after cancellation is processed, and a stale request
|
|
187
|
+
* is cleared when a later method begins.
|
|
188
|
+
*
|
|
189
|
+
* **Cancellation behavior:** Treat this as a cancellation request, not a guarantee of immediate
|
|
190
|
+
* termination. Use the method's normal return value and diagnostic properties to determine the
|
|
191
|
+
* outcome.
|
|
192
|
+
*/
|
|
193
|
+
abortCurrent: boolean
|
|
194
|
+
|
|
195
|
+
/**
|
|
196
|
+
* **Very rarely needed today:** Almost all modern FTP servers rely exclusively on the `USER` and
|
|
197
|
+
* `PASS` commands for authentication and access control.
|
|
198
|
+
*
|
|
199
|
+
* The `ACCT` command is a legacy feature from early computing systems that sometimes required a
|
|
200
|
+
* separate account code for billing or resource allocation. Today, those details are usually
|
|
201
|
+
* associated directly with the user's server-side profile, making `ACCT` obsolete for most
|
|
202
|
+
* applications. Leave this property empty unless the server administrator or login instructions
|
|
203
|
+
* explicitly require an FTP account value.
|
|
204
|
+
*
|
|
205
|
+
* Specifies the FTP account string sent with the `ACCT` command when a server requires an account
|
|
206
|
+
* in addition to the username and password.
|
|
207
|
+
*/
|
|
208
|
+
account: string
|
|
209
|
+
|
|
210
|
+
/**
|
|
211
|
+
* Specifies the last local TCP port that may be used for active-mode data connections. The
|
|
212
|
+
* default is `0`. Valid nonzero values are `1` through `65535`.
|
|
213
|
+
*
|
|
214
|
+
* The range beginning with {@link Ftp2.activePortRangeStart} is inclusive. If
|
|
215
|
+
* `ActivePortRangeStart` is `0`, this property is ignored and the operating system chooses an
|
|
216
|
+
* ephemeral listening port. If this value is `0` or is less than `ActivePortRangeStart`, Chilkat
|
|
217
|
+
* behaves as though both endpoints equal `ActivePortRangeStart`.
|
|
218
|
+
*
|
|
219
|
+
* Unavailable ports are skipped. Chilkat tries each port in the effective range until binding
|
|
220
|
+
* succeeds, and fails only after all ports have been tried. The range applies to both `PORT` and
|
|
221
|
+
* `EPRT` and may be changed while the control connection is already established.
|
|
222
|
+
*
|
|
223
|
+
* **Active mode setting:** This property is used only when {@link Ftp2.passive} is `false`.
|
|
224
|
+
* Passive mode is typically preferred because it avoids the server-initiated connection back to
|
|
225
|
+
* the client that many client-side firewalls block. When active mode is required, any fixed port
|
|
226
|
+
* range must be allowed by the client-side firewall and reachable through intervening NAT.
|
|
227
|
+
*/
|
|
228
|
+
activePortRangeEnd: number
|
|
229
|
+
|
|
230
|
+
/**
|
|
231
|
+
* Specifies the first local TCP port that may be used for active-mode data connections. The
|
|
232
|
+
* default is `0`. Valid nonzero values are `1` through `65535`.
|
|
233
|
+
*
|
|
234
|
+
* When this property is `0`, {@link Ftp2.activePortRangeEnd} is ignored and Chilkat binds the
|
|
235
|
+
* listening socket to port `0`, allowing the operating system to choose an available ephemeral
|
|
236
|
+
* port. When this property is nonzero, the effective range is inclusive. If the ending value is
|
|
237
|
+
* `0` or is less than the starting value, Chilkat tries only the starting port.
|
|
238
|
+
*
|
|
239
|
+
* For each active-mode data connection, Chilkat tries the ports in the effective range in
|
|
240
|
+
* ascending order, skipping any port for which the listening socket cannot be bound. The
|
|
241
|
+
* operation fails only after every port in the range has been tried.
|
|
242
|
+
*
|
|
243
|
+
* **Scope:** The range applies to both `PORT` and `EPRT` operation and may be changed after the
|
|
244
|
+
* FTP control connection has been established.
|
|
245
|
+
*
|
|
246
|
+
* **Active mode setting:** This property is used only when {@link Ftp2.passive} is `false`.
|
|
247
|
+
* Passive mode is typically preferred because the client initiates both the control and data
|
|
248
|
+
* connections, making it much friendlier to client-side firewalls and NAT.
|
|
249
|
+
*/
|
|
250
|
+
activePortRangeStart: number
|
|
251
|
+
|
|
252
|
+
/**
|
|
253
|
+
* **Rarely needed:** The FTP `ALLO` command pre-allocates disk space on the server before an
|
|
254
|
+
* upload. It is generally needed only by certain legacy systems, such as older mainframes, that
|
|
255
|
+
* require the exact file size in advance to reserve storage. Most modern FTP servers allocate
|
|
256
|
+
* space dynamically and either ignore `ALLO` or do not require it. Leave this property at its
|
|
257
|
+
* default value of `0` unless the server explicitly requires pre-allocation.
|
|
258
|
+
*
|
|
259
|
+
* Specifies the size, in bytes, to send in an `ALLO` command before the next applicable upload.
|
|
260
|
+
* For example, a value of `20` sends `ALLO 20`. The default value of `0` disables the command.
|
|
261
|
+
*
|
|
262
|
+
* This is a one-shot setting. It is consumed by the next applicable upload and automatically
|
|
263
|
+
* reset to `0`. It applies to normal, in-memory, text, and append uploads. A successful FTP reply
|
|
264
|
+
* indicating that allocation is unnecessary, such as reply code `202`, does not prevent the
|
|
265
|
+
* upload from continuing.
|
|
266
|
+
*/
|
|
267
|
+
allocateSize: number
|
|
268
|
+
|
|
269
|
+
/**
|
|
270
|
+
* Controls whether machine-readable directory listings are requested with `MLSD` when the server
|
|
271
|
+
* advertises support. The default is `true`.
|
|
272
|
+
*
|
|
273
|
+
* When this property is `true` and `MLSD` is advertised, Chilkat uses `MLSD`. Otherwise, a legacy
|
|
274
|
+
* listing is used: `NLST` when {@link Ftp2.preferNlst} is `true`, or `LIST` when it is `false`.
|
|
275
|
+
*
|
|
276
|
+
* `MLSD` provides standardized facts such as type, size, and modification time and is generally
|
|
277
|
+
* more reliable than parsing server-specific `LIST` output. Facts not supplied by the server
|
|
278
|
+
* remain unavailable. When a `perm` fact is present, {@link Ftp2.getPermissions} returns it
|
|
279
|
+
* rather than a UNIX-style permission string.
|
|
280
|
+
*
|
|
281
|
+
* **Recommended setting:** Keep this property enabled unless a particular server has a broken
|
|
282
|
+
* MLSD implementation. Disabling it can reduce the accuracy or availability of timestamps, sizes,
|
|
283
|
+
* and other listing information.
|
|
284
|
+
*/
|
|
285
|
+
allowMlsd: boolean
|
|
286
|
+
|
|
287
|
+
/**
|
|
288
|
+
* Returns the number of bytes received by the current or most recently completed FTP download as
|
|
289
|
+
* a 32-bit unsigned integer. The value is updated while the transfer is in progress and may be
|
|
290
|
+
* read from another thread to display progress. A subsequent upload does not clear the retained
|
|
291
|
+
* download count.
|
|
292
|
+
*
|
|
293
|
+
* This property is read-only.
|
|
294
|
+
*/
|
|
295
|
+
readonly curBytesReceived: number
|
|
296
|
+
|
|
297
|
+
/**
|
|
298
|
+
* Returns the number of bytes received by the current or most recently completed FTP download as
|
|
299
|
+
* a 64-bit integer. The value is updated while the transfer is in progress and may be read from
|
|
300
|
+
* another thread to display progress. A subsequent upload does not clear the retained download
|
|
301
|
+
* count.
|
|
302
|
+
*
|
|
303
|
+
* This property is read-only.
|
|
304
|
+
*
|
|
305
|
+
* A 64-bit integer in Chilkat; JavaScript numbers are exact up to 2^53.
|
|
306
|
+
*/
|
|
307
|
+
readonly curBytesReceived64: number
|
|
308
|
+
|
|
309
|
+
/**
|
|
310
|
+
* Returns the number of bytes received by the current or most recently completed FTP download as
|
|
311
|
+
* a decimal string. The value is updated while the transfer is in progress and may be read from
|
|
312
|
+
* another thread to display progress. A subsequent upload does not clear the retained download
|
|
313
|
+
* count.
|
|
314
|
+
*
|
|
315
|
+
* This property is read-only.
|
|
316
|
+
*/
|
|
317
|
+
readonly curBytesReceivedStr: string
|
|
318
|
+
|
|
319
|
+
/**
|
|
320
|
+
* Returns the number of bytes sent by the current or most recently completed FTP upload as a
|
|
321
|
+
* 32-bit unsigned integer. The value is updated while the transfer is in progress and may be read
|
|
322
|
+
* from another thread to display progress. A subsequent download does not clear the retained
|
|
323
|
+
* upload count.
|
|
324
|
+
*
|
|
325
|
+
* This property is read-only.
|
|
326
|
+
*/
|
|
327
|
+
readonly curBytesSent: number
|
|
328
|
+
|
|
329
|
+
/**
|
|
330
|
+
* Returns the number of bytes sent by the current or most recently completed FTP upload as a
|
|
331
|
+
* 64-bit integer. The value is updated while the transfer is in progress and may be read from
|
|
332
|
+
* another thread to display progress. A subsequent download does not clear the retained upload
|
|
333
|
+
* count.
|
|
334
|
+
*
|
|
335
|
+
* This property is read-only.
|
|
336
|
+
*
|
|
337
|
+
* A 64-bit integer in Chilkat; JavaScript numbers are exact up to 2^53.
|
|
338
|
+
*/
|
|
339
|
+
readonly curBytesSent64: number
|
|
340
|
+
|
|
341
|
+
/**
|
|
342
|
+
* Returns the number of bytes sent by the current or most recently completed FTP upload as a
|
|
343
|
+
* decimal string. The value is updated while the transfer is in progress and may be read from
|
|
344
|
+
* another thread to display progress. A subsequent download does not clear the retained upload
|
|
345
|
+
* count.
|
|
346
|
+
*
|
|
347
|
+
* This property is read-only.
|
|
348
|
+
*/
|
|
349
|
+
readonly curBytesSentStr: string
|
|
350
|
+
|
|
351
|
+
/**
|
|
352
|
+
* **Legacy and very uncommon:** `AUTH SSL` originated in early FTP security drafts from the era
|
|
353
|
+
* when SSL was the standard encryption protocol. For modern FTP servers, use {@link Ftp2.authTls}
|
|
354
|
+
* instead. Most security-conscious servers require `AUTH TLS` and may reject `AUTH SSL` to
|
|
355
|
+
* enforce current security policies and prevent protocol downgrades. This property is normally
|
|
356
|
+
* needed only for a decades-old legacy server that was never updated to support `AUTH TLS`.
|
|
357
|
+
*
|
|
358
|
+
* Set to `true` to use explicit FTP over TLS by sending `AUTH SSL` on the FTP control channel.
|
|
359
|
+
* The client first establishes a plain FTP control connection, receives the server greeting, and
|
|
360
|
+
* then upgrades that connection to TLS.
|
|
361
|
+
*
|
|
362
|
+
* The TLS upgrade is completed before `USER` and `PASS` are sent. {@link Ftp2.connectOnly}
|
|
363
|
+
* performs the explicit TLS upgrade but does not log in. During {@link Ftp2.connect}, Chilkat
|
|
364
|
+
* sends `PBSZ` and `PROT` as required by {@link Ftp2.dataProtection}. If the server responds with
|
|
365
|
+
* `530 Please login with USER and PASS`, Chilkat logs in and automatically retries those
|
|
366
|
+
* commands.
|
|
367
|
+
*
|
|
368
|
+
* If the server accepts the `AUTH` command but rejects a required `PBSZ` or `PROT` command, the
|
|
369
|
+
* connection attempt fails. A failed connection attempt does not leave the underlying plain FTP
|
|
370
|
+
* connection open.
|
|
371
|
+
*
|
|
372
|
+
* `AUTH SSL` is the alternative explicit-TLS command used by this property. If {@link Ftp2.ssl}
|
|
373
|
+
* is `true`, implicit TLS takes priority. If both this property and {@link Ftp2.authTls} are
|
|
374
|
+
* `true` while `Ssl` is `false`, `AuthTls` takes priority and Chilkat sends `AUTH TLS`.
|
|
375
|
+
*/
|
|
376
|
+
authSsl: boolean
|
|
377
|
+
|
|
378
|
+
/**
|
|
379
|
+
* Set to `true` to use explicit FTP over TLS by sending `AUTH TLS` on the FTP control channel.
|
|
380
|
+
* The client first establishes a plain FTP control connection, receives the server greeting, and
|
|
381
|
+
* then upgrades that connection to TLS. Port `21` is conventionally used.
|
|
382
|
+
*
|
|
383
|
+
* The TLS upgrade is completed before `USER` and `PASS` are sent. {@link Ftp2.connectOnly}
|
|
384
|
+
* performs the explicit TLS upgrade but does not log in. During {@link Ftp2.connect}, Chilkat
|
|
385
|
+
* sends `PBSZ` and `PROT` as required by {@link Ftp2.dataProtection}. If the server responds with
|
|
386
|
+
* `530 Please login with USER and PASS`, Chilkat logs in and automatically retries those
|
|
387
|
+
* commands.
|
|
388
|
+
*
|
|
389
|
+
* If the server accepts the `AUTH` command but rejects a required `PBSZ` or `PROT` command, the
|
|
390
|
+
* connection attempt fails. A failed connection attempt does not leave the underlying plain FTP
|
|
391
|
+
* connection open.
|
|
392
|
+
*
|
|
393
|
+
* If {@link Ftp2.ssl} is `true`, implicit TLS takes priority and this property is ignored. If
|
|
394
|
+
* both `AuthTls` and {@link Ftp2.authSsl} are `true` while `Ssl` is `false`, `AuthTls` takes
|
|
395
|
+
* priority.
|
|
396
|
+
*
|
|
397
|
+
* **AuthTls versus AuthSsl:** Both properties select explicit FTPS. Their only difference is the
|
|
398
|
+
* command sent to initiate TLS: `AUTH TLS` for this property and `AUTH SSL` for `AuthSsl`.
|
|
399
|
+
*/
|
|
400
|
+
authTls: boolean
|
|
401
|
+
|
|
402
|
+
/**
|
|
403
|
+
* **Rarely changed:** Leave this property at its default value of `true` for nearly all modern
|
|
404
|
+
* FTP servers. The `FEAT` command was standardized in RFC 2389 in 1998 and is broadly supported
|
|
405
|
+
* by mainstream FTP software, including FileZilla Server, vsftpd, ProFTPD, and IIS. Set it to
|
|
406
|
+
* `false` only for a legacy or nonconforming server that mishandles `FEAT`.
|
|
407
|
+
*
|
|
408
|
+
* Controls whether a `FEAT` command is sent automatically after login. The default is `true`. The
|
|
409
|
+
* response is processed to detect capabilities such as `MLSD`, `UTF8`, `EPSV`, `MODE Z`, and
|
|
410
|
+
* server-specific extensions.
|
|
411
|
+
*
|
|
412
|
+
* When {@link Ftp2.autoSyst} is also `true`, automatic `SYST` is sent first. If `UTF8` is
|
|
413
|
+
* advertised and {@link Ftp2.autoOptsUtf8} is `true`, capability processing is followed by `OPTS
|
|
414
|
+
* UTF8 ON`.
|
|
415
|
+
*
|
|
416
|
+
* The same capability processing can be performed later by calling {@link Ftp2.feat} explicitly.
|
|
417
|
+
*/
|
|
418
|
+
autoFeat: boolean
|
|
419
|
+
|
|
420
|
+
/**
|
|
421
|
+
* Controls automatic adjustment of {@link Ftp2.ssl}, {@link Ftp2.authSsl}, and {@link
|
|
422
|
+
* Ftp2.authTls} based solely on {@link Ftp2.port}. The default is `true`. The only recognized
|
|
423
|
+
* ports are `21` and `990`.
|
|
424
|
+
*
|
|
425
|
+
* PortAutomatic adjustment
|
|
426
|
+
*
|
|
427
|
+
* | `21` | | Sets {@link Ftp2.ssl} to `false`. {@link Ftp2.authTls} and {@link Ftp2.authSsl}
|
|
428
|
+
* continue to determine whether explicit TLS is requested. |
|
|
429
|
+
*
|
|
430
|
+
* | `990` | | Sets {@link Ftp2.ssl} to `true` and sets {@link Ftp2.authTls} and {@link
|
|
431
|
+
* Ftp2.authSsl} to `false`. |
|
|
432
|
+
*
|
|
433
|
+
* | Any other port | | Makes no changes because the intended plain, explicit-TLS, or implicit-TLS
|
|
434
|
+
* mode cannot be inferred from a custom port number. |
|
|
435
|
+
*
|
|
436
|
+
* **Scope:** AutoFix does not probe the server or resolve arbitrary conflicting settings. It only
|
|
437
|
+
* applies the conventional meaning of ports `21` and `990`.
|
|
438
|
+
*/
|
|
439
|
+
autoFix: boolean
|
|
440
|
+
|
|
441
|
+
/**
|
|
442
|
+
* Controls whether Chilkat sends a `SIZE` command before a download so percentage-based progress
|
|
443
|
+
* can be calculated. The default is `false`. Each size query adds a control-channel round trip.
|
|
444
|
+
*
|
|
445
|
+
* A nonzero one-shot value in {@link Ftp2.progressMonSize} or {@link Ftp2.progressMonSize64}
|
|
446
|
+
* supplies the expected size directly and avoids this additional query. Even when this property
|
|
447
|
+
* is `false`, percentage progress may be available if the server includes a usable size in its
|
|
448
|
+
* preliminary transfer reply.
|
|
449
|
+
*/
|
|
450
|
+
autoGetSizeForProgress: boolean
|
|
451
|
+
|
|
452
|
+
/**
|
|
453
|
+
* Controls whether `OPTS UTF8 ON` is sent automatically when a processed `FEAT` response
|
|
454
|
+
* advertises `UTF8`. The default is `true`. When UTF-8 is advertised, Chilkat sets {@link
|
|
455
|
+
* Ftp2.commandCharset} and {@link Ftp2.dirListingCharset} to `utf-8`, overwriting values
|
|
456
|
+
* previously assigned by the application.
|
|
457
|
+
*
|
|
458
|
+
* If `UTF8` is not advertised, the existing charset property values are left unchanged. This
|
|
459
|
+
* behavior applies both during automatic capability discovery and when {@link Ftp2.feat} is
|
|
460
|
+
* called explicitly.
|
|
461
|
+
*
|
|
462
|
+
* Set to `false` for a server that advertises UTF-8 but rejects the option or uses a different
|
|
463
|
+
* encoding in practice.
|
|
464
|
+
*/
|
|
465
|
+
autoOptsUtf8: boolean
|
|
466
|
+
|
|
467
|
+
/**
|
|
468
|
+
* **Recommended setting:** Applications should set this property to `true`. The default is
|
|
469
|
+
* `false` in current versions, but will change to `true` in Chilkat v12.0.0.
|
|
470
|
+
*
|
|
471
|
+
* `EPSV` is preferred on modern networks because it supports both IPv4 and IPv6, whereas `PASV`
|
|
472
|
+
* cannot represent an IPv6 address. It is also more reliable through NAT and firewalls because
|
|
473
|
+
* the `EPSV` reply contains only a port number and relies on the address of the existing control
|
|
474
|
+
* connection. In contrast, a `PASV` reply includes an IP address, which can fail when a server
|
|
475
|
+
* behind NAT returns its private internal address.
|
|
476
|
+
*
|
|
477
|
+
* Virtually all modern FTP servers, including vsftpd, ProFTPD, FileZilla Server, and IIS, support
|
|
478
|
+
* `EPSV`. It was standardized in RFC 2428 in 1998 and is widely implemented.
|
|
479
|
+
*
|
|
480
|
+
* Controls whether {@link Ftp2.useEpsv} is recalculated when server capabilities are processed.
|
|
481
|
+
* The default is `false`. Processing occurs during the initial connection when {@link
|
|
482
|
+
* Ftp2.autoFeat} is `true`, or when {@link Ftp2.feat} is called explicitly.
|
|
483
|
+
*
|
|
484
|
+
* The result is based on both the advertised capabilities and the connection context; it is not
|
|
485
|
+
* simply a copy of whether `EPSV` appears in the `FEAT` reply. For example, an IPv4 connection
|
|
486
|
+
* may retain `UseEpsv = FALSE` even when the server advertises `EPSV`. Automatic recalculation
|
|
487
|
+
* can overwrite an explicitly assigned value, and each new connection recalculates it for the new
|
|
488
|
+
* session.
|
|
489
|
+
*
|
|
490
|
+
* If an attempted `EPSV` command is rejected, Chilkat falls back to `PASV` for that data
|
|
491
|
+
* connection. The failed attempt is not remembered as a session-wide reason to disable future
|
|
492
|
+
* `EPSV` attempts.
|
|
493
|
+
*/
|
|
494
|
+
autoSetUseEpsv: boolean
|
|
495
|
+
|
|
496
|
+
/**
|
|
497
|
+
* Controls whether a `SYST` command is sent automatically after login. The default is `true`. The
|
|
498
|
+
* server's operating-system type can help Chilkat interpret legacy `LIST` output and other
|
|
499
|
+
* server-specific behavior.
|
|
500
|
+
*
|
|
501
|
+
* When both this property and {@link Ftp2.autoFeat} are `true`, automatic `SYST` occurs before
|
|
502
|
+
* automatic `FEAT`.
|
|
503
|
+
*
|
|
504
|
+
* Set to `false` only when a particular server rejects or mishandles `SYST`.
|
|
505
|
+
*/
|
|
506
|
+
autoSyst: boolean
|
|
507
|
+
|
|
508
|
+
/**
|
|
509
|
+
* Controls automatic post-upload verification with the server-specific `XCRC` command. The
|
|
510
|
+
* default is `false`. When enabled and the server supports `XCRC`, Chilkat requests a CRC after
|
|
511
|
+
* an upload and treats a mismatch as transfer failure.
|
|
512
|
+
*
|
|
513
|
+
* If `XCRC` support is not detected, Chilkat does not send the verification command and the
|
|
514
|
+
* upload proceeds normally. This extension is not part of the core FTP standard and is not
|
|
515
|
+
* supported by every server. Capability detection normally depends on a processed `FEAT`
|
|
516
|
+
* response.
|
|
517
|
+
*
|
|
518
|
+
* **Integrity scope:** CRC verification can detect accidental corruption in transit or storage,
|
|
519
|
+
* but it is not a cryptographic authenticity check.
|
|
520
|
+
*/
|
|
521
|
+
autoXcrc: boolean
|
|
522
|
+
|
|
523
|
+
/**
|
|
524
|
+
* Specifies the approximate maximum download rate in bytes per second. The default value of `0`
|
|
525
|
+
* disables throttling.
|
|
526
|
+
*
|
|
527
|
+
* Client-side download throttling is approximate because the server continues sending as
|
|
528
|
+
* permitted by TCP. The operating system's socket buffers absorb data between reads, so very
|
|
529
|
+
* small transfers may complete before the configured rate can be meaningfully enforced.
|
|
530
|
+
*/
|
|
531
|
+
bandwidthThrottleDown: number
|
|
532
|
+
|
|
533
|
+
/**
|
|
534
|
+
* Specifies the approximate maximum upload rate in bytes per second. The default value of `0`
|
|
535
|
+
* disables throttling.
|
|
536
|
+
*
|
|
537
|
+
* The limit is averaged over the transfer. Very small uploads may complete before the configured
|
|
538
|
+
* rate can be closely approximated.
|
|
539
|
+
*/
|
|
540
|
+
bandwidthThrottleUp: number
|
|
541
|
+
|
|
542
|
+
/**
|
|
543
|
+
* **This property is normally left unset.** Set it only on a multihomed computer when the
|
|
544
|
+
* application must bind the outgoing connection to a specific local network interface.
|
|
545
|
+
*
|
|
546
|
+
* Specify a numeric IPv4 or IPv6 address, not a hostname. When the property is empty, the
|
|
547
|
+
* operating system automatically chooses the local address.
|
|
548
|
+
*/
|
|
549
|
+
clientIpAddress: string
|
|
550
|
+
|
|
551
|
+
/**
|
|
552
|
+
* Specifies the character encoding used by high-level FTP operations for commands containing
|
|
553
|
+
* non-ASCII text, including remote paths and filenames. The default is `ANSI`. Charset names and
|
|
554
|
+
* the keyword `ANSI` are case-insensitive. An unrecognized charset name is clamped to `utf-8`,
|
|
555
|
+
* and the getter returns `utf-8`.
|
|
556
|
+
*
|
|
557
|
+
* **Usually changed automatically to UTF-8:** Although the default value is `ANSI`, when the
|
|
558
|
+
* server advertises UTF-8 and {@link Ftp2.autoOptsUtf8} is enabled, Chilkat automatically changes
|
|
559
|
+
* this property to `utf-8`. Nearly all modern FTP servers support UTF-8, so `utf-8` is typically
|
|
560
|
+
* the effective value after connecting. If UTF-8 is not advertised, the existing value is left
|
|
561
|
+
* unchanged.
|
|
562
|
+
*
|
|
563
|
+
* **What `ANSI` means:** It does not name one specific charset. It tells Chilkat to use the
|
|
564
|
+
* system-default encoding or default system locale. Typical examples include `windows-1252` on
|
|
565
|
+
* Western-language Windows systems, `windows-1251` for Cyrillic, `windows-1256` for Arabic, and
|
|
566
|
+
* `windows-932` (Shift_JIS) for Japanese. On many modern Unix-like systems, the default locale
|
|
567
|
+
* encoding is `utf-8`. The actual encoding therefore depends on the computer on which the
|
|
568
|
+
* application runs.
|
|
569
|
+
*
|
|
570
|
+
* Changing this property after connecting affects subsequent high-level FTP commands. If a
|
|
571
|
+
* character cannot be represented in a selected single-byte encoding, the character is omitted
|
|
572
|
+
* from the transmitted command; use `utf-8` to preserve full Unicode names.
|
|
573
|
+
*
|
|
574
|
+
* **FTP filename encoding:** The original FTP protocol did not define one universal encoding for
|
|
575
|
+
* path names. The client and server must use the same encoding; UTF-8 is preferred when the
|
|
576
|
+
* server supports it.
|
|
577
|
+
*/
|
|
578
|
+
commandCharset: string
|
|
579
|
+
|
|
580
|
+
/**
|
|
581
|
+
* Contains a numeric reason code after {@link Ftp2.connect} or {@link Ftp2.connectOnly} fails.
|
|
582
|
+
* Use this value for broad classification and inspect `LastErrorText` for detailed diagnostics.
|
|
583
|
+
*
|
|
584
|
+
* CodeMeaning
|
|
585
|
+
*
|
|
586
|
+
* | `0` | | Success. |
|
|
587
|
+
*
|
|
588
|
+
* | `1` | | The hostname is empty. |
|
|
589
|
+
*
|
|
590
|
+
* | `2` | | DNS lookup failed. |
|
|
591
|
+
*
|
|
592
|
+
* | `3` | | DNS lookup timed out. |
|
|
593
|
+
*
|
|
594
|
+
* | `4` | | Cancelled by the application. |
|
|
595
|
+
*
|
|
596
|
+
* | `5` | | Internal failure. |
|
|
597
|
+
*
|
|
598
|
+
* | `6` | | TCP connection timed out. |
|
|
599
|
+
*
|
|
600
|
+
* | `7` | | TCP connection was rejected or otherwise failed. |
|
|
601
|
+
*
|
|
602
|
+
* | `100` | | Internal TLS failure. |
|
|
603
|
+
*
|
|
604
|
+
* | `101` | | Failed to send the TLS ClientHello. |
|
|
605
|
+
*
|
|
606
|
+
* | `102` | | An unexpected TLS handshake message was received. |
|
|
607
|
+
*
|
|
608
|
+
* | `103` | | Failed to read the ServerHello. |
|
|
609
|
+
*
|
|
610
|
+
* | `104` | | The server did not provide a certificate. |
|
|
611
|
+
*
|
|
612
|
+
* | `105` | | Unexpected TLS protocol version. |
|
|
613
|
+
*
|
|
614
|
+
* | `106` | | Server certificate verification failed. |
|
|
615
|
+
*
|
|
616
|
+
* | `107` | | The negotiated TLS version is not allowed. |
|
|
617
|
+
*
|
|
618
|
+
* | `109` | | Failed while reading TLS handshake messages. |
|
|
619
|
+
*
|
|
620
|
+
* | `110` | | Failed to send the client-certificate handshake message. |
|
|
621
|
+
*
|
|
622
|
+
* | `111` | | Failed to send the client key exchange. |
|
|
623
|
+
*
|
|
624
|
+
* | `112` | | The client certificate private key is not accessible. |
|
|
625
|
+
*
|
|
626
|
+
* | `113` | | Failed to send client certificate verification. |
|
|
627
|
+
*
|
|
628
|
+
* | `114` | | Failed to send ChangeCipherSpec. |
|
|
629
|
+
*
|
|
630
|
+
* | `115` | | Failed to send the Finished handshake message. |
|
|
631
|
+
*
|
|
632
|
+
* | `116` | | The server Finished message is invalid. |
|
|
633
|
+
*
|
|
634
|
+
* | `200` | | Connected, but the FTP greeting was not received. |
|
|
635
|
+
*
|
|
636
|
+
* | `201` | | The `AUTH TLS` or `AUTH SSL` upgrade failed. |
|
|
637
|
+
*
|
|
638
|
+
* | `300` | | An asynchronous operation is already in progress. |
|
|
639
|
+
*
|
|
640
|
+
* | `301` | | FTP authentication failed. |
|
|
641
|
+
*
|
|
642
|
+
* A successful connection sets this property to `0`. An authentication failure can set it to
|
|
643
|
+
* `301` while {@link Ftp2.connectVerified} remains `true`, because the TCP and FTP connection
|
|
644
|
+
* succeeded before the login was rejected.
|
|
645
|
+
*
|
|
646
|
+
* This property is read-only.
|
|
647
|
+
*/
|
|
648
|
+
readonly connectFailReason: number
|
|
649
|
+
|
|
650
|
+
/**
|
|
651
|
+
* Specifies the maximum number of seconds to wait for a remote endpoint to accept a TCP
|
|
652
|
+
* connection. The default is `30`. A value of `0` or any negative value waits indefinitely.
|
|
653
|
+
*
|
|
654
|
+
* This timeout applies whenever Ftp2 establishes a TCP connection, including the FTP control
|
|
655
|
+
* connection, FTP data connections, and connections to configured proxy servers.
|
|
656
|
+
*
|
|
657
|
+
* It covers only TCP connection establishment. It does not apply to TLS handshakes, FTP greetings
|
|
658
|
+
* or replies, authentication, file data, or any other communication after the TCP connection has
|
|
659
|
+
* been accepted.
|
|
660
|
+
*/
|
|
661
|
+
connectTimeout: number
|
|
662
|
+
|
|
663
|
+
/**
|
|
664
|
+
* Indicates whether the TCP connection to the FTP server was successfully established during the
|
|
665
|
+
* most recent connection attempt. It does not indicate that FTP authentication succeeded; see
|
|
666
|
+
* {@link Ftp2.loginVerified}.
|
|
667
|
+
*
|
|
668
|
+
* This is a verification result, not a current-socket-state property. It remains `true` after
|
|
669
|
+
* {@link Ftp2.disconnect} if the preceding connection was successfully established.
|
|
670
|
+
*
|
|
671
|
+
* This property is read-only.
|
|
672
|
+
*/
|
|
673
|
+
readonly connectVerified: boolean
|
|
674
|
+
|
|
675
|
+
/**
|
|
676
|
+
* Controls line-ending conversion when downloading in ASCII transfer mode. The default is `0`.
|
|
677
|
+
*
|
|
678
|
+
* ValueDownloaded text
|
|
679
|
+
*
|
|
680
|
+
* | `0` | | Leaves line endings as received. |
|
|
681
|
+
*
|
|
682
|
+
* | `1` | | Converts line endings to CRLF. |
|
|
683
|
+
*
|
|
684
|
+
* | `2` | | Converts line endings to LF. |
|
|
685
|
+
*
|
|
686
|
+
* | `3` | | Converts line endings to CR. |
|
|
687
|
+
*
|
|
688
|
+
* **Binary mode:** This property has no effect on binary transfers. Use binary mode for files
|
|
689
|
+
* whose bytes must be preserved exactly.
|
|
690
|
+
*/
|
|
691
|
+
crlfMode: number
|
|
692
|
+
|
|
693
|
+
/**
|
|
694
|
+
* Specifies the protection level for FTP data connections. The value is compared
|
|
695
|
+
* case-insensitively. The default is `control`.
|
|
696
|
+
*
|
|
697
|
+
* ValueBehavior
|
|
698
|
+
*
|
|
699
|
+
* | `control` | | Data connections use the same protection state as the control connection. If
|
|
700
|
+
* the control connection is unencrypted, no `PBSZ` or `PROT` commands are sent. |
|
|
701
|
+
*
|
|
702
|
+
* | `clear` | | Data connections are requested as unencrypted. If the control connection is also
|
|
703
|
+
* unencrypted, no `PBSZ` or `PROT` commands are sent. If the control connection uses TLS, Chilkat
|
|
704
|
+
* sends `PBSZ 0` followed by `PROT C`. If the server rejects `PROT C` but accepts `PROT P`,
|
|
705
|
+
* Chilkat falls back to private data protection. |
|
|
706
|
+
*
|
|
707
|
+
* | `private` | | Data connections are protected with TLS. For an encrypted control connection,
|
|
708
|
+
* Chilkat sends `PBSZ 0` followed by `PROT P`. |
|
|
709
|
+
*
|
|
710
|
+
* {@link Ftp2.connect} sends the required `PBSZ` and `PROT` commands. If the server requires
|
|
711
|
+
* login first and replies with `530 Please login with USER and PASS`, Chilkat authenticates and
|
|
712
|
+
* automatically retries them. A required protection setup fails only when no acceptable
|
|
713
|
+
* protection level can be established.
|
|
714
|
+
*
|
|
715
|
+
* **Control and data channels:** FTP uses one long-lived control connection and a separate data
|
|
716
|
+
* connection for each listing, upload, or download. FTPS can protect these channels
|
|
717
|
+
* independently.
|
|
718
|
+
*/
|
|
719
|
+
dataProtection: string
|
|
720
|
+
|
|
721
|
+
/**
|
|
722
|
+
* Specifies the character encoding used only to decode directory-listing and related
|
|
723
|
+
* server-response bytes. It applies to responses from `LIST`, `NLST`, and `MLSD`. It does not
|
|
724
|
+
* affect commands, remote paths, filenames, usernames, passwords, or other text sent to the
|
|
725
|
+
* server.
|
|
726
|
+
*
|
|
727
|
+
* The default is `ANSI`. Charset names and the keyword `ANSI` are case-insensitive. `ANSI` means
|
|
728
|
+
* the platform's system-default single-byte encoding or default system locale; on Windows, this
|
|
729
|
+
* is the active code page (ACP).
|
|
730
|
+
*
|
|
731
|
+
* **What `ANSI` means:** It does not name one specific charset. It tells Chilkat to use the
|
|
732
|
+
* system-default encoding or default system locale. Typical examples include `windows-1252` on
|
|
733
|
+
* Western-language Windows systems, `windows-1251` for Cyrillic, `windows-1256` for Arabic, and
|
|
734
|
+
* `windows-932` (Shift_JIS) for Japanese. On many modern Unix-like systems, the default locale
|
|
735
|
+
* encoding is `utf-8`. The actual encoding therefore depends on the computer on which the
|
|
736
|
+
* application runs.
|
|
737
|
+
*
|
|
738
|
+
* Using the wrong encoding can produce incorrectly decoded names without causing the listing
|
|
739
|
+
* operation itself to fail. When {@link Ftp2.autoOptsUtf8} is enabled and UTF-8 support is
|
|
740
|
+
* advertised, Chilkat changes this property to `utf-8`, even if the application previously
|
|
741
|
+
* assigned another value. If UTF-8 is not advertised, the existing value is left unchanged.
|
|
742
|
+
*/
|
|
743
|
+
dirListingCharset: string
|
|
744
|
+
|
|
745
|
+
/**
|
|
746
|
+
* Returns the current average download rate in bytes per second. The value is updated during
|
|
747
|
+
* synchronous and asynchronous downloads and describes the download in progress or the most
|
|
748
|
+
* recently completed download. A subsequent upload does not clear the retained download rate.
|
|
749
|
+
*
|
|
750
|
+
* This property is read-only.
|
|
751
|
+
*/
|
|
752
|
+
readonly downloadTransferRate: number
|
|
753
|
+
|
|
754
|
+
/**
|
|
755
|
+
* Specifies the IPv4 address advertised to the server for active-mode data connections. This
|
|
756
|
+
* property affects both `PORT` and `EPRT`. Supply a numeric IPv4 address, the keyword `control`,
|
|
757
|
+
* or an IPv4 address prefixed with `bind-`. IPv6 values are not accepted. Keywords and prefixes
|
|
758
|
+
* are case-insensitive.
|
|
759
|
+
*
|
|
760
|
+
* - `control` uses the local IPv4 address of the established FTP control socket.
|
|
761
|
+
*
|
|
762
|
+
* - `bind-192.0.2.10` advertises the address and also binds the local data-listener socket to
|
|
763
|
+
* that address.
|
|
764
|
+
*
|
|
765
|
+
* - A plain IPv4 address changes the address sent in `PORT` or `EPRT` without explicitly binding
|
|
766
|
+
* the listener to that address.
|
|
767
|
+
*
|
|
768
|
+
* If {@link Ftp2.clientIpAddress} is set, this property should specify the same local address.
|
|
769
|
+
* When a `bind-` value is used with {@link Ftp2.activePortRangeStart} and {@link
|
|
770
|
+
* Ftp2.activePortRangeEnd}, Chilkat binds to the specified address while searching the effective
|
|
771
|
+
* range for an available port.
|
|
772
|
+
*
|
|
773
|
+
* **Active mode setting:** This property is used only when {@link Ftp2.passive} is `false`.
|
|
774
|
+
* Passive mode is typically preferred because the client initiates both the control and data
|
|
775
|
+
* connections, making it much friendlier to client-side firewalls and NAT.
|
|
776
|
+
*
|
|
777
|
+
* **NAT caution:** The advertised address must be reachable from the FTP server. Incorrect
|
|
778
|
+
* active-mode addressing commonly causes the control command to succeed while the subsequent data
|
|
779
|
+
* connection fails.
|
|
780
|
+
*/
|
|
781
|
+
forcePortIpAddress: string
|
|
782
|
+
|
|
783
|
+
/**
|
|
784
|
+
* Contains the initial FTP server greeting received for the most recent connection immediately
|
|
785
|
+
* after the TCP or implicit-TLS connection was established. It normally begins with reply code
|
|
786
|
+
* `220` and may include server identification or policy information.
|
|
787
|
+
*
|
|
788
|
+
* The value remains available after {@link Ftp2.disconnect}.
|
|
789
|
+
*
|
|
790
|
+
* This property is read-only.
|
|
791
|
+
*/
|
|
792
|
+
readonly greeting: string
|
|
793
|
+
|
|
794
|
+
/**
|
|
795
|
+
* Indicates whether the FTP server advertised support for `MODE Z`, which compresses FTP data
|
|
796
|
+
* streams using the DEFLATE algorithm.
|
|
797
|
+
*
|
|
798
|
+
* This property becomes meaningful after Chilkat has processed a successful `FEAT` response,
|
|
799
|
+
* either automatically because {@link Ftp2.autoFeat} is `true` or through an explicit call to
|
|
800
|
+
* {@link Ftp2.feat}. Before capability discovery, a value of `false` does not establish that the
|
|
801
|
+
* server lacks `MODE Z` support.
|
|
802
|
+
*
|
|
803
|
+
* Call {@link Ftp2.setModeZ} after connecting to enable or disable compressed transfer mode.
|
|
804
|
+
*
|
|
805
|
+
* This property is read-only.
|
|
806
|
+
*/
|
|
807
|
+
readonly hasModeZ: boolean
|
|
808
|
+
|
|
809
|
+
/**
|
|
810
|
+
* Specifies the interval, in milliseconds, between `AbortCheck` callbacks during methods that
|
|
811
|
+
* support periodic cancellation checks. The default is `0`, which disables these callbacks.
|
|
812
|
+
*
|
|
813
|
+
* Smaller values can improve cancellation responsiveness but increase callback overhead. Methods
|
|
814
|
+
* that complete quickly may not generate a callback.
|
|
815
|
+
*/
|
|
816
|
+
heartbeatMs: number
|
|
817
|
+
|
|
818
|
+
/**
|
|
819
|
+
* Specifies the FTP server hostname or numeric IPv4/IPv6 address. Do not include a URL scheme,
|
|
820
|
+
* path, or port; configure the port separately with `Port`.
|
|
821
|
+
*/
|
|
822
|
+
hostname: string
|
|
823
|
+
|
|
824
|
+
/**
|
|
825
|
+
* Specifies the authentication method used with an HTTP proxy. Supported values are `Basic` and
|
|
826
|
+
* `NTLM`. Leave empty when the proxy does not require authentication.
|
|
827
|
+
*/
|
|
828
|
+
httpProxyAuthMethod: string
|
|
829
|
+
|
|
830
|
+
/**
|
|
831
|
+
* Specifies the Windows domain used for NTLM authentication to the HTTP proxy. It is ignored for
|
|
832
|
+
* Basic authentication and may be left empty when the username already includes the required
|
|
833
|
+
* domain information.
|
|
834
|
+
*/
|
|
835
|
+
httpProxyDomain: string
|
|
836
|
+
|
|
837
|
+
/**
|
|
838
|
+
* Specifies the hostname or numeric IP address of an HTTP proxy used to establish the FTP control
|
|
839
|
+
* connection. Leave empty to connect directly.
|
|
840
|
+
*/
|
|
841
|
+
httpProxyHostname: string
|
|
842
|
+
|
|
843
|
+
/**
|
|
844
|
+
* Specifies the password used to authenticate to the HTTP proxy. It is used together with
|
|
845
|
+
* `HttpProxyUsername` and `HttpProxyAuthMethod`.
|
|
846
|
+
*/
|
|
847
|
+
httpProxyPassword: string
|
|
848
|
+
|
|
849
|
+
/**
|
|
850
|
+
* Specifies the TCP port of the HTTP proxy. Common values include `8080` and `3128`, but the
|
|
851
|
+
* correct value is determined by the proxy configuration.
|
|
852
|
+
*/
|
|
853
|
+
httpProxyPort: number
|
|
854
|
+
|
|
855
|
+
/**
|
|
856
|
+
* Specifies the username used to authenticate to the HTTP proxy. Leave empty when the proxy
|
|
857
|
+
* allows unauthenticated connections.
|
|
858
|
+
*/
|
|
859
|
+
httpProxyUsername: string
|
|
860
|
+
|
|
861
|
+
/**
|
|
862
|
+
* Specifies the maximum period, in milliseconds, during which no control-channel response or
|
|
863
|
+
* forward upload progress is observed. The default is `60000`. A value of `0` or any negative
|
|
864
|
+
* value waits indefinitely.
|
|
865
|
+
*
|
|
866
|
+
* During an upload, the same limit applies when the operating-system send buffer remains full
|
|
867
|
+
* because the server is not consuming data.
|
|
868
|
+
*/
|
|
869
|
+
idleTimeoutMs: number
|
|
870
|
+
|
|
871
|
+
/**
|
|
872
|
+
* Deprecated. Indicates whether the object appears to be connected and authenticated. Reading
|
|
873
|
+
* this property may send `NOOP` to test the session. Use {@link Ftp2.checkConnection} instead.
|
|
874
|
+
*
|
|
875
|
+
* This property is read-only.
|
|
876
|
+
*/
|
|
877
|
+
readonly isConnected: boolean
|
|
878
|
+
|
|
879
|
+
/**
|
|
880
|
+
* Controls collection of an in-memory FTP protocol log. When enabled, commands and server replies
|
|
881
|
+
* are available in {@link Ftp2.sessionLog}. Use {@link Ftp2.clearSessionLog} to discard
|
|
882
|
+
* previously collected text.
|
|
883
|
+
*/
|
|
884
|
+
keepSessionLog: boolean
|
|
885
|
+
|
|
886
|
+
/**
|
|
887
|
+
* Contains the most recent FTP control-channel reply, including its three-digit status code and
|
|
888
|
+
* message. Examples include `250 Directory successfully changed.` and `550 Failed to change
|
|
889
|
+
* directory.`
|
|
890
|
+
*
|
|
891
|
+
* The value is updated by successful as well as failed commands. After {@link Ftp2.disconnect},
|
|
892
|
+
* it normally contains the server's reply to `QUIT`, such as `221 Goodbye.`. Some replies are
|
|
893
|
+
* multiline; use this property together with the method return value and `LastErrorText` when
|
|
894
|
+
* diagnosing a failure.
|
|
895
|
+
*
|
|
896
|
+
* This property is read-only.
|
|
897
|
+
*/
|
|
898
|
+
readonly lastReply: string
|
|
899
|
+
|
|
900
|
+
/**
|
|
901
|
+
* Specifies the case-insensitive wildcard pattern applied to the cached listing of the current
|
|
902
|
+
* remote directory. The default is `*`. It affects methods such as {@link Ftp2.getDirCount},
|
|
903
|
+
* {@link Ftp2.getFilename}, {@link Ftp2.getIsDirectory}, {@link Ftp2.getSize}, and the listing
|
|
904
|
+
* timestamp methods.
|
|
905
|
+
*
|
|
906
|
+
* Chilkat retrieves the full directory listing and applies this pattern locally; the pattern is
|
|
907
|
+
* not appended to `LIST`, `NLST`, or `MLSD`. For example, `*.txt` also matches a name such as
|
|
908
|
+
* `UPPER.TXT`.
|
|
909
|
+
*
|
|
910
|
+
* Specify only a name pattern, such as `*.txt`. To list `subdir/*.txt`, first call {@link
|
|
911
|
+
* Ftp2.changeRemoteDir} for `subdir`, then set this property to `*.txt`.
|
|
912
|
+
*
|
|
913
|
+
* **Listing cache:** Changing this property invalidates the cached directory listing, so the next
|
|
914
|
+
* indexed listing call retrieves a fresh listing from the server.
|
|
915
|
+
*/
|
|
916
|
+
listPattern: string
|
|
917
|
+
|
|
918
|
+
/**
|
|
919
|
+
* Indicates whether FTP authentication succeeded during the most recent login attempt. A TCP
|
|
920
|
+
* connection may be established even when this property is `false`; for example, rejected
|
|
921
|
+
* credentials leave {@link Ftp2.connectVerified} `true` and this property `false`.
|
|
922
|
+
*
|
|
923
|
+
* This is a verification result, not a current-socket-state property. It remains `true` after
|
|
924
|
+
* {@link Ftp2.disconnect} if the preceding session was successfully authenticated.
|
|
925
|
+
*
|
|
926
|
+
* This property is read-only.
|
|
927
|
+
*/
|
|
928
|
+
readonly loginVerified: boolean
|
|
929
|
+
|
|
930
|
+
/**
|
|
931
|
+
* Indicates whether the most recent download method received some, but not all, of the remote
|
|
932
|
+
* file. It is `false` when no data was received or when the complete file was received.
|
|
933
|
+
*
|
|
934
|
+
* This property helps distinguish a mid-transfer failure from a failure that occurred before any
|
|
935
|
+
* file data arrived.
|
|
936
|
+
*
|
|
937
|
+
* This property is read-only.
|
|
938
|
+
*/
|
|
939
|
+
readonly partialTransfer: boolean
|
|
940
|
+
|
|
941
|
+
/**
|
|
942
|
+
* Selects the FTP data-connection mode. The default is `true` for passive mode. Set to `false`
|
|
943
|
+
* for active mode.
|
|
944
|
+
*
|
|
945
|
+
* ModeConnection direction
|
|
946
|
+
*
|
|
947
|
+
* | Passive | | The server listens and the client connects to the server for each data transfer.
|
|
948
|
+
* |
|
|
949
|
+
*
|
|
950
|
+
* | Active | | The client listens and the server connects back to the client. |
|
|
951
|
+
*
|
|
952
|
+
* **Typical choice: Passive mode.** Passive mode is typically used because it is much friendlier
|
|
953
|
+
* to client-side firewalls and NAT (Network Address Translation). In active mode, the server
|
|
954
|
+
* attempts to initiate a data connection back to the client, which many client-side firewalls
|
|
955
|
+
* block. In passive mode, the client initiates both the control and data connections to the
|
|
956
|
+
* server.
|
|
957
|
+
*/
|
|
958
|
+
passive: boolean
|
|
959
|
+
|
|
960
|
+
/**
|
|
961
|
+
* Controls how the address returned by `PASV` is handled. The default is `true`. When enabled,
|
|
962
|
+
* Chilkat ignores the IP address embedded in the server's `PASV` reply and connects to the
|
|
963
|
+
* control connection's server address using only the returned port.
|
|
964
|
+
*
|
|
965
|
+
* This avoids private or otherwise unreachable addresses returned by FTP servers behind NAT,
|
|
966
|
+
* especially when TLS prevents a network device from rewriting the reply.
|
|
967
|
+
*/
|
|
968
|
+
passiveUseHostAddr: boolean
|
|
969
|
+
|
|
970
|
+
/**
|
|
971
|
+
* Specifies the password used for FTP authentication. For anonymous FTP, this is commonly an
|
|
972
|
+
* email address or arbitrary identifying string. Applications that already store the password in
|
|
973
|
+
* a `SecureString` should use {@link Ftp2.setSecurePassword} instead.
|
|
974
|
+
*/
|
|
975
|
+
password: string
|
|
976
|
+
|
|
977
|
+
/**
|
|
978
|
+
* Specifies the integer value that represents 100 percent in `PercentDone` callbacks. The default
|
|
979
|
+
* is `100`. For example, a scale of `1000` allows one-tenth-percent resolution, where callback
|
|
980
|
+
* value `453` represents 45.3 percent.
|
|
981
|
+
*
|
|
982
|
+
* The value is limited to the range `10` through `100000`. This property is relevant only in
|
|
983
|
+
* environments that support event callbacks and only for operations whose total work can be
|
|
984
|
+
* measured.
|
|
985
|
+
*/
|
|
986
|
+
percentDoneScale: number
|
|
987
|
+
|
|
988
|
+
/**
|
|
989
|
+
* Specifies the FTP server port. Port `21` is conventionally used for plain FTP or explicit FTPS,
|
|
990
|
+
* and port `990` is conventionally used for implicit FTPS.
|
|
991
|
+
*
|
|
992
|
+
* When {@link Ftp2.autoFix} is `true`, only these two port numbers cause automatic changes to
|
|
993
|
+
* {@link Ftp2.ssl}, {@link Ftp2.authSsl}, and {@link Ftp2.authTls}. A custom port leaves all
|
|
994
|
+
* three TLS-mode properties unchanged.
|
|
995
|
+
*/
|
|
996
|
+
port: number
|
|
997
|
+
|
|
998
|
+
/**
|
|
999
|
+
* Controls the preferred address family when DNS resolution returns both IPv4 and IPv6 addresses.
|
|
1000
|
+
* The default is `false`, which prefers IPv4. Set it to `true` to prefer IPv6.
|
|
1001
|
+
*/
|
|
1002
|
+
preferIpv6: boolean
|
|
1003
|
+
|
|
1004
|
+
/**
|
|
1005
|
+
* Controls whether `NLST` is preferred over `LIST` when a legacy directory listing is required.
|
|
1006
|
+
* The default is `false`. This property is consulted only when {@link Ftp2.allowMlsd} does not
|
|
1007
|
+
* result in `MLSD` being used.
|
|
1008
|
+
*
|
|
1009
|
+
* `NLST` generally returns names only. Do not rely on indexed sizes, timestamps, ownership,
|
|
1010
|
+
* group, or permission information after an `NLST` listing. Because `NLST` does not reliably
|
|
1011
|
+
* identify entry types, Chilkat may send additional commands, such as directory-change tests, to
|
|
1012
|
+
* determine which names are directories.
|
|
1013
|
+
*
|
|
1014
|
+
* **When to use:** Enable this only for a server whose LIST output truncates or corrupts names.
|
|
1015
|
+
* Keep {@link Ftp2.allowMlsd} enabled whenever possible because MLSD is the standardized
|
|
1016
|
+
* machine-readable listing command.
|
|
1017
|
+
*/
|
|
1018
|
+
preferNlst: boolean
|
|
1019
|
+
|
|
1020
|
+
/**
|
|
1021
|
+
* Specifies the expected size, in bytes, of the next file downloaded by {@link Ftp2.getFile} when
|
|
1022
|
+
* the size is not otherwise known. Chilkat uses the value to calculate percentage progress.
|
|
1023
|
+
*
|
|
1024
|
+
* This is a one-shot setting. It is consumed by the next applicable download and automatically
|
|
1025
|
+
* reset to `0`. Set it immediately before the download. When a nonzero value is supplied, Chilkat
|
|
1026
|
+
* does not need the additional size query controlled by {@link Ftp2.autoGetSizeForProgress}.
|
|
1027
|
+
*
|
|
1028
|
+
* If this property is zero, percentage progress may still be available when the server's
|
|
1029
|
+
* preliminary transfer reply includes the file size.
|
|
1030
|
+
*/
|
|
1031
|
+
progressMonSize: number
|
|
1032
|
+
|
|
1033
|
+
/**
|
|
1034
|
+
* The 64-bit form of {@link Ftp2.progressMonSize}. Specifies the expected size, in bytes, of the
|
|
1035
|
+
* next download when the value may exceed the 32-bit integer range. It is consumed by the next
|
|
1036
|
+
* applicable download and automatically reset to `0`.
|
|
1037
|
+
*
|
|
1038
|
+
* A 64-bit integer in Chilkat; JavaScript numbers are exact up to 2^53.
|
|
1039
|
+
*/
|
|
1040
|
+
progressMonSize64: number
|
|
1041
|
+
|
|
1042
|
+
/**
|
|
1043
|
+
* Specifies the hostname or IP address of a traditional FTP application proxy or firewall. This
|
|
1044
|
+
* is distinct from an HTTP CONNECT proxy and from a SOCKS proxy. The login sequence is selected
|
|
1045
|
+
* by `ProxyMethod`.
|
|
1046
|
+
*/
|
|
1047
|
+
proxyHostname: string
|
|
1048
|
+
|
|
1049
|
+
/**
|
|
1050
|
+
* Selects the login sequence required by a traditional FTP proxy or firewall. The default is `0`,
|
|
1051
|
+
* meaning no FTP proxy. Configure {@link Ftp2.proxyHostname}, {@link Ftp2.proxyPort}, and the
|
|
1052
|
+
* required proxy credentials before connecting.
|
|
1053
|
+
*
|
|
1054
|
+
* ValueSequence sent
|
|
1055
|
+
*
|
|
1056
|
+
* | `1` — SITE | |
|
|
1057
|
+
* ```
|
|
1058
|
+
* USER ProxyUsername
|
|
1059
|
+
* PASS ProxyPassword
|
|
1060
|
+
* SITE Hostname
|
|
1061
|
+
* USER Username
|
|
1062
|
+
* PASS Password
|
|
1063
|
+
* ```
|
|
1064
|
+
* |
|
|
1065
|
+
*
|
|
1066
|
+
* | `2` — USER user@site | |
|
|
1067
|
+
* ```
|
|
1068
|
+
* USER Username@Hostname:Port
|
|
1069
|
+
* PASS Password
|
|
1070
|
+
* ```
|
|
1071
|
+
* |
|
|
1072
|
+
*
|
|
1073
|
+
* | `3` — USER with proxy login | |
|
|
1074
|
+
* ```
|
|
1075
|
+
* USER ProxyUsername
|
|
1076
|
+
* PASS ProxyPassword
|
|
1077
|
+
* USER Username@Hostname:Port
|
|
1078
|
+
* PASS Password
|
|
1079
|
+
* ```
|
|
1080
|
+
* |
|
|
1081
|
+
*
|
|
1082
|
+
* | `4` — USER/PASS/ACCT | |
|
|
1083
|
+
* ```
|
|
1084
|
+
* USER Username@Hostname:Port ProxyUsername
|
|
1085
|
+
* PASS Password
|
|
1086
|
+
* ACCT ProxyPassword
|
|
1087
|
+
* ```
|
|
1088
|
+
* |
|
|
1089
|
+
*
|
|
1090
|
+
* | `5` — OPEN | |
|
|
1091
|
+
* ```
|
|
1092
|
+
* USER ProxyUsername
|
|
1093
|
+
* PASS ProxyPassword
|
|
1094
|
+
* OPEN Hostname
|
|
1095
|
+
* USER Username
|
|
1096
|
+
* PASS Password
|
|
1097
|
+
* ```
|
|
1098
|
+
* |
|
|
1099
|
+
*
|
|
1100
|
+
* | `6` — firewall ID | |
|
|
1101
|
+
* ```
|
|
1102
|
+
* USER ProxyUsername@Hostname
|
|
1103
|
+
* USER Username
|
|
1104
|
+
* PASS Password
|
|
1105
|
+
* ```
|
|
1106
|
+
* |
|
|
1107
|
+
*
|
|
1108
|
+
* | `7` | |
|
|
1109
|
+
* ```
|
|
1110
|
+
* USER ProxyUsername
|
|
1111
|
+
* USER ProxyPassword
|
|
1112
|
+
* SITE Hostname:Port
|
|
1113
|
+
* USER Username
|
|
1114
|
+
* PASS Password
|
|
1115
|
+
* ```
|
|
1116
|
+
* |
|
|
1117
|
+
*
|
|
1118
|
+
* | `8` | |
|
|
1119
|
+
* ```
|
|
1120
|
+
* USER Username@ProxyUsername@Hostname
|
|
1121
|
+
* PASS Password@ProxyPassword
|
|
1122
|
+
* ```
|
|
1123
|
+
* |
|
|
1124
|
+
*
|
|
1125
|
+
* | `9` | |
|
|
1126
|
+
* ```
|
|
1127
|
+
* ProxyUsername
|
|
1128
|
+
* ProxyPassword
|
|
1129
|
+
* Username
|
|
1130
|
+
* Password
|
|
1131
|
+
* ```
|
|
1132
|
+
* |
|
|
1133
|
+
*
|
|
1134
|
+
* **Server-specific feature:** These sequences describe historical FTP firewall conventions, not
|
|
1135
|
+
* one standardized proxy protocol. Use the value required by the proxy administrator.
|
|
1136
|
+
*/
|
|
1137
|
+
proxyMethod: number
|
|
1138
|
+
|
|
1139
|
+
/**
|
|
1140
|
+
* Specifies the password used to authenticate to a traditional FTP proxy or firewall. Its
|
|
1141
|
+
* placement in the login exchange depends on `ProxyMethod`.
|
|
1142
|
+
*/
|
|
1143
|
+
proxyPassword: string
|
|
1144
|
+
|
|
1145
|
+
/**
|
|
1146
|
+
* Specifies the TCP port on which the traditional FTP proxy or firewall accepts connections.
|
|
1147
|
+
*/
|
|
1148
|
+
proxyPort: number
|
|
1149
|
+
|
|
1150
|
+
/**
|
|
1151
|
+
* Specifies the username used to authenticate to a traditional FTP proxy or firewall. Its
|
|
1152
|
+
* placement in the login exchange depends on `ProxyMethod`.
|
|
1153
|
+
*/
|
|
1154
|
+
proxyUsername: string
|
|
1155
|
+
|
|
1156
|
+
/**
|
|
1157
|
+
* Specifies the maximum number of seconds that a data connection may remain without receiving
|
|
1158
|
+
* another byte. The default is `60`. A value of `0` or any negative value waits indefinitely.
|
|
1159
|
+
*
|
|
1160
|
+
* This is an inactivity timeout, not a limit on total transfer duration. Receiving any data, even
|
|
1161
|
+
* a single byte, resets the timer and begins a new full timeout interval. A large download may
|
|
1162
|
+
* therefore continue indefinitely as long as data keeps arriving within the configured interval.
|
|
1163
|
+
*/
|
|
1164
|
+
readTimeout: number
|
|
1165
|
+
|
|
1166
|
+
/**
|
|
1167
|
+
* Controls verification of the FTP server's TLS certificate chain.
|
|
1168
|
+
*
|
|
1169
|
+
* ValueBehavior
|
|
1170
|
+
*
|
|
1171
|
+
* | `false` (default) | | A connection is not rejected solely because normal certificate-chain
|
|
1172
|
+
* verification fails. |
|
|
1173
|
+
*
|
|
1174
|
+
* | `true` | | The connection fails when the certificate is expired, is not yet valid, its
|
|
1175
|
+
* signature is invalid, or its chain cannot be verified to a trusted root. |
|
|
1176
|
+
*
|
|
1177
|
+
* Certificate-chain verification is separate from hostname matching and public-key pinning.
|
|
1178
|
+
* Hostname matching, when required, is enforced independently even when this property is `false`.
|
|
1179
|
+
* {@link Ftp2.tlsPinSet} supplements rather than replaces normal certificate verification.
|
|
1180
|
+
*
|
|
1181
|
+
* The hostname used for the TLS connection is also used for Server Name Indication (SNI) and
|
|
1182
|
+
* certificate hostname comparison.
|
|
1183
|
+
*/
|
|
1184
|
+
requireSslCertVerify: boolean
|
|
1185
|
+
|
|
1186
|
+
/**
|
|
1187
|
+
* Set to `true` to request that the next applicable upload or download resume from existing
|
|
1188
|
+
* content instead of starting over. Unrelated FTP commands do not consume the setting. The next
|
|
1189
|
+
* applicable transfer consumes it and automatically resets it to `false`.
|
|
1190
|
+
*
|
|
1191
|
+
* For a resumed upload, Chilkat obtains the existing remote size, begins reading the local
|
|
1192
|
+
* content at that offset, and appends the remaining bytes. For a resumed download, Chilkat uses
|
|
1193
|
+
* the existing destination length as the `REST` offset and appends the remaining remote bytes.
|
|
1194
|
+
*
|
|
1195
|
+
* The setting applies to the ordinary file, `BinData`, and `StringBuilder` upload and download
|
|
1196
|
+
* methods, including {@link Ftp2.putFile}, {@link Ftp2.putFileBd}, {@link Ftp2.putFileSb}, {@link
|
|
1197
|
+
* Ftp2.getFile}, {@link Ftp2.getFileBd}, and {@link Ftp2.getFileSb}.
|
|
1198
|
+
*
|
|
1199
|
+
* Resume requires compatible server support and a correct partial local or remote file. The
|
|
1200
|
+
* application should verify that the existing content belongs to the same file version before
|
|
1201
|
+
* resuming.
|
|
1202
|
+
*/
|
|
1203
|
+
restartNext: boolean
|
|
1204
|
+
|
|
1205
|
+
/**
|
|
1206
|
+
* Contains the in-memory FTP session log collected while {@link Ftp2.keepSessionLog} is `true`.
|
|
1207
|
+
* The log includes protocol commands and server replies and is useful for troubleshooting.
|
|
1208
|
+
* Passwords and other sensitive information may appear; handle the text accordingly.
|
|
1209
|
+
*
|
|
1210
|
+
* This property is read-only.
|
|
1211
|
+
*/
|
|
1212
|
+
readonly sessionLog: string
|
|
1213
|
+
|
|
1214
|
+
/**
|
|
1215
|
+
* Specifies the socket receive-buffer size. The default is `4194304` bytes. Normally this
|
|
1216
|
+
* property should remain unchanged.
|
|
1217
|
+
*
|
|
1218
|
+
* When download throughput is unexpectedly low, testing a larger value may help. Values should
|
|
1219
|
+
* generally be multiples of `4096`.
|
|
1220
|
+
*/
|
|
1221
|
+
soRcvBuf: number
|
|
1222
|
+
|
|
1223
|
+
/**
|
|
1224
|
+
* Specifies the socket send-buffer size. The default is `262144` bytes. Normally this property
|
|
1225
|
+
* should remain unchanged.
|
|
1226
|
+
*
|
|
1227
|
+
* When upload throughput is unexpectedly low, testing values such as `524288` or `1048576` may
|
|
1228
|
+
* help. Values should generally be multiples of `4096`.
|
|
1229
|
+
*/
|
|
1230
|
+
soSndBuf: number
|
|
1231
|
+
|
|
1232
|
+
/**
|
|
1233
|
+
* Specifies the hostname or IP address of the SOCKS proxy. It is used only when {@link
|
|
1234
|
+
* Ftp2.socksVersion} is `4` or `5`.
|
|
1235
|
+
*/
|
|
1236
|
+
socksHostname: string
|
|
1237
|
+
|
|
1238
|
+
/**
|
|
1239
|
+
* Specifies the password for SOCKS5 username/password authentication. It is ignored for SOCKS4,
|
|
1240
|
+
* which has no password-authentication field.
|
|
1241
|
+
*/
|
|
1242
|
+
socksPassword: string
|
|
1243
|
+
|
|
1244
|
+
/**
|
|
1245
|
+
* Specifies the SOCKS proxy port. The default is `1080`. It is used only when {@link
|
|
1246
|
+
* Ftp2.socksVersion} is `4` or `5`.
|
|
1247
|
+
*/
|
|
1248
|
+
socksPort: number
|
|
1249
|
+
|
|
1250
|
+
/**
|
|
1251
|
+
* Specifies the SOCKS user identifier. SOCKS5 may use it with password authentication; SOCKS4
|
|
1252
|
+
* sends it as the protocol user ID. It is used only when {@link Ftp2.socksVersion} is `4` or `5`.
|
|
1253
|
+
*/
|
|
1254
|
+
socksUsername: string
|
|
1255
|
+
|
|
1256
|
+
/**
|
|
1257
|
+
* Selects SOCKS proxy usage.
|
|
1258
|
+
*
|
|
1259
|
+
* ValueBehavior
|
|
1260
|
+
*
|
|
1261
|
+
* | `0` | | Default. Connect directly without a SOCKS proxy. |
|
|
1262
|
+
*
|
|
1263
|
+
* | `4` | | Connect through a SOCKS4 proxy. |
|
|
1264
|
+
*
|
|
1265
|
+
* | `5` | | Connect through a SOCKS5 proxy. |
|
|
1266
|
+
*/
|
|
1267
|
+
socksVersion: number
|
|
1268
|
+
|
|
1269
|
+
/**
|
|
1270
|
+
* Set to `true` to use implicit FTP over TLS. TLS begins immediately after the TCP connection is
|
|
1271
|
+
* established, before the FTP greeting is received. Port `990` is conventionally used for
|
|
1272
|
+
* implicit FTPS.
|
|
1273
|
+
*
|
|
1274
|
+
* This property has priority over {@link Ftp2.authTls} and {@link Ftp2.authSsl}. If `Ssl` is
|
|
1275
|
+
* `true`, implicit TLS is used even when either explicit-TLS property is also `true`. {@link
|
|
1276
|
+
* Ftp2.connectOnly} performs the implicit TLS handshake but does not send `USER` or `PASS`.
|
|
1277
|
+
*
|
|
1278
|
+
* **TLS-mode precedence:** `Ssl` has highest priority. When it is `false`, `AuthTls` takes
|
|
1279
|
+
* priority over `AuthSsl`. When all three properties are `false`, plain FTP is used.
|
|
1280
|
+
*
|
|
1281
|
+
* **Protocol distinction:** FTPS is FTP protected by TLS. SFTP is a different protocol carried by
|
|
1282
|
+
* SSH and is implemented by the `SFtp` class.
|
|
1283
|
+
*/
|
|
1284
|
+
ssl: boolean
|
|
1285
|
+
|
|
1286
|
+
/**
|
|
1287
|
+
* Restricts the cipher suites and selected TLS security requirements offered for FTP TLS
|
|
1288
|
+
* connections.
|
|
1289
|
+
*
|
|
1290
|
+
* Leave this property empty to allow all cipher suites implemented by the installed Chilkat
|
|
1291
|
+
* version. To restrict negotiation, provide a comma-separated list in preference order, for
|
|
1292
|
+
* example:
|
|
1293
|
+
*
|
|
1294
|
+
* ```
|
|
1295
|
+
* TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
|
|
1296
|
+
* ```
|
|
1297
|
+
*
|
|
1298
|
+
* The server chooses from the cipher suites offered by the client; the client cannot force a
|
|
1299
|
+
* suite the server does not support.
|
|
1300
|
+
*
|
|
1301
|
+
* The list may also contain these policy keywords:
|
|
1302
|
+
*
|
|
1303
|
+
* - `rsa1024` or `rsa2048` to require a minimum RSA server-key size.
|
|
1304
|
+
*
|
|
1305
|
+
* - `secure-renegotiation` to require secure TLS renegotiation.
|
|
1306
|
+
*
|
|
1307
|
+
* - `best-practices` to use the security policy recommended by the installed Chilkat version.
|
|
1308
|
+
*
|
|
1309
|
+
* Legacy keywords such as `aes256-cbc`, `aes128-cbc`, `3des-cbc`, and `rc4` remain recognized for
|
|
1310
|
+
* compatibility, but explicitly listing acceptable suites is preferred.
|
|
1311
|
+
*/
|
|
1312
|
+
sslAllowedCiphers: string
|
|
1313
|
+
|
|
1314
|
+
/**
|
|
1315
|
+
* Selects the TLS protocol version or minimum version allowed for secure FTP connections.
|
|
1316
|
+
*
|
|
1317
|
+
* The complete list of accepted values is:
|
|
1318
|
+
*
|
|
1319
|
+
* ```
|
|
1320
|
+
* default
|
|
1321
|
+
* TLS 1.3
|
|
1322
|
+
* TLS 1.2
|
|
1323
|
+
* TLS 1.1
|
|
1324
|
+
* TLS 1.0
|
|
1325
|
+
* SSL 3.0
|
|
1326
|
+
* TLS 1.3 or higher
|
|
1327
|
+
* TLS 1.2 or higher
|
|
1328
|
+
* TLS 1.1 or higher
|
|
1329
|
+
* TLS 1.0 or higher
|
|
1330
|
+
* ```
|
|
1331
|
+
*
|
|
1332
|
+
* The default is `default`, which allows Chilkat to negotiate a protocol supported by both client
|
|
1333
|
+
* and server. A minimum-version setting is generally more interoperable than requiring one exact
|
|
1334
|
+
* version.
|
|
1335
|
+
*/
|
|
1336
|
+
sslProtocol: string
|
|
1337
|
+
|
|
1338
|
+
/**
|
|
1339
|
+
* Indicates whether the FTP server certificate chain was successfully verified for the current or
|
|
1340
|
+
* most recent TLS connection.
|
|
1341
|
+
*
|
|
1342
|
+
* This property reports certificate-chain verification only. It does not report hostname matching
|
|
1343
|
+
* or public-key pinning. If hostname matching or {@link Ftp2.tlsPinSet} pinning is required and
|
|
1344
|
+
* the check fails, the TLS connection itself fails.
|
|
1345
|
+
*
|
|
1346
|
+
* This property is read-only.
|
|
1347
|
+
*/
|
|
1348
|
+
readonly sslServerCertVerified: boolean
|
|
1349
|
+
|
|
1350
|
+
/**
|
|
1351
|
+
* Specifies a semicolon-separated list of case-insensitive wildcard patterns for files that are
|
|
1352
|
+
* eligible for synchronization and tree operations. For example: `*.xml;*.txt;*.csv`.
|
|
1353
|
+
*
|
|
1354
|
+
* When nonempty, a file must match at least one pattern. Matching is performed against the file's
|
|
1355
|
+
* basename, not its relative path. Thus `keep.txt` can match a file in any traversed
|
|
1356
|
+
* subdirectory, while a pattern such as `subdir/*.txt` does not match a nested relative path.
|
|
1357
|
+
*
|
|
1358
|
+
* This filter applies to synchronization methods and also to {@link Ftp2.putTree}, {@link
|
|
1359
|
+
* Ftp2.downloadTree}, and {@link Ftp2.dirTreeXml}.
|
|
1360
|
+
*/
|
|
1361
|
+
syncMustMatch: string
|
|
1362
|
+
|
|
1363
|
+
/**
|
|
1364
|
+
* Specifies a semicolon-separated list of case-insensitive wildcard patterns for files that must
|
|
1365
|
+
* be excluded from synchronization and tree operations. For example: `*.tmp;*.bak;~*`.
|
|
1366
|
+
*
|
|
1367
|
+
* Matching is performed against the file's basename, not its relative path. Exclusion is applied
|
|
1368
|
+
* in addition to {@link Ftp2.syncMustMatch}.
|
|
1369
|
+
*
|
|
1370
|
+
* This filter also applies to {@link Ftp2.putTree}, {@link Ftp2.downloadTree}, and {@link
|
|
1371
|
+
* Ftp2.dirTreeXml}.
|
|
1372
|
+
*/
|
|
1373
|
+
syncMustNotMatch: string
|
|
1374
|
+
|
|
1375
|
+
/**
|
|
1376
|
+
* Contains the preview produced by {@link Ftp2.syncRemoteTree2} when ARG4 is `true`. Each
|
|
1377
|
+
* CRLF-delimited line is an absolute local path that would be uploaded if preview mode were
|
|
1378
|
+
* disabled.
|
|
1379
|
+
*
|
|
1380
|
+
* The value is replaced at the start of each preview operation. It is empty when no files
|
|
1381
|
+
* qualify, when the preview fails, or when ARG2 is not a valid synchronization mode. A subsequent
|
|
1382
|
+
* non-preview synchronization operation also clears it. Unrelated methods do not clear the most
|
|
1383
|
+
* recent preview.
|
|
1384
|
+
*
|
|
1385
|
+
* This property is read-only.
|
|
1386
|
+
*/
|
|
1387
|
+
readonly syncPreview: string
|
|
1388
|
+
|
|
1389
|
+
/**
|
|
1390
|
+
* Contains the cipher suite negotiated for the current or most recent successful TLS connection,
|
|
1391
|
+
* such as `TLS_AES_256_GCM_SHA384`. It is empty before a TLS session has been established or
|
|
1392
|
+
* after a failed attempt that produced no negotiated suite.
|
|
1393
|
+
*
|
|
1394
|
+
* This property is read-only.
|
|
1395
|
+
*/
|
|
1396
|
+
readonly tlsCipherSuite: string
|
|
1397
|
+
|
|
1398
|
+
/**
|
|
1399
|
+
* Specifies one or more expected Subject Public Key Info (SPKI) fingerprints for TLS public-key
|
|
1400
|
+
* pinning. If none of the configured pins matches the server certificate, the TLS handshake
|
|
1401
|
+
* fails.
|
|
1402
|
+
*
|
|
1403
|
+
* Pinning supplements normal certificate-chain verification; it does not replace it. A matching
|
|
1404
|
+
* pin does not make an expired or otherwise invalid certificate acceptable. When a pin set is
|
|
1405
|
+
* configured, pin matching is enforced even if {@link Ftp2.requireSslCertVerify} is `false`.
|
|
1406
|
+
*
|
|
1407
|
+
* The format is:
|
|
1408
|
+
*
|
|
1409
|
+
* ```
|
|
1410
|
+
* hashAlgorithm, encoding, fingerprint1, fingerprint2, ...
|
|
1411
|
+
* ```
|
|
1412
|
+
*
|
|
1413
|
+
* Example:
|
|
1414
|
+
*
|
|
1415
|
+
* ```
|
|
1416
|
+
* sha256, base64, lKg1SIqyhPSK19tlPbjl8s02yChsVTDklQpkMCHvsTE=
|
|
1417
|
+
* ```
|
|
1418
|
+
*
|
|
1419
|
+
* Supported hash algorithms include `sha1`, `sha256`, `sha384`, `sha512`, `md2`, `md5`, `haval`,
|
|
1420
|
+
* `ripemd128`, `ripemd160`, `ripemd256`, and `ripemd320`. Supported encodings include `base64`,
|
|
1421
|
+
* `hex`, and other Chilkat-supported binary encodings.
|
|
1422
|
+
*
|
|
1423
|
+
* **FTP connection scope:** Pin matching is enforced for every TLS connection established by this
|
|
1424
|
+
* object, including the FTPS control connection and all TLS-protected data connections.
|
|
1425
|
+
*/
|
|
1426
|
+
tlsPinSet: string
|
|
1427
|
+
|
|
1428
|
+
/**
|
|
1429
|
+
* Contains the protocol version negotiated for the current or most recent successful TLS
|
|
1430
|
+
* connection, such as `TLS 1.2` or `TLS 1.3`. It is empty when no TLS session has been
|
|
1431
|
+
* established.
|
|
1432
|
+
*
|
|
1433
|
+
* This property is read-only.
|
|
1434
|
+
*/
|
|
1435
|
+
readonly tlsVersion: string
|
|
1436
|
+
|
|
1437
|
+
/**
|
|
1438
|
+
* Returns the current average upload rate in bytes per second. The value is updated during
|
|
1439
|
+
* synchronous and asynchronous uploads and describes the upload in progress or the most recently
|
|
1440
|
+
* completed upload. A subsequent download does not clear the retained upload rate.
|
|
1441
|
+
*
|
|
1442
|
+
* This property is read-only.
|
|
1443
|
+
*/
|
|
1444
|
+
readonly uploadTransferRate: number
|
|
1445
|
+
|
|
1446
|
+
/**
|
|
1447
|
+
* Controls whether passive data connections first use `EPSV` instead of `PASV`. The default is
|
|
1448
|
+
* `false`. This property has no effect when {@link Ftp2.passive} is `false`.
|
|
1449
|
+
*
|
|
1450
|
+
* If `EPSV` is rejected, Chilkat automatically retries the data connection using `PASV`. The
|
|
1451
|
+
* rejection does not disable `EPSV` for the remainder of the session, so a later passive data
|
|
1452
|
+
* connection may try `EPSV` again.
|
|
1453
|
+
*
|
|
1454
|
+
* {@link Ftp2.autoSetUseEpsv} can change this property automatically when server capabilities are
|
|
1455
|
+
* examined.
|
|
1456
|
+
*
|
|
1457
|
+
* **Compatibility:** `EPSV` avoids embedding an IP address in the server reply and is the
|
|
1458
|
+
* passive-mode command defined for IPv6. Some legacy FTP-aware firewalls mishandle it.
|
|
1459
|
+
*/
|
|
1460
|
+
useEpsv: boolean
|
|
1461
|
+
|
|
1462
|
+
/**
|
|
1463
|
+
* Specifies the FTP login name. The default is `anonymous`. Set it to an empty string to have
|
|
1464
|
+
* {@link Ftp2.connect} establish the connection without performing authentication; authentication
|
|
1465
|
+
* may then be handled separately with {@link Ftp2.loginAfterConnectOnly}.
|
|
1466
|
+
*/
|
|
1467
|
+
username: string
|
|
1468
|
+
|
|
1469
|
+
/**
|
|
1470
|
+
* Controls an additional keepalive measure for very long uploads and downloads. The default is
|
|
1471
|
+
* `false`. When enabled, Chilkat sends `NOOP` on the FTP control channel once per minute while a
|
|
1472
|
+
* long-running file transfer is in progress.
|
|
1473
|
+
*
|
|
1474
|
+
* This helps prevent the otherwise idle control connection from being closed by the server, a
|
|
1475
|
+
* firewall, or a NAT device while file data continues on the separate data connection.
|
|
1476
|
+
*
|
|
1477
|
+
* **FTP connection model:** File contents travel over a data connection, while FTP commands and
|
|
1478
|
+
* replies use the control connection. During a long transfer, the control connection may appear
|
|
1479
|
+
* idle even though the data connection remains active.
|
|
1480
|
+
*/
|
|
1481
|
+
largeFileMeasures: boolean
|
|
1482
|
+
|
|
1483
|
+
/**
|
|
1484
|
+
* Specifies a semicolon-separated list of case-insensitive wildcard patterns for directories that
|
|
1485
|
+
* synchronization methods are allowed to enter. For example: `src;data_*;reports`. When nonempty,
|
|
1486
|
+
* a directory must match at least one pattern before its contents are traversed.
|
|
1487
|
+
*/
|
|
1488
|
+
syncMustMatchDir: string
|
|
1489
|
+
|
|
1490
|
+
/**
|
|
1491
|
+
* Specifies a semicolon-separated list of case-insensitive wildcard patterns for directories that
|
|
1492
|
+
* synchronization methods must not enter. For example: `.git;temp;archive_*`. Exclusion is
|
|
1493
|
+
* applied in addition to `SyncMustMatchDir`.
|
|
1494
|
+
*/
|
|
1495
|
+
syncMustNotMatchDir: string
|
|
1496
|
+
|
|
1497
|
+
/**
|
|
1498
|
+
* Controls whether download synchronization creates empty remote directories on the local
|
|
1499
|
+
* filesystem. The default is `true`. When `false`, a local directory is created only when it is
|
|
1500
|
+
* needed to contain a downloaded file.
|
|
1501
|
+
*/
|
|
1502
|
+
syncCreateAllLocalDirs: boolean
|
|
1503
|
+
|
|
1504
|
+
/**
|
|
1505
|
+
* Provides a comma-separated list of compatibility options for uncommon platform or server
|
|
1506
|
+
* requirements. The default is empty and should normally remain empty.
|
|
1507
|
+
*
|
|
1508
|
+
* KeywordEffect
|
|
1509
|
+
*
|
|
1510
|
+
* | `OpenNonExclusive` | | On Windows, opens a local download file without exclusive sharing so
|
|
1511
|
+
* another process may access it while data is being written. |
|
|
1512
|
+
*
|
|
1513
|
+
* | `ProtectFromVpn` | | On Android, requests that FTP sockets bypass an active VPN. |
|
|
1514
|
+
*
|
|
1515
|
+
* | `EnableTls13` | | Compatibility switch that explicitly enables offering TLS 1.3 in builds
|
|
1516
|
+
* where it is not already enabled by policy. |
|
|
1517
|
+
*
|
|
1518
|
+
* | `DisableTls13` | | Prevents TLS 1.3 negotiation for compatibility with a problematic peer. |
|
|
1519
|
+
*
|
|
1520
|
+
* | `NoPreserveFileTime` | | Leaves downloaded files with the current local time instead of
|
|
1521
|
+
* attempting to preserve the remote modification time. |
|
|
1522
|
+
*
|
|
1523
|
+
* **Use sparingly:** These options alter low-level behavior and may be platform-specific.
|
|
1524
|
+
* Configure one only when the documented default causes a known interoperability problem.
|
|
1525
|
+
*/
|
|
1526
|
+
uncommonOptions: string
|
|
1527
|
+
|
|
1528
|
+
/**
|
|
1529
|
+
* Specifies an option string appended literally to the legacy `LIST` command, such as `-a`. For
|
|
1530
|
+
* example, setting this property to `-a` sends `LIST -a`. Chilkat does not interpret the option
|
|
1531
|
+
* locally. It has no effect when {@link Ftp2.allowMlsd} causes `MLSD` to be used or when {@link
|
|
1532
|
+
* Ftp2.preferNlst} causes `NLST` to be used.
|
|
1533
|
+
*
|
|
1534
|
+
* `LIST` options and output formats are not standardized by FTP. Many UNIX-like servers pass the
|
|
1535
|
+
* option to an underlying `ls` implementation, while other servers may reject or interpret it
|
|
1536
|
+
* differently.
|
|
1537
|
+
*/
|
|
1538
|
+
listOption: string
|
|
1539
|
+
|
|
1540
|
+
/**
|
|
1541
|
+
* Controls automatic resolution of credential values from secure operating-system storage. The
|
|
1542
|
+
* default is `false`. When enabled, supported password properties may contain a secret
|
|
1543
|
+
* specification beginning with `!!` instead of the literal password.
|
|
1544
|
+
*
|
|
1545
|
+
* ```
|
|
1546
|
+
* !![appName|]service[|domain]|username
|
|
1547
|
+
* ```
|
|
1548
|
+
*
|
|
1549
|
+
* Secret specifications are supported by {@link Ftp2.password}, {@link Ftp2.httpProxyPassword},
|
|
1550
|
+
* {@link Ftp2.proxyPassword}, and {@link Ftp2.socksPassword}. Chilkat resolves them through
|
|
1551
|
+
* Windows Credential Manager on Windows or Apple Keychain on macOS.
|
|
1552
|
+
*
|
|
1553
|
+
* **Credential handling:** This feature avoids embedding plaintext credentials in source code or
|
|
1554
|
+
* configuration. Access to the secret still depends on the permissions of the process and
|
|
1555
|
+
* operating-system account.
|
|
1556
|
+
*/
|
|
1557
|
+
enableSecrets: boolean
|
|
1558
|
+
|
|
1559
|
+
// ---- Methods ----
|
|
1560
|
+
|
|
1561
|
+
/**
|
|
1562
|
+
* Appends the contents of the local file at `localFilePath` to the remote file at
|
|
1563
|
+
* `remoteFilePath`. Both arguments are paths in their respective local and remote filesystems.
|
|
1564
|
+
*
|
|
1565
|
+
* Uses the FTP `APPE` command. On servers with normal APPE behavior, a missing remote file is
|
|
1566
|
+
* created and an existing file is extended. A failed or interrupted append can leave the bytes
|
|
1567
|
+
* already accepted by the server in place; the operation is not transactional.
|
|
1568
|
+
*
|
|
1569
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
1570
|
+
* {@link Ftp2.appendFileAsync}.
|
|
1571
|
+
*
|
|
1572
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
1573
|
+
* {@link Ftp2.lastErrorText}.
|
|
1574
|
+
*/
|
|
1575
|
+
appendFile(localFilePath: string, remoteFilePath: string): void
|
|
1576
|
+
|
|
1577
|
+
/**
|
|
1578
|
+
* Asynchronous form of {@link Ftp2.appendFile}: the same call on a native worker thread,
|
|
1579
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
1580
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
1581
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
1582
|
+
*
|
|
1583
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
1584
|
+
* {@link Ftp2.lastErrorText}.
|
|
1585
|
+
*/
|
|
1586
|
+
appendFileAsync(localFilePath: string, remoteFilePath: string): Promise<void>
|
|
1587
|
+
|
|
1588
|
+
/**
|
|
1589
|
+
* Encodes the text in `textData` using the character encoding named by `charset` and appends the
|
|
1590
|
+
* resulting bytes to the remote file at `remoteFilename`.
|
|
1591
|
+
*
|
|
1592
|
+
* This method controls the encoding of the file content. The encoding used for the remote
|
|
1593
|
+
* filename itself is controlled separately by {@link Ftp2.commandCharset}.
|
|
1594
|
+
*
|
|
1595
|
+
* Uses the FTP `APPE` command. On servers with normal APPE behavior, a missing remote file is
|
|
1596
|
+
* created and an existing file is extended. A failed or interrupted append can leave the bytes
|
|
1597
|
+
* already accepted by the server in place; the operation is not transactional.
|
|
1598
|
+
*
|
|
1599
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
1600
|
+
* {@link Ftp2.appendFileFromTextDataAsync}.
|
|
1601
|
+
*
|
|
1602
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
1603
|
+
* {@link Ftp2.lastErrorText}.
|
|
1604
|
+
*/
|
|
1605
|
+
appendFileFromTextData(remoteFilename: string, textData: string, charset: string): void
|
|
1606
|
+
|
|
1607
|
+
/**
|
|
1608
|
+
* Asynchronous form of {@link Ftp2.appendFileFromTextData}: the same call on a native worker
|
|
1609
|
+
* thread,
|
|
1610
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
1611
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
1612
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
1613
|
+
*
|
|
1614
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
1615
|
+
* {@link Ftp2.lastErrorText}.
|
|
1616
|
+
*/
|
|
1617
|
+
appendFileFromTextDataAsync(remoteFilename: string, textData: string, charset: string): Promise<void>
|
|
1618
|
+
|
|
1619
|
+
/**
|
|
1620
|
+
* Changes the current working directory on the FTP server to `remoteDirPath`. A relative path is
|
|
1621
|
+
* resolved from the current remote directory; an absolute path is interpreted according to the
|
|
1622
|
+
* server's path syntax.
|
|
1623
|
+
*
|
|
1624
|
+
* Chilkat sends one `CWD` command containing `remoteDirPath`. It does not split a multi-level
|
|
1625
|
+
* path into separate directory changes. A server may accept a path such as `a/b/c` in one command
|
|
1626
|
+
* or may require the application to change one level at a time.
|
|
1627
|
+
*
|
|
1628
|
+
* If the `CWD` command fails, the current remote directory remains unchanged.
|
|
1629
|
+
*
|
|
1630
|
+
* **Current directory:** Many Ftp2 methods operate relative to the current remote directory. Use
|
|
1631
|
+
* {@link Ftp2.getCurrentRemoteDir} to inspect it.
|
|
1632
|
+
*
|
|
1633
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
1634
|
+
* {@link Ftp2.changeRemoteDirAsync}.
|
|
1635
|
+
*
|
|
1636
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
1637
|
+
* {@link Ftp2.lastErrorText}.
|
|
1638
|
+
*/
|
|
1639
|
+
changeRemoteDir(remoteDirPath: string): void
|
|
1640
|
+
|
|
1641
|
+
/**
|
|
1642
|
+
* Asynchronous form of {@link Ftp2.changeRemoteDir}: the same call on a native worker thread,
|
|
1643
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
1644
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
1645
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
1646
|
+
*
|
|
1647
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
1648
|
+
* {@link Ftp2.lastErrorText}.
|
|
1649
|
+
*/
|
|
1650
|
+
changeRemoteDirAsync(remoteDirPath: string): Promise<void>
|
|
1651
|
+
|
|
1652
|
+
/**
|
|
1653
|
+
* Returns whether Chilkat currently considers the FTP control connection to be open. It does not
|
|
1654
|
+
* require that the session be authenticated: it can return `true` after {@link Ftp2.connectOnly}
|
|
1655
|
+
* and before {@link Ftp2.loginAfterConnectOnly}.
|
|
1656
|
+
*
|
|
1657
|
+
* This is a local connection-state check. It does not send `NOOP`, reconnect automatically, or
|
|
1658
|
+
* prove that a silently broken network path will carry the next command.
|
|
1659
|
+
*
|
|
1660
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
1661
|
+
* {@link Ftp2.checkConnectionAsync}.
|
|
1662
|
+
*/
|
|
1663
|
+
checkConnection(): boolean
|
|
1664
|
+
|
|
1665
|
+
/**
|
|
1666
|
+
* Asynchronous form of {@link Ftp2.checkConnection}: the same call on a native worker thread,
|
|
1667
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
1668
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
1669
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
1670
|
+
*/
|
|
1671
|
+
checkConnectionAsync(): Promise<boolean>
|
|
1672
|
+
|
|
1673
|
+
/**
|
|
1674
|
+
* Requests that an explicit-FTPS control connection return to clear text after authentication.
|
|
1675
|
+
* Data connections may remain protected according to {@link Ftp2.dataProtection}.
|
|
1676
|
+
*
|
|
1677
|
+
* **Security and compatibility:** This is a legacy workaround for FTP-aware NAT devices that must
|
|
1678
|
+
* inspect PORT or PASV commands. It exposes FTP commands and replies, including path names, and
|
|
1679
|
+
* should not be used unless required by the network environment.
|
|
1680
|
+
*
|
|
1681
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
1682
|
+
* {@link Ftp2.clearControlChannelAsync}.
|
|
1683
|
+
*
|
|
1684
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
1685
|
+
* {@link Ftp2.lastErrorText}.
|
|
1686
|
+
*/
|
|
1687
|
+
clearControlChannel(): void
|
|
1688
|
+
|
|
1689
|
+
/**
|
|
1690
|
+
* Asynchronous form of {@link Ftp2.clearControlChannel}: the same call on a native worker thread,
|
|
1691
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
1692
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
1693
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
1694
|
+
*
|
|
1695
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
1696
|
+
* {@link Ftp2.lastErrorText}.
|
|
1697
|
+
*/
|
|
1698
|
+
clearControlChannelAsync(): Promise<void>
|
|
1699
|
+
|
|
1700
|
+
/**
|
|
1701
|
+
* Clears the cached listing for the current remote directory. The next call to {@link
|
|
1702
|
+
* Ftp2.getDirCount} or another indexed listing method retrieves a fresh listing from the server.
|
|
1703
|
+
*
|
|
1704
|
+
* The cache is automatically invalidated when the current remote directory or {@link
|
|
1705
|
+
* Ftp2.listPattern} changes. Uploading, deleting, renaming, creating, or removing a remote item
|
|
1706
|
+
* does not automatically refresh the cache. Changing {@link Ftp2.allowMlsd}, {@link
|
|
1707
|
+
* Ftp2.preferNlst}, {@link Ftp2.listOption}, or {@link Ftp2.dirListingCharset} also leaves the
|
|
1708
|
+
* existing cache intact.
|
|
1709
|
+
*
|
|
1710
|
+
* **After a remote change:** Call this method before relying on indexed listing methods when the
|
|
1711
|
+
* application has uploaded, renamed, deleted, created, or removed an item in the current remote
|
|
1712
|
+
* directory.
|
|
1713
|
+
*/
|
|
1714
|
+
clearDirCache(): void
|
|
1715
|
+
|
|
1716
|
+
/**
|
|
1717
|
+
* Clears the in-memory FTP protocol log collected while {@link Ftp2.keepSessionLog} is enabled.
|
|
1718
|
+
*/
|
|
1719
|
+
clearSessionLog(): void
|
|
1720
|
+
|
|
1721
|
+
/**
|
|
1722
|
+
* Connects to the server specified by {@link Ftp2.hostname} and {@link Ftp2.port}, negotiates any
|
|
1723
|
+
* configured proxy and TLS layer, receives the FTP greeting, and authenticates using {@link
|
|
1724
|
+
* Ftp2.username}, {@link Ftp2.password}, and {@link Ftp2.account}.
|
|
1725
|
+
*
|
|
1726
|
+
* For implicit or explicit FTPS, TLS is established before `USER` and `PASS` are sent. Chilkat
|
|
1727
|
+
* sends `PBSZ 0` and the `PROT` command required by {@link Ftp2.dataProtection}. If the server
|
|
1728
|
+
* requires login before accepting those protection commands, Chilkat authenticates and retries
|
|
1729
|
+
* them. Rejection of a required protection command causes the connection attempt to fail.
|
|
1730
|
+
*
|
|
1731
|
+
* After login, Chilkat sets binary transfer mode with `TYPE I`, requests `SYST`, sends `FEAT`
|
|
1732
|
+
* when {@link Ftp2.autoFeat} is enabled, and may send `OPTS UTF8 ON` when UTF-8 support is
|
|
1733
|
+
* advertised and {@link Ftp2.autoOptsUtf8} is enabled. It also obtains the initial current remote
|
|
1734
|
+
* directory.
|
|
1735
|
+
*
|
|
1736
|
+
* Calling this method while already connected establishes a new FTP session and replaces the
|
|
1737
|
+
* previous session state. The current remote directory, capability state, and listing cache are
|
|
1738
|
+
* initialized for the new login.
|
|
1739
|
+
*
|
|
1740
|
+
* A failed connection attempt does not leave an underlying plain FTP connection open. To separate
|
|
1741
|
+
* connection establishment from authentication, call {@link Ftp2.connectOnly} followed by {@link
|
|
1742
|
+
* Ftp2.loginAfterConnectOnly}.
|
|
1743
|
+
*
|
|
1744
|
+
* **Failure diagnosis:** After failure, inspect {@link Ftp2.connectFailReason}, {@link
|
|
1745
|
+
* Ftp2.lastReply}, and LastErrorText. A failure before the FTP greeting is usually DNS, routing,
|
|
1746
|
+
* firewall, proxy, TCP, or implicit-TLS related; a failure after the greeting may involve
|
|
1747
|
+
* explicit TLS, data-protection setup, authentication, or server policy.
|
|
1748
|
+
*
|
|
1749
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
1750
|
+
* {@link Ftp2.connectAsync}.
|
|
1751
|
+
*
|
|
1752
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
1753
|
+
* {@link Ftp2.lastErrorText}.
|
|
1754
|
+
*/
|
|
1755
|
+
connect(): void
|
|
1756
|
+
|
|
1757
|
+
/**
|
|
1758
|
+
* Asynchronous form of {@link Ftp2.connect}: the same call on a native worker thread,
|
|
1759
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
1760
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
1761
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
1762
|
+
*
|
|
1763
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
1764
|
+
* {@link Ftp2.lastErrorText}.
|
|
1765
|
+
*/
|
|
1766
|
+
connectAsync(): Promise<void>
|
|
1767
|
+
|
|
1768
|
+
/**
|
|
1769
|
+
* Establishes the configured proxy and TCP connection, performs any configured implicit or
|
|
1770
|
+
* explicit TLS setup, and receives the FTP server greeting, but does not send `USER` or `PASS`.
|
|
1771
|
+
* Complete authentication by calling {@link Ftp2.loginAfterConnectOnly}.
|
|
1772
|
+
*
|
|
1773
|
+
* With implicit FTPS, the TLS handshake occurs immediately after the TCP connection is
|
|
1774
|
+
* established and before the greeting is received. With explicit FTPS, Chilkat first receives the
|
|
1775
|
+
* greeting, sends `AUTH TLS` or `AUTH SSL`, and then performs the TLS handshake. When the control
|
|
1776
|
+
* channel is protected, Chilkat also sends `PBSZ 0` and the `PROT` command required by {@link
|
|
1777
|
+
* Ftp2.dataProtection}, even though login has not yet occurred.
|
|
1778
|
+
*
|
|
1779
|
+
* After success, {@link Ftp2.connectVerified} is `true` and {@link Ftp2.loginVerified} remains
|
|
1780
|
+
* `false`. The current remote directory may be unavailable until login because many servers
|
|
1781
|
+
* reject `PWD` before authentication.
|
|
1782
|
+
*
|
|
1783
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
1784
|
+
* {@link Ftp2.connectOnlyAsync}.
|
|
1785
|
+
*
|
|
1786
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
1787
|
+
* {@link Ftp2.lastErrorText}.
|
|
1788
|
+
*/
|
|
1789
|
+
connectOnly(): void
|
|
1790
|
+
|
|
1791
|
+
/**
|
|
1792
|
+
* Asynchronous form of {@link Ftp2.connectOnly}: the same call on a native worker thread,
|
|
1793
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
1794
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
1795
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
1796
|
+
*
|
|
1797
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
1798
|
+
* {@link Ftp2.lastErrorText}.
|
|
1799
|
+
*/
|
|
1800
|
+
connectOnlyAsync(): Promise<void>
|
|
1801
|
+
|
|
1802
|
+
/**
|
|
1803
|
+
* Upgrades an already-connected clear FTP control channel to explicit TLS. This method is
|
|
1804
|
+
* intended for a manually staged connection created with {@link Ftp2.connectOnly} while {@link
|
|
1805
|
+
* Ftp2.ssl}, {@link Ftp2.authTls}, and {@link Ftp2.authSsl} were disabled.
|
|
1806
|
+
*
|
|
1807
|
+
* Chilkat sends `AUTH TLS`, performs the TLS handshake, sends `PBSZ 0`, and then sends the `PROT`
|
|
1808
|
+
* command required by {@link Ftp2.dataProtection}. The method does not authenticate; call {@link
|
|
1809
|
+
* Ftp2.loginAfterConnectOnly} afterward.
|
|
1810
|
+
*
|
|
1811
|
+
* Do not call it when explicit or implicit FTPS was already enabled before connecting.
|
|
1812
|
+
*
|
|
1813
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
1814
|
+
* {@link Ftp2.convertToTlsAsync}.
|
|
1815
|
+
*
|
|
1816
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
1817
|
+
* {@link Ftp2.lastErrorText}.
|
|
1818
|
+
*/
|
|
1819
|
+
convertToTls(): void
|
|
1820
|
+
|
|
1821
|
+
/**
|
|
1822
|
+
* Asynchronous form of {@link Ftp2.convertToTls}: the same call on a native worker thread,
|
|
1823
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
1824
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
1825
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
1826
|
+
*
|
|
1827
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
1828
|
+
* {@link Ftp2.lastErrorText}.
|
|
1829
|
+
*/
|
|
1830
|
+
convertToTlsAsync(): Promise<void>
|
|
1831
|
+
|
|
1832
|
+
/**
|
|
1833
|
+
* Creates and returns a textual upload plan for the local directory at `localDir`. The object
|
|
1834
|
+
* must be connected because the plan records the current absolute remote directory together with
|
|
1835
|
+
* the local source paths.
|
|
1836
|
+
*
|
|
1837
|
+
* The generated plan contains absolute local paths and absolute remote directory operations.
|
|
1838
|
+
* Treat the text as a Chilkat-generated plan for {@link Ftp2.putPlan} rather than as a portable
|
|
1839
|
+
* or stable interchange format.
|
|
1840
|
+
*
|
|
1841
|
+
* The plan records what to do, not a snapshot of file contents. If a local file changes before
|
|
1842
|
+
* `PutPlan` executes, the current file contents are uploaded.
|
|
1843
|
+
*
|
|
1844
|
+
* **Resumable bulk upload:** `PutPlan` records completed operations in a log file. Reusing the
|
|
1845
|
+
* plan and log after interruption allows already completed steps to be skipped.
|
|
1846
|
+
*
|
|
1847
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
1848
|
+
* {@link Ftp2.createPlanAsync}.
|
|
1849
|
+
*
|
|
1850
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
1851
|
+
* {@link Ftp2.lastErrorText}.
|
|
1852
|
+
*/
|
|
1853
|
+
createPlan(localDir: string): string
|
|
1854
|
+
|
|
1855
|
+
/**
|
|
1856
|
+
* Asynchronous form of {@link Ftp2.createPlan}: the same call on a native worker thread,
|
|
1857
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
1858
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
1859
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
1860
|
+
*
|
|
1861
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
1862
|
+
* {@link Ftp2.lastErrorText}.
|
|
1863
|
+
*/
|
|
1864
|
+
createPlanAsync(localDir: string): Promise<string>
|
|
1865
|
+
|
|
1866
|
+
/**
|
|
1867
|
+
* Creates the remote directory at `remoteDirPath` by sending one `MKD` command. The path is
|
|
1868
|
+
* interpreted relative to the current remote directory unless the server recognizes it as
|
|
1869
|
+
* absolute.
|
|
1870
|
+
*
|
|
1871
|
+
* Chilkat does not split a multi-level path and does not issue separate commands to create
|
|
1872
|
+
* missing parent directories. Some servers create all levels from one `MKD a/b/c` command, while
|
|
1873
|
+
* others require the parent directories to exist.
|
|
1874
|
+
*
|
|
1875
|
+
* If the directory already exists, the server commonly returns an error. A successful call does
|
|
1876
|
+
* not refresh the cached indexed listing; call {@link Ftp2.clearDirCache} when a fresh listing is
|
|
1877
|
+
* required.
|
|
1878
|
+
*
|
|
1879
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
1880
|
+
* {@link Ftp2.createRemoteDirAsync}.
|
|
1881
|
+
*
|
|
1882
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
1883
|
+
* {@link Ftp2.lastErrorText}.
|
|
1884
|
+
*/
|
|
1885
|
+
createRemoteDir(remoteDirPath: string): void
|
|
1886
|
+
|
|
1887
|
+
/**
|
|
1888
|
+
* Asynchronous form of {@link Ftp2.createRemoteDir}: the same call on a native worker thread,
|
|
1889
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
1890
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
1891
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
1892
|
+
*
|
|
1893
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
1894
|
+
* {@link Ftp2.lastErrorText}.
|
|
1895
|
+
*/
|
|
1896
|
+
createRemoteDirAsync(remoteDirPath: string): Promise<void>
|
|
1897
|
+
|
|
1898
|
+
/**
|
|
1899
|
+
* Deletes files in the current remote directory whose names match the wildcard pattern in
|
|
1900
|
+
* `remotePattern`. The method returns the number deleted, or `-1` if the operation fails.
|
|
1901
|
+
*
|
|
1902
|
+
* Chilkat sends a server-side legacy listing request such as `LIST *.txt`, parses the returned
|
|
1903
|
+
* entries, and sends `DELE` for matching files. Matching case sensitivity and wildcard behavior
|
|
1904
|
+
* therefore depend on the server. Matching directories are not removed by this method.
|
|
1905
|
+
*
|
|
1906
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
1907
|
+
* {@link Ftp2.deleteMatchingAsync}.
|
|
1908
|
+
*/
|
|
1909
|
+
deleteMatching(remotePattern: string): number
|
|
1910
|
+
|
|
1911
|
+
/**
|
|
1912
|
+
* Asynchronous form of {@link Ftp2.deleteMatching}: the same call on a native worker thread,
|
|
1913
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
1914
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
1915
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
1916
|
+
*/
|
|
1917
|
+
deleteMatchingAsync(remotePattern: string): Promise<number>
|
|
1918
|
+
|
|
1919
|
+
/**
|
|
1920
|
+
* Deletes the remote file at `remoteFilePath`. The path may be relative to the current remote
|
|
1921
|
+
* directory or absolute according to the server's path syntax.
|
|
1922
|
+
*
|
|
1923
|
+
* A successful deletion does not refresh the cached indexed listing. Call {@link
|
|
1924
|
+
* Ftp2.clearDirCache} when a fresh listing is required.
|
|
1925
|
+
*
|
|
1926
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
1927
|
+
* {@link Ftp2.deleteRemoteFileAsync}.
|
|
1928
|
+
*
|
|
1929
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
1930
|
+
* {@link Ftp2.lastErrorText}.
|
|
1931
|
+
*/
|
|
1932
|
+
deleteRemoteFile(remoteFilePath: string): void
|
|
1933
|
+
|
|
1934
|
+
/**
|
|
1935
|
+
* Asynchronous form of {@link Ftp2.deleteRemoteFile}: the same call on a native worker thread,
|
|
1936
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
1937
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
1938
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
1939
|
+
*
|
|
1940
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
1941
|
+
* {@link Ftp2.lastErrorText}.
|
|
1942
|
+
*/
|
|
1943
|
+
deleteRemoteFileAsync(remoteFilePath: string): Promise<void>
|
|
1944
|
+
|
|
1945
|
+
/**
|
|
1946
|
+
* Recursively deletes the files and subdirectories beneath the current remote directory. Child
|
|
1947
|
+
* directories are removed after their contents are deleted, but the current root directory itself
|
|
1948
|
+
* remains in place and remains the current remote directory.
|
|
1949
|
+
*
|
|
1950
|
+
* **Destructive operation:** Set the current remote directory carefully before calling this
|
|
1951
|
+
* method. The VerifyDeleteFile and VerifyDeleteDir callbacks can set their skip output to prevent
|
|
1952
|
+
* selected items from being deleted.
|
|
1953
|
+
*
|
|
1954
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
1955
|
+
* {@link Ftp2.deleteTreeAsync}.
|
|
1956
|
+
*
|
|
1957
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
1958
|
+
* {@link Ftp2.lastErrorText}.
|
|
1959
|
+
*/
|
|
1960
|
+
deleteTree(): void
|
|
1961
|
+
|
|
1962
|
+
/**
|
|
1963
|
+
* Asynchronous form of {@link Ftp2.deleteTree}: the same call on a native worker thread,
|
|
1964
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
1965
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
1966
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
1967
|
+
*
|
|
1968
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
1969
|
+
* {@link Ftp2.lastErrorText}.
|
|
1970
|
+
*/
|
|
1971
|
+
deleteTreeAsync(): Promise<void>
|
|
1972
|
+
|
|
1973
|
+
/**
|
|
1974
|
+
* Returns an XML representation of the complete remote directory tree rooted at the current
|
|
1975
|
+
* remote directory. The result uses a `<dirTree>` root, nested `<dir name="...">` elements, and
|
|
1976
|
+
* file elements containing the name, size, and available modification time.
|
|
1977
|
+
*
|
|
1978
|
+
* ```
|
|
1979
|
+
* <dirTree>
|
|
1980
|
+
* <file sz="123" dt="Mon, 27 Jul 2026 06:55:00 -0500">root.txt</file>
|
|
1981
|
+
* <dir name="subdir">
|
|
1982
|
+
* <file sz="456" dt="...">nested.txt</file>
|
|
1983
|
+
* </dir>
|
|
1984
|
+
* </dirTree>
|
|
1985
|
+
* ```
|
|
1986
|
+
*
|
|
1987
|
+
* Chilkat traverses by listing each directory and temporarily changing the server's current
|
|
1988
|
+
* directory. Empty directories are included, and the original current remote directory is
|
|
1989
|
+
* restored after successful traversal.
|
|
1990
|
+
*
|
|
1991
|
+
* Traversal is affected by {@link Ftp2.syncMustMatch}, {@link Ftp2.syncMustNotMatch}, {@link
|
|
1992
|
+
* Ftp2.syncMustMatchDir}, and {@link Ftp2.syncMustNotMatchDir}. This method retrieves metadata;
|
|
1993
|
+
* it does not download file content.
|
|
1994
|
+
*
|
|
1995
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
1996
|
+
* {@link Ftp2.dirTreeXmlAsync}.
|
|
1997
|
+
*
|
|
1998
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
1999
|
+
* {@link Ftp2.lastErrorText}.
|
|
2000
|
+
*/
|
|
2001
|
+
dirTreeXml(): string
|
|
2002
|
+
|
|
2003
|
+
/**
|
|
2004
|
+
* Asynchronous form of {@link Ftp2.dirTreeXml}: the same call on a native worker thread,
|
|
2005
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2006
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2007
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2008
|
+
*
|
|
2009
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2010
|
+
* {@link Ftp2.lastErrorText}.
|
|
2011
|
+
*/
|
|
2012
|
+
dirTreeXmlAsync(): Promise<string>
|
|
2013
|
+
|
|
2014
|
+
/**
|
|
2015
|
+
* Ends the FTP session and closes the control connection. When connected, Chilkat sends `QUIT`
|
|
2016
|
+
* when possible and then closes the socket.
|
|
2017
|
+
*
|
|
2018
|
+
* The method is idempotent. Calling it before a connection exists or calling it again after the
|
|
2019
|
+
* session is already closed succeeds without sending another FTP command. Historical properties
|
|
2020
|
+
* such as {@link Ftp2.connectVerified}, {@link Ftp2.loginVerified}, {@link Ftp2.greeting}, and
|
|
2021
|
+
* {@link Ftp2.lastReply} may retain information from the completed session; use {@link
|
|
2022
|
+
* Ftp2.checkConnection} for current connection state.
|
|
2023
|
+
*
|
|
2024
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2025
|
+
* {@link Ftp2.disconnectAsync}.
|
|
2026
|
+
*
|
|
2027
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2028
|
+
* {@link Ftp2.lastErrorText}.
|
|
2029
|
+
*/
|
|
2030
|
+
disconnect(): void
|
|
2031
|
+
|
|
2032
|
+
/**
|
|
2033
|
+
* Asynchronous form of {@link Ftp2.disconnect}: the same call on a native worker thread,
|
|
2034
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2035
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2036
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2037
|
+
*
|
|
2038
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2039
|
+
* {@link Ftp2.lastErrorText}.
|
|
2040
|
+
*/
|
|
2041
|
+
disconnectAsync(): Promise<void>
|
|
2042
|
+
|
|
2043
|
+
/**
|
|
2044
|
+
* Downloads all selected files and subdirectories beneath the current remote directory and
|
|
2045
|
+
* recreates the tree under the local directory at `localRoot`. Existing local files are
|
|
2046
|
+
* overwritten, and eligible empty remote directories are created locally.
|
|
2047
|
+
*
|
|
2048
|
+
* The file and directory filters in {@link Ftp2.syncMustMatch}, {@link Ftp2.syncMustNotMatch},
|
|
2049
|
+
* {@link Ftp2.syncMustMatchDir}, and {@link Ftp2.syncMustNotMatchDir} apply. Use {@link
|
|
2050
|
+
* Ftp2.setOldestDateStr} to exclude files older than a chosen date.
|
|
2051
|
+
*
|
|
2052
|
+
* **Windows filenames:** Remote names that contain characters invalid in a Windows filename are
|
|
2053
|
+
* sanitized when creating the local tree. Invalid characters are replaced with underscores and
|
|
2054
|
+
* trailing periods are removed. For example, `a<b>c:d|e?f*g.txt` is saved as `a_b_c_d_e_f_g.txt`.
|
|
2055
|
+
* Different remote names can potentially map to the same local path.
|
|
2056
|
+
*
|
|
2057
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2058
|
+
* {@link Ftp2.downloadTreeAsync}.
|
|
2059
|
+
*
|
|
2060
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2061
|
+
* {@link Ftp2.lastErrorText}.
|
|
2062
|
+
*/
|
|
2063
|
+
downloadTree(localRoot: string): void
|
|
2064
|
+
|
|
2065
|
+
/**
|
|
2066
|
+
* Asynchronous form of {@link Ftp2.downloadTree}: the same call on a native worker thread,
|
|
2067
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2068
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2069
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2070
|
+
*
|
|
2071
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2072
|
+
* {@link Ftp2.lastErrorText}.
|
|
2073
|
+
*/
|
|
2074
|
+
downloadTreeAsync(localRoot: string): Promise<void>
|
|
2075
|
+
|
|
2076
|
+
/**
|
|
2077
|
+
* Sends `FEAT` and returns the server's multiline capability reply. A server may return an error
|
|
2078
|
+
* when the command is unsupported or not permitted in the current session state.
|
|
2079
|
+
*
|
|
2080
|
+
* A successful explicit call performs the same capability processing as automatic `FEAT`. It can
|
|
2081
|
+
* update {@link Ftp2.hasModeZ}, listing-extension detection, UTF-8 handling through {@link
|
|
2082
|
+
* Ftp2.autoOptsUtf8}, and {@link Ftp2.useEpsv} through {@link Ftp2.autoSetUseEpsv}, even when
|
|
2083
|
+
* {@link Ftp2.autoFeat} is `false`.
|
|
2084
|
+
*
|
|
2085
|
+
* Some servers permit `FEAT` before authentication and others do not.
|
|
2086
|
+
*
|
|
2087
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2088
|
+
* {@link Ftp2.featAsync}.
|
|
2089
|
+
*
|
|
2090
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2091
|
+
* {@link Ftp2.lastErrorText}.
|
|
2092
|
+
*/
|
|
2093
|
+
feat(): string
|
|
2094
|
+
|
|
2095
|
+
/**
|
|
2096
|
+
* Asynchronous form of {@link Ftp2.feat}: the same call on a native worker thread,
|
|
2097
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2098
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2099
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2100
|
+
*
|
|
2101
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2102
|
+
* {@link Ftp2.lastErrorText}.
|
|
2103
|
+
*/
|
|
2104
|
+
featAsync(): Promise<string>
|
|
2105
|
+
|
|
2106
|
+
/**
|
|
2107
|
+
* Returns the creation time for the file or directory named by `filename` in the current remote
|
|
2108
|
+
* directory as an RFC 822 date-time string, such as `Fri, 21 Nov 1997 09:55:06 -0600`.
|
|
2109
|
+
*
|
|
2110
|
+
* `filename` must be a name, not a path. Set the current remote directory first, and ensure
|
|
2111
|
+
* {@link Ftp2.listPattern} matches the name so the item is present in the cached listing.
|
|
2112
|
+
*
|
|
2113
|
+
* **Creation times:** Many UNIX-like filesystems and FTP listing formats do not provide a file
|
|
2114
|
+
* creation time. In that case the server or parser may report the modification time instead.
|
|
2115
|
+
*
|
|
2116
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2117
|
+
* {@link Ftp2.getCreateTimeByNameStrAsync}.
|
|
2118
|
+
*
|
|
2119
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2120
|
+
* {@link Ftp2.lastErrorText}.
|
|
2121
|
+
*/
|
|
2122
|
+
getCreateTimeByNameStr(filename: string): string
|
|
2123
|
+
|
|
2124
|
+
/**
|
|
2125
|
+
* Asynchronous form of {@link Ftp2.getCreateTimeByNameStr}: the same call on a native worker
|
|
2126
|
+
* thread,
|
|
2127
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2128
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2129
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2130
|
+
*
|
|
2131
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2132
|
+
* {@link Ftp2.lastErrorText}.
|
|
2133
|
+
*/
|
|
2134
|
+
getCreateTimeByNameStrAsync(filename: string): Promise<string>
|
|
2135
|
+
|
|
2136
|
+
/**
|
|
2137
|
+
* Returns the creation time for cached directory-listing entry `index` as an RFC 822 date-time
|
|
2138
|
+
* string, such as `Fri, 21 Nov 1997 09:55:06 -0600`. `index` is a zero-based index from `0`
|
|
2139
|
+
* through one less than {@link Ftp2.getDirCount}. Creation-time availability depends on the
|
|
2140
|
+
* server and listing format.
|
|
2141
|
+
*
|
|
2142
|
+
* An invalid index or unavailable creation time is a method failure and sets `LastMethodSuccess`
|
|
2143
|
+
* to `false`.
|
|
2144
|
+
*
|
|
2145
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2146
|
+
* {@link Ftp2.getCreateTimeStrAsync}.
|
|
2147
|
+
*
|
|
2148
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2149
|
+
* {@link Ftp2.lastErrorText}.
|
|
2150
|
+
*/
|
|
2151
|
+
getCreateTimeStr(index: number): string
|
|
2152
|
+
|
|
2153
|
+
/**
|
|
2154
|
+
* Asynchronous form of {@link Ftp2.getCreateTimeStr}: the same call on a native worker thread,
|
|
2155
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2156
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2157
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2158
|
+
*
|
|
2159
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2160
|
+
* {@link Ftp2.lastErrorText}.
|
|
2161
|
+
*/
|
|
2162
|
+
getCreateTimeStrAsync(index: number): Promise<string>
|
|
2163
|
+
|
|
2164
|
+
/**
|
|
2165
|
+
* Returns the current working directory reported by the FTP server, normally by using the `PWD`
|
|
2166
|
+
* command.
|
|
2167
|
+
*
|
|
2168
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2169
|
+
* {@link Ftp2.getCurrentRemoteDirAsync}.
|
|
2170
|
+
*
|
|
2171
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2172
|
+
* {@link Ftp2.lastErrorText}.
|
|
2173
|
+
*/
|
|
2174
|
+
getCurrentRemoteDir(): string
|
|
2175
|
+
|
|
2176
|
+
/**
|
|
2177
|
+
* Asynchronous form of {@link Ftp2.getCurrentRemoteDir}: the same call on a native worker thread,
|
|
2178
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2179
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2180
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2181
|
+
*
|
|
2182
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2183
|
+
* {@link Ftp2.lastErrorText}.
|
|
2184
|
+
*/
|
|
2185
|
+
getCurrentRemoteDirAsync(): Promise<string>
|
|
2186
|
+
|
|
2187
|
+
/**
|
|
2188
|
+
* Returns the number of files and directories in the cached listing of the current remote
|
|
2189
|
+
* directory after applying the case-insensitive {@link Ftp2.listPattern}. On the first call,
|
|
2190
|
+
* Chilkat obtains and caches the full directory listing and then applies the pattern locally.
|
|
2191
|
+
* Repeated indexed listing calls use the cache until it is invalidated. Returns `-1` if the
|
|
2192
|
+
* listing cannot be obtained or parsed.
|
|
2193
|
+
*
|
|
2194
|
+
* The cache is not automatically refreshed by uploads, deletions, renames, directory
|
|
2195
|
+
* creation/removal, raw commands, or changes to the listing-command selection properties. Call
|
|
2196
|
+
* {@link Ftp2.clearDirCache} when the server contents or desired listing format may have changed.
|
|
2197
|
+
*
|
|
2198
|
+
* **Directory listings use a data connection:** An FTP listing is transferred over a separate
|
|
2199
|
+
* data connection, just like an upload or download. If this method stalls, investigate
|
|
2200
|
+
* passive/active mode, NAT, firewall rules, and the data-connection details in LastErrorText.
|
|
2201
|
+
*
|
|
2202
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2203
|
+
* {@link Ftp2.getDirCountAsync}.
|
|
2204
|
+
*/
|
|
2205
|
+
getDirCount(): number
|
|
2206
|
+
|
|
2207
|
+
/**
|
|
2208
|
+
* Asynchronous form of {@link Ftp2.getDirCount}: the same call on a native worker thread,
|
|
2209
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2210
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2211
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2212
|
+
*/
|
|
2213
|
+
getDirCountAsync(): Promise<number>
|
|
2214
|
+
|
|
2215
|
+
/**
|
|
2216
|
+
* Downloads the remote file at `remoteFilePath` to the local filesystem path at `localFilePath`.
|
|
2217
|
+
* The local parent directory must already exist; this method does not create missing local
|
|
2218
|
+
* directories.
|
|
2219
|
+
*
|
|
2220
|
+
* When not resuming, the downloaded file replaces an existing destination after the server
|
|
2221
|
+
* accepts the transfer. If the server rejects the request before transfer begins, such as when
|
|
2222
|
+
* the remote file does not exist, an existing destination file is preserved.
|
|
2223
|
+
*
|
|
2224
|
+
* Use {@link Ftp2.restartNext} immediately before this call to resume from the existing local
|
|
2225
|
+
* file length. {@link Ftp2.readTimeout} controls data-channel inactivity. If a transfer fails
|
|
2226
|
+
* after receiving some data, inspect {@link Ftp2.partialTransfer}; completed bytes are not rolled
|
|
2227
|
+
* back.
|
|
2228
|
+
*
|
|
2229
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2230
|
+
* {@link Ftp2.getFileAsync}.
|
|
2231
|
+
*
|
|
2232
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2233
|
+
* {@link Ftp2.lastErrorText}.
|
|
2234
|
+
*/
|
|
2235
|
+
getFile(remoteFilePath: string, localFilePath: string): void
|
|
2236
|
+
|
|
2237
|
+
/**
|
|
2238
|
+
* Asynchronous form of {@link Ftp2.getFile}: the same call on a native worker thread,
|
|
2239
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2240
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2241
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2242
|
+
*
|
|
2243
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2244
|
+
* {@link Ftp2.lastErrorText}.
|
|
2245
|
+
*/
|
|
2246
|
+
getFileAsync(remoteFilePath: string, localFilePath: string): Promise<void>
|
|
2247
|
+
|
|
2248
|
+
/**
|
|
2249
|
+
* Returns the name of cached directory-listing entry `index`. `index` is a zero-based index from
|
|
2250
|
+
* `0` through one less than {@link Ftp2.getDirCount}. The returned value is the name from the
|
|
2251
|
+
* listing, not necessarily a full remote path.
|
|
2252
|
+
*
|
|
2253
|
+
* An out-of-range or negative index is a method failure and sets `LastMethodSuccess` to `false`.
|
|
2254
|
+
*
|
|
2255
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2256
|
+
* {@link Ftp2.getFilenameAsync}.
|
|
2257
|
+
*
|
|
2258
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2259
|
+
* {@link Ftp2.lastErrorText}.
|
|
2260
|
+
*/
|
|
2261
|
+
getFilename(index: number): string
|
|
2262
|
+
|
|
2263
|
+
/**
|
|
2264
|
+
* Asynchronous form of {@link Ftp2.getFilename}: the same call on a native worker thread,
|
|
2265
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2266
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2267
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2268
|
+
*
|
|
2269
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2270
|
+
* {@link Ftp2.lastErrorText}.
|
|
2271
|
+
*/
|
|
2272
|
+
getFilenameAsync(index: number): Promise<string>
|
|
2273
|
+
|
|
2274
|
+
/**
|
|
2275
|
+
* Returns the group name or identifier for cached directory-listing entry `index`. The value is
|
|
2276
|
+
* empty when the server does not provide group metadata.
|
|
2277
|
+
*
|
|
2278
|
+
* **MLSD metadata:** MLSD commonly provides accurate size and time facts but often omits owner
|
|
2279
|
+
* and group. On a UNIX-like server, disabling {@link Ftp2.allowMlsd} may expose owner/group
|
|
2280
|
+
* through LIST, at the cost of less standardized and potentially less accurate listing data.
|
|
2281
|
+
*
|
|
2282
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2283
|
+
* {@link Ftp2.getGroupAsync}.
|
|
2284
|
+
*
|
|
2285
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2286
|
+
* {@link Ftp2.lastErrorText}.
|
|
2287
|
+
*/
|
|
2288
|
+
getGroup(index: number): string
|
|
2289
|
+
|
|
2290
|
+
/**
|
|
2291
|
+
* Asynchronous form of {@link Ftp2.getGroup}: the same call on a native worker thread,
|
|
2292
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2293
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2294
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2295
|
+
*
|
|
2296
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2297
|
+
* {@link Ftp2.lastErrorText}.
|
|
2298
|
+
*/
|
|
2299
|
+
getGroupAsync(index: number): Promise<string>
|
|
2300
|
+
|
|
2301
|
+
/**
|
|
2302
|
+
* Returns `true` when cached directory-listing entry `index` is identified as a directory.
|
|
2303
|
+
* `index` is a zero-based index into the current cached listing.
|
|
2304
|
+
*
|
|
2305
|
+
* For an invalid index the method returns `false` and sets `LastMethodSuccess` to `false`. Check
|
|
2306
|
+
* that property when `false` must be distinguished from a valid non-directory entry.
|
|
2307
|
+
*
|
|
2308
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2309
|
+
* {@link Ftp2.getIsDirectoryAsync}.
|
|
2310
|
+
*/
|
|
2311
|
+
getIsDirectory(index: number): boolean
|
|
2312
|
+
|
|
2313
|
+
/**
|
|
2314
|
+
* Asynchronous form of {@link Ftp2.getIsDirectory}: the same call on a native worker thread,
|
|
2315
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2316
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2317
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2318
|
+
*/
|
|
2319
|
+
getIsDirectoryAsync(index: number): Promise<boolean>
|
|
2320
|
+
|
|
2321
|
+
/**
|
|
2322
|
+
* Returns `true` when cached directory-listing entry `index` is identified as a symbolic link.
|
|
2323
|
+
* This information is available only when the server's listing format reports it.
|
|
2324
|
+
*
|
|
2325
|
+
* For an invalid index the method returns `false` and sets `LastMethodSuccess` to `false`. A
|
|
2326
|
+
* valid `false` result can also mean the entry is not a link or the listing did not provide link
|
|
2327
|
+
* metadata.
|
|
2328
|
+
*
|
|
2329
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2330
|
+
* {@link Ftp2.getIsSymbolicLinkAsync}.
|
|
2331
|
+
*/
|
|
2332
|
+
getIsSymbolicLink(index: number): boolean
|
|
2333
|
+
|
|
2334
|
+
/**
|
|
2335
|
+
* Asynchronous form of {@link Ftp2.getIsSymbolicLink}: the same call on a native worker thread,
|
|
2336
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2337
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2338
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2339
|
+
*/
|
|
2340
|
+
getIsSymbolicLinkAsync(index: number): Promise<boolean>
|
|
2341
|
+
|
|
2342
|
+
/**
|
|
2343
|
+
* Returns the last-modified time for the item named by `filename` in the current remote directory
|
|
2344
|
+
* as an RFC 822 date-time string, such as `Fri, 21 Nov 1997 09:55:06 -0600`.
|
|
2345
|
+
*
|
|
2346
|
+
* `filename` must be a name, not a path. Set the current remote directory first, and ensure
|
|
2347
|
+
* {@link Ftp2.listPattern} matches the name.
|
|
2348
|
+
*
|
|
2349
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2350
|
+
* {@link Ftp2.getLastModifiedTimeByNameStrAsync}.
|
|
2351
|
+
*
|
|
2352
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2353
|
+
* {@link Ftp2.lastErrorText}.
|
|
2354
|
+
*/
|
|
2355
|
+
getLastModifiedTimeByNameStr(filename: string): string
|
|
2356
|
+
|
|
2357
|
+
/**
|
|
2358
|
+
* Asynchronous form of {@link Ftp2.getLastModifiedTimeByNameStr}: the same call on a native
|
|
2359
|
+
* worker thread,
|
|
2360
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2361
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2362
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2363
|
+
*
|
|
2364
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2365
|
+
* {@link Ftp2.lastErrorText}.
|
|
2366
|
+
*/
|
|
2367
|
+
getLastModifiedTimeByNameStrAsync(filename: string): Promise<string>
|
|
2368
|
+
|
|
2369
|
+
/**
|
|
2370
|
+
* Returns the last-modified time for cached directory-listing entry `index` as an RFC 822
|
|
2371
|
+
* date-time string, such as `Fri, 21 Nov 1997 09:55:06 -0600`. `index` is a zero-based index into
|
|
2372
|
+
* the current cached listing.
|
|
2373
|
+
*
|
|
2374
|
+
* An invalid index or unavailable timestamp is a method failure and sets `LastMethodSuccess` to
|
|
2375
|
+
* `false`.
|
|
2376
|
+
*
|
|
2377
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2378
|
+
* {@link Ftp2.getLastModifiedTimeStrAsync}.
|
|
2379
|
+
*
|
|
2380
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2381
|
+
* {@link Ftp2.lastErrorText}.
|
|
2382
|
+
*/
|
|
2383
|
+
getLastModifiedTimeStr(index: number): string
|
|
2384
|
+
|
|
2385
|
+
/**
|
|
2386
|
+
* Asynchronous form of {@link Ftp2.getLastModifiedTimeStr}: the same call on a native worker
|
|
2387
|
+
* thread,
|
|
2388
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2389
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2390
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2391
|
+
*
|
|
2392
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2393
|
+
* {@link Ftp2.lastErrorText}.
|
|
2394
|
+
*/
|
|
2395
|
+
getLastModifiedTimeStrAsync(index: number): Promise<string>
|
|
2396
|
+
|
|
2397
|
+
/**
|
|
2398
|
+
* Returns the owner name or identifier for cached directory-listing entry `index`. The value is
|
|
2399
|
+
* empty when a valid entry has no owner metadata. An invalid index is a method failure and sets
|
|
2400
|
+
* `LastMethodSuccess` to `false`.
|
|
2401
|
+
*
|
|
2402
|
+
* **MLSD metadata:** MLSD commonly provides accurate size and time facts but often omits owner
|
|
2403
|
+
* and group. On a UNIX-like server, disabling {@link Ftp2.allowMlsd} may expose owner/group
|
|
2404
|
+
* through LIST, at the cost of less standardized and potentially less accurate listing data.
|
|
2405
|
+
*
|
|
2406
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2407
|
+
* {@link Ftp2.getOwnerAsync}.
|
|
2408
|
+
*
|
|
2409
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2410
|
+
* {@link Ftp2.lastErrorText}.
|
|
2411
|
+
*/
|
|
2412
|
+
getOwner(index: number): string
|
|
2413
|
+
|
|
2414
|
+
/**
|
|
2415
|
+
* Asynchronous form of {@link Ftp2.getOwner}: the same call on a native worker thread,
|
|
2416
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2417
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2418
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2419
|
+
*
|
|
2420
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2421
|
+
* {@link Ftp2.lastErrorText}.
|
|
2422
|
+
*/
|
|
2423
|
+
getOwnerAsync(index: number): Promise<string>
|
|
2424
|
+
|
|
2425
|
+
/**
|
|
2426
|
+
* Returns the format identifier for the permissions string available for cached listing entry
|
|
2427
|
+
* `index`. The value is empty when no permissions are available.
|
|
2428
|
+
*
|
|
2429
|
+
* ValueFormat
|
|
2430
|
+
*
|
|
2431
|
+
* | `mlsd` | | The RFC 3659 `perm` fact. |
|
|
2432
|
+
*
|
|
2433
|
+
* | `unix` | | A UNIX/POSIX-style mode string. |
|
|
2434
|
+
*
|
|
2435
|
+
* | `netware` | | NetWare trustee rights. |
|
|
2436
|
+
*
|
|
2437
|
+
* | `openvms` | | An OpenVMS protection string. |
|
|
2438
|
+
*
|
|
2439
|
+
* | `batchStatusFlags` | | Connect:Enterprise batch status flags. |
|
|
2440
|
+
*
|
|
2441
|
+
* Use {@link Ftp2.getPermissions} to obtain the corresponding value.
|
|
2442
|
+
*
|
|
2443
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2444
|
+
* {@link Ftp2.getPermTypeAsync}.
|
|
2445
|
+
*
|
|
2446
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2447
|
+
* {@link Ftp2.lastErrorText}.
|
|
2448
|
+
*/
|
|
2449
|
+
getPermType(index: number): string
|
|
2450
|
+
|
|
2451
|
+
/**
|
|
2452
|
+
* Asynchronous form of {@link Ftp2.getPermType}: the same call on a native worker thread,
|
|
2453
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2454
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2455
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2456
|
+
*
|
|
2457
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2458
|
+
* {@link Ftp2.lastErrorText}.
|
|
2459
|
+
*/
|
|
2460
|
+
getPermTypeAsync(index: number): Promise<string>
|
|
2461
|
+
|
|
2462
|
+
/**
|
|
2463
|
+
* Returns the permissions or status string for cached directory-listing entry `index`. The value
|
|
2464
|
+
* is empty when the server provides no such metadata. Use {@link Ftp2.getPermType} to determine
|
|
2465
|
+
* how to interpret the result.
|
|
2466
|
+
*
|
|
2467
|
+
* Permission typeReturned information
|
|
2468
|
+
*
|
|
2469
|
+
* | `mlsd` | | The RFC 3659 `perm` fact. Letters describe FTP operations available to the
|
|
2470
|
+
* logged-in user, such as append, create, delete, enter, list, rename, or write. |
|
|
2471
|
+
*
|
|
2472
|
+
* | `unix` | | A UNIX-style string such as `rwxr-xr-x`. |
|
|
2473
|
+
*
|
|
2474
|
+
* | `netware` | | NetWare trustee-right letters such as read, write, create, erase, modify, file
|
|
2475
|
+
* scan, access control, and supervisor. |
|
|
2476
|
+
*
|
|
2477
|
+
* | `openvms` | | An OpenVMS protection string such as `(RWED,RWED,R,R)`. |
|
|
2478
|
+
*
|
|
2479
|
+
* | `batchStatusFlags` | | A fixed-position Connect:Enterprise batch-status string such as
|
|
2480
|
+
* `-CR--M----`. |
|
|
2481
|
+
*
|
|
2482
|
+
* **MLSD perm is not a file mode:** The MLSD perm fact describes operations the current FTP
|
|
2483
|
+
* account may perform. It is not equivalent to UNIX owner/group/other permission bits.
|
|
2484
|
+
*
|
|
2485
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2486
|
+
* {@link Ftp2.getPermissionsAsync}.
|
|
2487
|
+
*
|
|
2488
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2489
|
+
* {@link Ftp2.lastErrorText}.
|
|
2490
|
+
*/
|
|
2491
|
+
getPermissions(index: number): string
|
|
2492
|
+
|
|
2493
|
+
/**
|
|
2494
|
+
* Asynchronous form of {@link Ftp2.getPermissions}: the same call on a native worker thread,
|
|
2495
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2496
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2497
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2498
|
+
*
|
|
2499
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2500
|
+
* {@link Ftp2.lastErrorText}.
|
|
2501
|
+
*/
|
|
2502
|
+
getPermissionsAsync(index: number): Promise<string>
|
|
2503
|
+
|
|
2504
|
+
/**
|
|
2505
|
+
* Downloads the remote file at `remoteFilename`, decodes the bytes using the character encoding
|
|
2506
|
+
* named by `charset`, and returns the text. A byte-order mark for the selected encoding is
|
|
2507
|
+
* recognized and omitted from the returned text.
|
|
2508
|
+
*
|
|
2509
|
+
* This method controls file-content decoding. The encoding used for the remote path itself is
|
|
2510
|
+
* controlled by {@link Ftp2.commandCharset}.
|
|
2511
|
+
*
|
|
2512
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2513
|
+
* {@link Ftp2.getRemoteFileTextCAsync}.
|
|
2514
|
+
*
|
|
2515
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2516
|
+
* {@link Ftp2.lastErrorText}.
|
|
2517
|
+
*/
|
|
2518
|
+
getRemoteFileTextC(remoteFilename: string, charset: string): string
|
|
2519
|
+
|
|
2520
|
+
/**
|
|
2521
|
+
* Asynchronous form of {@link Ftp2.getRemoteFileTextC}: the same call on a native worker thread,
|
|
2522
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2523
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2524
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2525
|
+
*
|
|
2526
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2527
|
+
* {@link Ftp2.lastErrorText}.
|
|
2528
|
+
*/
|
|
2529
|
+
getRemoteFileTextCAsync(remoteFilename: string, charset: string): Promise<string>
|
|
2530
|
+
|
|
2531
|
+
/**
|
|
2532
|
+
* Downloads the remote file at `remoteFilename` and returns its contents decoded using the ANSI
|
|
2533
|
+
* character encoding. Use {@link Ftp2.getRemoteFileTextC} when the file uses UTF-8 or another
|
|
2534
|
+
* explicitly known encoding.
|
|
2535
|
+
*
|
|
2536
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2537
|
+
* {@link Ftp2.getRemoteFileTextDataAsync}.
|
|
2538
|
+
*
|
|
2539
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2540
|
+
* {@link Ftp2.lastErrorText}.
|
|
2541
|
+
*/
|
|
2542
|
+
getRemoteFileTextData(remoteFilename: string): string
|
|
2543
|
+
|
|
2544
|
+
/**
|
|
2545
|
+
* Asynchronous form of {@link Ftp2.getRemoteFileTextData}: the same call on a native worker
|
|
2546
|
+
* thread,
|
|
2547
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2548
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2549
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2550
|
+
*
|
|
2551
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2552
|
+
* {@link Ftp2.lastErrorText}.
|
|
2553
|
+
*/
|
|
2554
|
+
getRemoteFileTextDataAsync(remoteFilename: string): Promise<string>
|
|
2555
|
+
|
|
2556
|
+
/**
|
|
2557
|
+
* Returns the size in bytes of cached directory-listing entry `index` as a 32-bit integer. Use
|
|
2558
|
+
* {@link Ftp2.getSize64} for large files.
|
|
2559
|
+
*
|
|
2560
|
+
* Returns `-1` when `index` is invalid or the size is unavailable. Because this method returns an
|
|
2561
|
+
* integer, do not use `LastMethodSuccess` to interpret the result.
|
|
2562
|
+
*
|
|
2563
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2564
|
+
* {@link Ftp2.getSizeAsync}.
|
|
2565
|
+
*/
|
|
2566
|
+
getSize(index: number): number
|
|
2567
|
+
|
|
2568
|
+
/**
|
|
2569
|
+
* Asynchronous form of {@link Ftp2.getSize}: the same call on a native worker thread,
|
|
2570
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2571
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2572
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2573
|
+
*/
|
|
2574
|
+
getSizeAsync(index: number): Promise<number>
|
|
2575
|
+
|
|
2576
|
+
/**
|
|
2577
|
+
* Returns the size in bytes of cached directory-listing entry `index` as a 64-bit integer.
|
|
2578
|
+
* Returns `-1` when `index` is invalid or the size is unavailable.
|
|
2579
|
+
*
|
|
2580
|
+
* Because this method returns an integer, do not use `LastMethodSuccess` to interpret the result.
|
|
2581
|
+
*
|
|
2582
|
+
* 64-bit integers are passed as JavaScript numbers (exact up to 2^53).
|
|
2583
|
+
*
|
|
2584
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2585
|
+
* {@link Ftp2.getSize64Async}.
|
|
2586
|
+
*/
|
|
2587
|
+
getSize64(index: number): number
|
|
2588
|
+
|
|
2589
|
+
/**
|
|
2590
|
+
* Asynchronous form of {@link Ftp2.getSize64}: the same call on a native worker thread,
|
|
2591
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2592
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2593
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2594
|
+
*/
|
|
2595
|
+
getSize64Async(index: number): Promise<number>
|
|
2596
|
+
|
|
2597
|
+
/**
|
|
2598
|
+
* Returns the size in bytes of the file named by `filename` in the current remote directory as a
|
|
2599
|
+
* 32-bit integer. Returns `-1` when the file is not found or the size cannot be obtained. Use
|
|
2600
|
+
* {@link Ftp2.getSizeByName64} for large files.
|
|
2601
|
+
*
|
|
2602
|
+
* `filename` must be a name, not a path. Set the current remote directory first, and ensure
|
|
2603
|
+
* {@link Ftp2.listPattern} matches the name.
|
|
2604
|
+
*
|
|
2605
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2606
|
+
* {@link Ftp2.getSizeByNameAsync}.
|
|
2607
|
+
*/
|
|
2608
|
+
getSizeByName(filename: string): number
|
|
2609
|
+
|
|
2610
|
+
/**
|
|
2611
|
+
* Asynchronous form of {@link Ftp2.getSizeByName}: the same call on a native worker thread,
|
|
2612
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2613
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2614
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2615
|
+
*/
|
|
2616
|
+
getSizeByNameAsync(filename: string): Promise<number>
|
|
2617
|
+
|
|
2618
|
+
/**
|
|
2619
|
+
* Sends a `SIZE` command for `filename` and returns the remote size in bytes as a 64-bit integer.
|
|
2620
|
+
* Returns `-1` when the server rejects the command, the item is not found, or the size is
|
|
2621
|
+
* unavailable.
|
|
2622
|
+
*
|
|
2623
|
+
* This method does not depend on the indexed directory cache or {@link Ftp2.listPattern}.
|
|
2624
|
+
* Filename and path case sensitivity are determined by the FTP server and its filesystem.
|
|
2625
|
+
*
|
|
2626
|
+
* 64-bit integers are passed as JavaScript numbers (exact up to 2^53).
|
|
2627
|
+
*
|
|
2628
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2629
|
+
* {@link Ftp2.getSizeByName64Async}.
|
|
2630
|
+
*/
|
|
2631
|
+
getSizeByName64(filename: string): number
|
|
2632
|
+
|
|
2633
|
+
/**
|
|
2634
|
+
* Asynchronous form of {@link Ftp2.getSizeByName64}: the same call on a native worker thread,
|
|
2635
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2636
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2637
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2638
|
+
*/
|
|
2639
|
+
getSizeByName64Async(filename: string): Promise<number>
|
|
2640
|
+
|
|
2641
|
+
/**
|
|
2642
|
+
* Returns the size in bytes of cached directory-listing entry `index` as a decimal string. This
|
|
2643
|
+
* form avoids integer-size limits in languages without a convenient 64-bit type.
|
|
2644
|
+
*
|
|
2645
|
+
* An out-of-range or negative index is a method failure and sets `LastMethodSuccess` to `false`.
|
|
2646
|
+
*
|
|
2647
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2648
|
+
* {@link Ftp2.getSizeStrAsync}.
|
|
2649
|
+
*
|
|
2650
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2651
|
+
* {@link Ftp2.lastErrorText}.
|
|
2652
|
+
*/
|
|
2653
|
+
getSizeStr(index: number): string
|
|
2654
|
+
|
|
2655
|
+
/**
|
|
2656
|
+
* Asynchronous form of {@link Ftp2.getSizeStr}: the same call on a native worker thread,
|
|
2657
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2658
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2659
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2660
|
+
*
|
|
2661
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2662
|
+
* {@link Ftp2.lastErrorText}.
|
|
2663
|
+
*/
|
|
2664
|
+
getSizeStrAsync(index: number): Promise<string>
|
|
2665
|
+
|
|
2666
|
+
/**
|
|
2667
|
+
* Returns the size in bytes of the file named by `filename` in the current remote directory as a
|
|
2668
|
+
* decimal string. This form avoids language-specific integer limits.
|
|
2669
|
+
*
|
|
2670
|
+
* `filename` must be a name, not a path. Set the current remote directory first, and ensure
|
|
2671
|
+
* {@link Ftp2.listPattern} matches the name.
|
|
2672
|
+
*
|
|
2673
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2674
|
+
* {@link Ftp2.getSizeStrByNameAsync}.
|
|
2675
|
+
*
|
|
2676
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2677
|
+
* {@link Ftp2.lastErrorText}.
|
|
2678
|
+
*/
|
|
2679
|
+
getSizeStrByName(filename: string): string
|
|
2680
|
+
|
|
2681
|
+
/**
|
|
2682
|
+
* Asynchronous form of {@link Ftp2.getSizeStrByName}: the same call on a native worker thread,
|
|
2683
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2684
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2685
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2686
|
+
*
|
|
2687
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2688
|
+
* {@link Ftp2.lastErrorText}.
|
|
2689
|
+
*/
|
|
2690
|
+
getSizeStrByNameAsync(filename: string): Promise<string>
|
|
2691
|
+
|
|
2692
|
+
/**
|
|
2693
|
+
* Sends a legacy `LIST` request and returns the server's raw textual listing. `pattern` is
|
|
2694
|
+
* appended literally as a server-side listing argument. An empty `pattern` lists the current
|
|
2695
|
+
* remote directory; a value such as `*.txt` sends a command such as `LIST *.txt`.
|
|
2696
|
+
*
|
|
2697
|
+
* {@link Ftp2.listOption} is also appended literally before `pattern`. For example, `ListOption =
|
|
2698
|
+
* "-a"` and `pattern` equal to `*.txt` send `LIST -a *.txt`.
|
|
2699
|
+
*
|
|
2700
|
+
* This method does not use `MLSD`, `NLST`, {@link Ftp2.listPattern}, or the indexed directory
|
|
2701
|
+
* cache. Wildcard matching and case sensitivity are determined by the server. The format of
|
|
2702
|
+
* `LIST` output is server-specific.
|
|
2703
|
+
*
|
|
2704
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2705
|
+
* {@link Ftp2.getTextDirListingAsync}.
|
|
2706
|
+
*
|
|
2707
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2708
|
+
* {@link Ftp2.lastErrorText}.
|
|
2709
|
+
*/
|
|
2710
|
+
getTextDirListing(pattern: string): string
|
|
2711
|
+
|
|
2712
|
+
/**
|
|
2713
|
+
* Asynchronous form of {@link Ftp2.getTextDirListing}: the same call on a native worker thread,
|
|
2714
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2715
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2716
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2717
|
+
*
|
|
2718
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2719
|
+
* {@link Ftp2.lastErrorText}.
|
|
2720
|
+
*/
|
|
2721
|
+
getTextDirListingAsync(pattern: string): Promise<string>
|
|
2722
|
+
|
|
2723
|
+
/**
|
|
2724
|
+
* Retrieves a directory listing for `pattern` and returns parsed entries as an XML document
|
|
2725
|
+
* rooted at `<remoteDir>`. Files are represented by `<file>` elements containing `<name>`,
|
|
2726
|
+
* `<size>`, and available time elements; directories are represented by `<dir>` elements.
|
|
2727
|
+
*
|
|
2728
|
+
* ```
|
|
2729
|
+
* <remoteDir>
|
|
2730
|
+
* <file>
|
|
2731
|
+
* <name>report.txt</name>
|
|
2732
|
+
* <size>1234</size>
|
|
2733
|
+
* <lastModTime full="20260727-065541" ... />
|
|
2734
|
+
* </file>
|
|
2735
|
+
* <dir lastModTime="20260727-065542" ...>archive</dir>
|
|
2736
|
+
* </remoteDir>
|
|
2737
|
+
* ```
|
|
2738
|
+
*
|
|
2739
|
+
* When `pattern` is empty, Chilkat uses the normal listing selection: `MLSD` when allowed and
|
|
2740
|
+
* advertised, otherwise `LIST` or `NLST` according to the listing properties. When `pattern` is
|
|
2741
|
+
* nonempty, Chilkat sends `LIST ARG1`, so wildcard matching and case sensitivity are
|
|
2742
|
+
* server-dependent.
|
|
2743
|
+
*
|
|
2744
|
+
* This method does not use or populate the indexed directory cache and {@link Ftp2.listPattern}
|
|
2745
|
+
* is not applied.
|
|
2746
|
+
*
|
|
2747
|
+
* **Timestamp interpretation:** Returned last-modified values are expressed in the client's local
|
|
2748
|
+
* time. `MLSD` timestamps are standardized as UTC, while legacy `LIST` timestamps may omit
|
|
2749
|
+
* timezone and seconds, so exact conversion can be impossible when the server timezone is
|
|
2750
|
+
* unknown.
|
|
2751
|
+
*
|
|
2752
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2753
|
+
* {@link Ftp2.getXmlDirListingAsync}.
|
|
2754
|
+
*
|
|
2755
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2756
|
+
* {@link Ftp2.lastErrorText}.
|
|
2757
|
+
*/
|
|
2758
|
+
getXmlDirListing(pattern: string): string
|
|
2759
|
+
|
|
2760
|
+
/**
|
|
2761
|
+
* Asynchronous form of {@link Ftp2.getXmlDirListing}: the same call on a native worker thread,
|
|
2762
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2763
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2764
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2765
|
+
*
|
|
2766
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2767
|
+
* {@link Ftp2.lastErrorText}.
|
|
2768
|
+
*/
|
|
2769
|
+
getXmlDirListingAsync(pattern: string): Promise<string>
|
|
2770
|
+
|
|
2771
|
+
/**
|
|
2772
|
+
* Uploads the local file at `localPath` to the remote path at `remotePath` as a sequence of data
|
|
2773
|
+
* transfers, each containing up to `chunkSize` bytes. The first chunk is sent with `STOR`, which
|
|
2774
|
+
* creates or replaces `remotePath`, and each later chunk is sent with `APPE`.
|
|
2775
|
+
*
|
|
2776
|
+
* This method addresses a specific FTP failure mode: during one very long data transfer, the
|
|
2777
|
+
* control connection is idle and may be silently dropped by a firewall, NAT device, or server
|
|
2778
|
+
* timeout. Completing the upload as multiple shorter transfers periodically uses the control
|
|
2779
|
+
* channel.
|
|
2780
|
+
*
|
|
2781
|
+
* `chunkSize` is the in-memory chunk size. Larger chunks reduce FTP command overhead but consume
|
|
2782
|
+
* more memory and leave the control channel idle longer; smaller chunks have the opposite
|
|
2783
|
+
* tradeoff. Transfer counters represent the complete source file, not only the final chunk.
|
|
2784
|
+
*
|
|
2785
|
+
* **Alternative:** For ordinary large files, first consider enabling {@link
|
|
2786
|
+
* Ftp2.largeFileMeasures}. Use chunked upload when infrastructure still drops the idle control
|
|
2787
|
+
* session.
|
|
2788
|
+
*
|
|
2789
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2790
|
+
* {@link Ftp2.largeFileUploadAsync}.
|
|
2791
|
+
*
|
|
2792
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2793
|
+
* {@link Ftp2.lastErrorText}.
|
|
2794
|
+
*/
|
|
2795
|
+
largeFileUpload(localPath: string, remotePath: string, chunkSize: number): void
|
|
2796
|
+
|
|
2797
|
+
/**
|
|
2798
|
+
* Asynchronous form of {@link Ftp2.largeFileUpload}: the same call on a native worker thread,
|
|
2799
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2800
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2801
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2802
|
+
*
|
|
2803
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2804
|
+
* {@link Ftp2.lastErrorText}.
|
|
2805
|
+
*/
|
|
2806
|
+
largeFileUploadAsync(localPath: string, remotePath: string, chunkSize: number): Promise<void>
|
|
2807
|
+
|
|
2808
|
+
/**
|
|
2809
|
+
* Authenticates an FTP control connection previously established by {@link Ftp2.connectOnly}.
|
|
2810
|
+
* Chilkat sends `USER`, `PASS`, and `ACCT` when required, then performs the normal post-login
|
|
2811
|
+
* initialization such as `TYPE I`, `SYST`, capability discovery, and UTF-8 setup.
|
|
2812
|
+
*
|
|
2813
|
+
* If authentication is rejected, the same connection cannot be retried by simply changing the
|
|
2814
|
+
* credentials and calling this method again. Disconnect or reconnect with {@link
|
|
2815
|
+
* Ftp2.connectOnly} before attempting another login.
|
|
2816
|
+
*
|
|
2817
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2818
|
+
* {@link Ftp2.loginAfterConnectOnlyAsync}.
|
|
2819
|
+
*
|
|
2820
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2821
|
+
* {@link Ftp2.lastErrorText}.
|
|
2822
|
+
*/
|
|
2823
|
+
loginAfterConnectOnly(): void
|
|
2824
|
+
|
|
2825
|
+
/**
|
|
2826
|
+
* Asynchronous form of {@link Ftp2.loginAfterConnectOnly}: the same call on a native worker
|
|
2827
|
+
* thread,
|
|
2828
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2829
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2830
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2831
|
+
*
|
|
2832
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2833
|
+
* {@link Ftp2.lastErrorText}.
|
|
2834
|
+
*/
|
|
2835
|
+
loginAfterConnectOnlyAsync(): Promise<void>
|
|
2836
|
+
|
|
2837
|
+
/**
|
|
2838
|
+
* Downloads files in the current remote directory that match `remotePattern` into the existing
|
|
2839
|
+
* local directory at `localDir`. Subdirectories are not traversed. The method returns the number
|
|
2840
|
+
* of files downloaded, or `-1` on failure.
|
|
2841
|
+
*
|
|
2842
|
+
* `localDir` must already exist; the method does not create it. Existing local files with
|
|
2843
|
+
* matching names are replaced. Chilkat sends a server-side listing request for `remotePattern`,
|
|
2844
|
+
* so wildcard matching and case sensitivity depend on the FTP server and remote filesystem.
|
|
2845
|
+
*
|
|
2846
|
+
* **Windows filenames:** Remote names that contain characters invalid in a Windows filename are
|
|
2847
|
+
* sanitized for the local file. Invalid characters are replaced with underscores and trailing
|
|
2848
|
+
* periods are removed. For example, `a<b>c:d|e?f*g.txt` is saved as `a_b_c_d_e_f_g.txt`.
|
|
2849
|
+
* Different remote names can potentially map to the same local name.
|
|
2850
|
+
*
|
|
2851
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2852
|
+
* {@link Ftp2.mGetFilesAsync}.
|
|
2853
|
+
*/
|
|
2854
|
+
mGetFiles(remotePattern: string, localDir: string): number
|
|
2855
|
+
|
|
2856
|
+
/**
|
|
2857
|
+
* Asynchronous form of {@link Ftp2.mGetFiles}: the same call on a native worker thread,
|
|
2858
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2859
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2860
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2861
|
+
*/
|
|
2862
|
+
mGetFilesAsync(remotePattern: string, localDir: string): Promise<number>
|
|
2863
|
+
|
|
2864
|
+
/**
|
|
2865
|
+
* Uploads each local file matching `pattern` to the current remote directory. `pattern` may
|
|
2866
|
+
* include a local directory and wildcard, such as `C:/data/*.txt`. Subdirectories are not
|
|
2867
|
+
* traversed.
|
|
2868
|
+
*
|
|
2869
|
+
* Local wildcard behavior follows the local operating system; for example, Windows matching is
|
|
2870
|
+
* case-insensitive. Only each matching file's basename is used as the remote filename. Existing
|
|
2871
|
+
* remote files are replaced using normal `STOR` behavior.
|
|
2872
|
+
*
|
|
2873
|
+
* The method returns the number of files uploaded, or `-1` on failure.
|
|
2874
|
+
*
|
|
2875
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2876
|
+
* {@link Ftp2.mPutFilesAsync}.
|
|
2877
|
+
*/
|
|
2878
|
+
mPutFiles(pattern: string): number
|
|
2879
|
+
|
|
2880
|
+
/**
|
|
2881
|
+
* Asynchronous form of {@link Ftp2.mPutFiles}: the same call on a native worker thread,
|
|
2882
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2883
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2884
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2885
|
+
*/
|
|
2886
|
+
mPutFilesAsync(pattern: string): Promise<number>
|
|
2887
|
+
|
|
2888
|
+
/**
|
|
2889
|
+
* Sends `NLST` with `remoteDirPattern` appended literally and returns the names in XML form. An
|
|
2890
|
+
* empty `remoteDirPattern` sends `NLST`; a value such as `*.txt` sends `NLST *.txt`.
|
|
2891
|
+
*
|
|
2892
|
+
* ```
|
|
2893
|
+
* <nlst>
|
|
2894
|
+
* <e>name1</e>
|
|
2895
|
+
* <e>name2</e>
|
|
2896
|
+
* </nlst>
|
|
2897
|
+
* ```
|
|
2898
|
+
*
|
|
2899
|
+
* The response is decoded using {@link Ftp2.dirListingCharset}. `NLST` normally returns names
|
|
2900
|
+
* only; the XML does not distinguish files from directories and does not provide reliable sizes,
|
|
2901
|
+
* times, ownership, or permissions. Wildcard matching and case sensitivity are server-dependent.
|
|
2902
|
+
*
|
|
2903
|
+
* This method does not use or populate the indexed directory cache.
|
|
2904
|
+
*
|
|
2905
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2906
|
+
* {@link Ftp2.nlstXmlAsync}.
|
|
2907
|
+
*
|
|
2908
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2909
|
+
* {@link Ftp2.lastErrorText}.
|
|
2910
|
+
*/
|
|
2911
|
+
nlstXml(remoteDirPattern: string): string
|
|
2912
|
+
|
|
2913
|
+
/**
|
|
2914
|
+
* Asynchronous form of {@link Ftp2.nlstXml}: the same call on a native worker thread,
|
|
2915
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2916
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2917
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2918
|
+
*
|
|
2919
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2920
|
+
* {@link Ftp2.lastErrorText}.
|
|
2921
|
+
*/
|
|
2922
|
+
nlstXmlAsync(remoteDirPattern: string): Promise<string>
|
|
2923
|
+
|
|
2924
|
+
/**
|
|
2925
|
+
* Sends the FTP `NOOP` command. The server must return a positive FTP reply for the method to
|
|
2926
|
+
* succeed.
|
|
2927
|
+
*
|
|
2928
|
+
* Whether `NOOP` is accepted before login is server-dependent. This method does not reconnect a
|
|
2929
|
+
* closed session.
|
|
2930
|
+
*
|
|
2931
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2932
|
+
* {@link Ftp2.noopAsync}.
|
|
2933
|
+
*
|
|
2934
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2935
|
+
* {@link Ftp2.lastErrorText}.
|
|
2936
|
+
*/
|
|
2937
|
+
noop(): void
|
|
2938
|
+
|
|
2939
|
+
/**
|
|
2940
|
+
* Asynchronous form of {@link Ftp2.noop}: the same call on a native worker thread,
|
|
2941
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2942
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2943
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2944
|
+
*
|
|
2945
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2946
|
+
* {@link Ftp2.lastErrorText}.
|
|
2947
|
+
*/
|
|
2948
|
+
noopAsync(): Promise<void>
|
|
2949
|
+
|
|
2950
|
+
/**
|
|
2951
|
+
* Uploads the local filesystem file at `localFilePath` to the remote path at `remoteFilePath`.
|
|
2952
|
+
*
|
|
2953
|
+
* Uses the FTP `STOR` command. A normal upload creates a missing remote file or truncates and
|
|
2954
|
+
* replaces an existing one. Chilkat does not create missing remote parent directories and does
|
|
2955
|
+
* not upload through a temporary remote name followed by an atomic rename.
|
|
2956
|
+
*
|
|
2957
|
+
* Use {@link Ftp2.restartNext} immediately before this call to resume an existing partial remote
|
|
2958
|
+
* file. {@link Ftp2.idleTimeoutMs} limits how long the upload may remain blocked without forward
|
|
2959
|
+
* progress.
|
|
2960
|
+
*
|
|
2961
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2962
|
+
* {@link Ftp2.putFileAsync}.
|
|
2963
|
+
*
|
|
2964
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2965
|
+
* {@link Ftp2.lastErrorText}.
|
|
2966
|
+
*/
|
|
2967
|
+
putFile(localFilePath: string, remoteFilePath: string): void
|
|
2968
|
+
|
|
2969
|
+
/**
|
|
2970
|
+
* Asynchronous form of {@link Ftp2.putFile}: the same call on a native worker thread,
|
|
2971
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
2972
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
2973
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
2974
|
+
*
|
|
2975
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
2976
|
+
* {@link Ftp2.lastErrorText}.
|
|
2977
|
+
*/
|
|
2978
|
+
putFileAsync(localFilePath: string, remoteFilePath: string): Promise<void>
|
|
2979
|
+
|
|
2980
|
+
/**
|
|
2981
|
+
* Encodes the text in `textData` using the character encoding named by `charset` and uploads the
|
|
2982
|
+
* resulting bytes to the remote file at `remoteFilename`.
|
|
2983
|
+
*
|
|
2984
|
+
* Uses the FTP `STOR` command. A normal upload creates a missing remote file or truncates and
|
|
2985
|
+
* replaces an existing one. Chilkat does not create missing remote parent directories and does
|
|
2986
|
+
* not upload through a temporary remote name followed by an atomic rename.
|
|
2987
|
+
*
|
|
2988
|
+
* The content charset is independent of {@link Ftp2.commandCharset}, which controls the encoding
|
|
2989
|
+
* of the remote path sent in the FTP command.
|
|
2990
|
+
*
|
|
2991
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
2992
|
+
* {@link Ftp2.putFileFromTextDataAsync}.
|
|
2993
|
+
*
|
|
2994
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
2995
|
+
* {@link Ftp2.lastErrorText}.
|
|
2996
|
+
*/
|
|
2997
|
+
putFileFromTextData(remoteFilename: string, textData: string, charset: string): void
|
|
2998
|
+
|
|
2999
|
+
/**
|
|
3000
|
+
* Asynchronous form of {@link Ftp2.putFileFromTextData}: the same call on a native worker thread,
|
|
3001
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3002
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3003
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3004
|
+
*
|
|
3005
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3006
|
+
* {@link Ftp2.lastErrorText}.
|
|
3007
|
+
*/
|
|
3008
|
+
putFileFromTextDataAsync(remoteFilename: string, textData: string, charset: string): Promise<void>
|
|
3009
|
+
|
|
3010
|
+
/**
|
|
3011
|
+
* Executes the upload plan in `plan`. `alreadyDoneFilename` is the local path of a completion
|
|
3012
|
+
* log; each successful plan operation is recorded there.
|
|
3013
|
+
*
|
|
3014
|
+
* The absolute remote paths stored in the plan are used even if the current remote directory has
|
|
3015
|
+
* changed since the plan was created. Local files are opened when this method executes, so
|
|
3016
|
+
* changes made after {@link Ftp2.createPlan} are reflected in the upload.
|
|
3017
|
+
*
|
|
3018
|
+
* To resume an interrupted plan, call this method again with the same plan and log path.
|
|
3019
|
+
* Operations already recorded as complete are skipped.
|
|
3020
|
+
*
|
|
3021
|
+
* **Log durability:** Store the completion log on reliable local storage and do not edit it while
|
|
3022
|
+
* the plan is running.
|
|
3023
|
+
*
|
|
3024
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3025
|
+
* {@link Ftp2.putPlanAsync}.
|
|
3026
|
+
*
|
|
3027
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3028
|
+
* {@link Ftp2.lastErrorText}.
|
|
3029
|
+
*/
|
|
3030
|
+
putPlan(plan: string, alreadyDoneFilename: string): void
|
|
3031
|
+
|
|
3032
|
+
/**
|
|
3033
|
+
* Asynchronous form of {@link Ftp2.putPlan}: the same call on a native worker thread,
|
|
3034
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3035
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3036
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3037
|
+
*
|
|
3038
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3039
|
+
* {@link Ftp2.lastErrorText}.
|
|
3040
|
+
*/
|
|
3041
|
+
putPlanAsync(plan: string, alreadyDoneFilename: string): Promise<void>
|
|
3042
|
+
|
|
3043
|
+
/**
|
|
3044
|
+
* Uploads the local directory tree rooted at `localDir` into the current remote directory,
|
|
3045
|
+
* creating remote subdirectories as needed. The contents of `localDir` become children of the
|
|
3046
|
+
* current remote directory.
|
|
3047
|
+
*
|
|
3048
|
+
* The file and directory filters in {@link Ftp2.syncMustMatch}, {@link Ftp2.syncMustNotMatch},
|
|
3049
|
+
* {@link Ftp2.syncMustMatchDir}, and {@link Ftp2.syncMustNotMatchDir} apply. Empty eligible local
|
|
3050
|
+
* directories are created remotely. Existing remote files are overwritten with `STOR`.
|
|
3051
|
+
*
|
|
3052
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3053
|
+
* {@link Ftp2.putTreeAsync}.
|
|
3054
|
+
*
|
|
3055
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3056
|
+
* {@link Ftp2.lastErrorText}.
|
|
3057
|
+
*/
|
|
3058
|
+
putTree(localDir: string): void
|
|
3059
|
+
|
|
3060
|
+
/**
|
|
3061
|
+
* Asynchronous form of {@link Ftp2.putTree}: the same call on a native worker thread,
|
|
3062
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3063
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3064
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3065
|
+
*
|
|
3066
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3067
|
+
* {@link Ftp2.lastErrorText}.
|
|
3068
|
+
*/
|
|
3069
|
+
putTreeAsync(localDir: string): Promise<void>
|
|
3070
|
+
|
|
3071
|
+
/**
|
|
3072
|
+
* Sends the raw FTP command text in `cmd` to the server. Use this for a command not otherwise
|
|
3073
|
+
* exposed by the API.
|
|
3074
|
+
*
|
|
3075
|
+
* `cmd` contains the command and parameters but must not contain CR or LF characters; such input
|
|
3076
|
+
* is rejected without sending anything. Chilkat considers the method successful only when the
|
|
3077
|
+
* server returns a positive FTP reply. A `4xx` or `5xx` reply causes failure and remains
|
|
3078
|
+
* available through {@link Ftp2.lastReply}.
|
|
3079
|
+
*
|
|
3080
|
+
* The method does not parse command-specific semantics. Use {@link Ftp2.sendCommand} when the
|
|
3081
|
+
* reply text is needed directly.
|
|
3082
|
+
*
|
|
3083
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3084
|
+
* {@link Ftp2.quoteAsync}.
|
|
3085
|
+
*
|
|
3086
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3087
|
+
* {@link Ftp2.lastErrorText}.
|
|
3088
|
+
*/
|
|
3089
|
+
quote(cmd: string): void
|
|
3090
|
+
|
|
3091
|
+
/**
|
|
3092
|
+
* Asynchronous form of {@link Ftp2.quote}: the same call on a native worker thread,
|
|
3093
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3094
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3095
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3096
|
+
*
|
|
3097
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3098
|
+
* {@link Ftp2.lastErrorText}.
|
|
3099
|
+
*/
|
|
3100
|
+
quoteAsync(cmd: string): Promise<void>
|
|
3101
|
+
|
|
3102
|
+
/**
|
|
3103
|
+
* Removes the remote directory at `remoteDirPath`. FTP servers generally require the directory to
|
|
3104
|
+
* be empty before it can be removed.
|
|
3105
|
+
*
|
|
3106
|
+
* A successful call does not refresh the cached indexed listing. Call {@link Ftp2.clearDirCache}
|
|
3107
|
+
* before relying on indexed listing methods.
|
|
3108
|
+
*
|
|
3109
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3110
|
+
* {@link Ftp2.removeRemoteDirAsync}.
|
|
3111
|
+
*
|
|
3112
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3113
|
+
* {@link Ftp2.lastErrorText}.
|
|
3114
|
+
*/
|
|
3115
|
+
removeRemoteDir(remoteDirPath: string): void
|
|
3116
|
+
|
|
3117
|
+
/**
|
|
3118
|
+
* Asynchronous form of {@link Ftp2.removeRemoteDir}: the same call on a native worker thread,
|
|
3119
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3120
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3121
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3122
|
+
*
|
|
3123
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3124
|
+
* {@link Ftp2.lastErrorText}.
|
|
3125
|
+
*/
|
|
3126
|
+
removeRemoteDirAsync(remoteDirPath: string): Promise<void>
|
|
3127
|
+
|
|
3128
|
+
/**
|
|
3129
|
+
* Renames or moves a remote file or directory from `existingRemoteFilePath` to
|
|
3130
|
+
* `newRemoteFilePath` using the FTP `RNFR`/`RNTO` sequence. Include directory components in
|
|
3131
|
+
* `newRemoteFilePath` to move the item within the same FTP server.
|
|
3132
|
+
*
|
|
3133
|
+
* Chilkat does not perform a protective destination-existence check. If `newRemoteFilePath`
|
|
3134
|
+
* already exists, one server may reject the rename while another may replace the destination.
|
|
3135
|
+
* Cross-directory or cross-filesystem moves are also subject to server policy.
|
|
3136
|
+
*
|
|
3137
|
+
* A successful rename does not refresh the cached indexed listing. Call {@link
|
|
3138
|
+
* Ftp2.clearDirCache} when a fresh listing is required.
|
|
3139
|
+
*
|
|
3140
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3141
|
+
* {@link Ftp2.renameRemoteFileAsync}.
|
|
3142
|
+
*
|
|
3143
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3144
|
+
* {@link Ftp2.lastErrorText}.
|
|
3145
|
+
*/
|
|
3146
|
+
renameRemoteFile(existingRemoteFilePath: string, newRemoteFilePath: string): void
|
|
3147
|
+
|
|
3148
|
+
/**
|
|
3149
|
+
* Asynchronous form of {@link Ftp2.renameRemoteFile}: the same call on a native worker thread,
|
|
3150
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3151
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3152
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3153
|
+
*
|
|
3154
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3155
|
+
* {@link Ftp2.lastErrorText}.
|
|
3156
|
+
*/
|
|
3157
|
+
renameRemoteFileAsync(existingRemoteFilePath: string, newRemoteFilePath: string): Promise<void>
|
|
3158
|
+
|
|
3159
|
+
/**
|
|
3160
|
+
* Sends the raw FTP command in `cmd` and returns the complete server reply. The command text is
|
|
3161
|
+
* sent as UTF-8; {@link Ftp2.commandCharset} is not applied.
|
|
3162
|
+
*
|
|
3163
|
+
* `cmd` must not contain CR or LF characters; such input is rejected without sending anything. A
|
|
3164
|
+
* positive FTP reply is returned normally. A `4xx` or `5xx` reply is treated as method failure
|
|
3165
|
+
* and sets `LastMethodSuccess` to `false`.
|
|
3166
|
+
*
|
|
3167
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3168
|
+
* {@link Ftp2.sendCommandAsync}.
|
|
3169
|
+
*
|
|
3170
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3171
|
+
* {@link Ftp2.lastErrorText}.
|
|
3172
|
+
*/
|
|
3173
|
+
sendCommand(cmd: string): string
|
|
3174
|
+
|
|
3175
|
+
/**
|
|
3176
|
+
* Asynchronous form of {@link Ftp2.sendCommand}: the same call on a native worker thread,
|
|
3177
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3178
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3179
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3180
|
+
*
|
|
3181
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3182
|
+
* {@link Ftp2.lastErrorText}.
|
|
3183
|
+
*/
|
|
3184
|
+
sendCommandAsync(cmd: string): Promise<string>
|
|
3185
|
+
|
|
3186
|
+
/**
|
|
3187
|
+
* Enables `MODE Z` compression for subsequent data connections. Call this after connecting and
|
|
3188
|
+
* only when {@link Ftp2.hasModeZ} is `true`. Uploads, downloads, and directory listings are then
|
|
3189
|
+
* transferred through a DEFLATE-compressed stream.
|
|
3190
|
+
*
|
|
3191
|
+
* **Performance tradeoff:** Compression can reduce network traffic for text and other
|
|
3192
|
+
* compressible data, but may increase CPU usage and provide little benefit for already-compressed
|
|
3193
|
+
* formats such as ZIP, JPEG, or MP4.
|
|
3194
|
+
*
|
|
3195
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3196
|
+
* {@link Ftp2.setModeZAsync}.
|
|
3197
|
+
*
|
|
3198
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3199
|
+
* {@link Ftp2.lastErrorText}.
|
|
3200
|
+
*/
|
|
3201
|
+
setModeZ(): void
|
|
3202
|
+
|
|
3203
|
+
/**
|
|
3204
|
+
* Asynchronous form of {@link Ftp2.setModeZ}: the same call on a native worker thread,
|
|
3205
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3206
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3207
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3208
|
+
*
|
|
3209
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3210
|
+
* {@link Ftp2.lastErrorText}.
|
|
3211
|
+
*/
|
|
3212
|
+
setModeZAsync(): Promise<void>
|
|
3213
|
+
|
|
3214
|
+
/**
|
|
3215
|
+
* Sets the oldest remote modification time eligible for {@link Ftp2.downloadTree}.
|
|
3216
|
+
* `oldestDateTimeStr` is an RFC 822 date-time string, such as `Fri, 21 Nov 1997 09:55:06 -0600`.
|
|
3217
|
+
* Files older than the configured value are skipped.
|
|
3218
|
+
*
|
|
3219
|
+
* The value remains active for subsequent `DownloadTree` calls; it is not consumed after one
|
|
3220
|
+
* operation. Avoid relying on exact equality at the boundary because legacy `LIST` timestamps can
|
|
3221
|
+
* have reduced precision or ambiguous timezone interpretation.
|
|
3222
|
+
*/
|
|
3223
|
+
setOldestDateStr(oldestDateTimeStr: string): void
|
|
3224
|
+
|
|
3225
|
+
/**
|
|
3226
|
+
* Enables or disables a named compatibility option. Option-name matching is case-insensitive.
|
|
3227
|
+
* Prefix a recognized name with `No-` to disable it.
|
|
3228
|
+
*
|
|
3229
|
+
* The recognized option `Microsoft-TLS-1.2-Workaround` changes data-channel TLS behavior for
|
|
3230
|
+
* compatibility with an old Microsoft FTP server defect. It weakens protocol selection and should
|
|
3231
|
+
* be used only for the affected legacy server. An unrecognized option name is rejected.
|
|
3232
|
+
*
|
|
3233
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3234
|
+
* {@link Ftp2.lastErrorText}.
|
|
3235
|
+
*/
|
|
3236
|
+
setOption(optionName: string): void
|
|
3237
|
+
|
|
3238
|
+
/**
|
|
3239
|
+
* Sets the last-modified time of the remote file at `remoteFilename`. `dateTimeStr` is an RFC 822
|
|
3240
|
+
* date-time string, such as `Fri, 21 Nov 1997 09:55:06 -0600`.
|
|
3241
|
+
*
|
|
3242
|
+
* Chilkat converts `dateTimeStr` to UTC and sends a server-supported timestamp-setting extension.
|
|
3243
|
+
* Depending on the server, the command may be `MFMT YYYYMMDDhhmmss path` or the nonstandard
|
|
3244
|
+
* timestamp-setting form of `MDTM YYYYMMDDhhmmss path`. Precision is one second.
|
|
3245
|
+
*
|
|
3246
|
+
* FTP has no universally implemented standard for changing a file timestamp; success depends on
|
|
3247
|
+
* server extensions and permissions.
|
|
3248
|
+
*
|
|
3249
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3250
|
+
* {@link Ftp2.setRemoteFileDateTimeStrAsync}.
|
|
3251
|
+
*
|
|
3252
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3253
|
+
* {@link Ftp2.lastErrorText}.
|
|
3254
|
+
*/
|
|
3255
|
+
setRemoteFileDateTimeStr(dateTimeStr: string, remoteFilename: string): void
|
|
3256
|
+
|
|
3257
|
+
/**
|
|
3258
|
+
* Asynchronous form of {@link Ftp2.setRemoteFileDateTimeStr}: the same call on a native worker
|
|
3259
|
+
* thread,
|
|
3260
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3261
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3262
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3263
|
+
*
|
|
3264
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3265
|
+
* {@link Ftp2.lastErrorText}.
|
|
3266
|
+
*/
|
|
3267
|
+
setRemoteFileDateTimeStrAsync(dateTimeStr: string, remoteFilename: string): Promise<void>
|
|
3268
|
+
|
|
3269
|
+
/**
|
|
3270
|
+
* Sets the last-modified time of the remote file at `remoteFilename` using the `CkDateTime` in
|
|
3271
|
+
* `dt`.
|
|
3272
|
+
*
|
|
3273
|
+
* Chilkat converts the value to UTC and sends a server-supported timestamp-setting extension.
|
|
3274
|
+
* Depending on the server, the command may be `MFMT YYYYMMDDhhmmss path` or the nonstandard
|
|
3275
|
+
* timestamp-setting form of `MDTM YYYYMMDDhhmmss path`. Precision is one second.
|
|
3276
|
+
*
|
|
3277
|
+
* FTP has no universally implemented standard for changing a file timestamp; success depends on
|
|
3278
|
+
* server extensions and permissions.
|
|
3279
|
+
*
|
|
3280
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3281
|
+
* {@link Ftp2.setRemoteFileDtAsync}.
|
|
3282
|
+
*
|
|
3283
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3284
|
+
* {@link Ftp2.lastErrorText}.
|
|
3285
|
+
*/
|
|
3286
|
+
setRemoteFileDt(dt: CkDateTime, remoteFilename: string): void
|
|
3287
|
+
|
|
3288
|
+
/**
|
|
3289
|
+
* Asynchronous form of {@link Ftp2.setRemoteFileDt}: the same call on a native worker thread,
|
|
3290
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3291
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3292
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3293
|
+
*
|
|
3294
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3295
|
+
* {@link Ftp2.lastErrorText}.
|
|
3296
|
+
*/
|
|
3297
|
+
setRemoteFileDtAsync(dt: CkDateTime, remoteFilename: string): Promise<void>
|
|
3298
|
+
|
|
3299
|
+
/**
|
|
3300
|
+
* Adds a required match against the FTP server certificate. `reqName` selects the certificate
|
|
3301
|
+
* field and `reqValue` specifies the required value. Supported field names include `SubjectDN`,
|
|
3302
|
+
* `SubjectCN`, `IssuerDN`, `IssuerCN`, and `SAN`. Wildcards such as `*` may be used in
|
|
3303
|
+
* `reqValue`.
|
|
3304
|
+
*
|
|
3305
|
+
* Requirement-value matching is case-sensitive. Multiple calls add requirements that are combined
|
|
3306
|
+
* with logical AND; every requirement must match.
|
|
3307
|
+
*
|
|
3308
|
+
* Requirements are evaluated when the FTPS control-channel TLS connection is established. Adding
|
|
3309
|
+
* a new requirement after connection does not retroactively reject the existing control channel
|
|
3310
|
+
* and is not applied to later protected data-channel handshakes within that session.
|
|
3311
|
+
*
|
|
3312
|
+
* **Additional check:** Certificate requirements supplement normal certificate validation; they
|
|
3313
|
+
* should not be used as a substitute for trust-chain, validity, and hostname verification.
|
|
3314
|
+
*/
|
|
3315
|
+
setSslCertRequirement(reqName: string, reqValue: string): void
|
|
3316
|
+
|
|
3317
|
+
/**
|
|
3318
|
+
* Configures the `Cert` in `cert` as the client certificate for FTPS servers that request mutual
|
|
3319
|
+
* TLS authentication. The certificate must have access to its private key.
|
|
3320
|
+
*
|
|
3321
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3322
|
+
* {@link Ftp2.lastErrorText}.
|
|
3323
|
+
*/
|
|
3324
|
+
setSslClientCert(cert: Cert): void
|
|
3325
|
+
|
|
3326
|
+
/**
|
|
3327
|
+
* Configures a client certificate and private key from PEM data or a PEM file.
|
|
3328
|
+
* `pemDataOrFilename` may contain the PEM text or the local filesystem path of a PEM file.
|
|
3329
|
+
* `pemPassword` is the private-key password, or an empty string when the key is not encrypted.
|
|
3330
|
+
*
|
|
3331
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3332
|
+
* {@link Ftp2.lastErrorText}.
|
|
3333
|
+
*/
|
|
3334
|
+
setSslClientCertPem(pemDataOrFilename: string, pemPassword: string): void
|
|
3335
|
+
|
|
3336
|
+
/**
|
|
3337
|
+
* Loads a client certificate and private key from the local PFX/P12 file at `pfxFilename`.
|
|
3338
|
+
* `pfxPassword` is the file password. The certificate is used when the FTPS server requests
|
|
3339
|
+
* mutual TLS authentication.
|
|
3340
|
+
*
|
|
3341
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3342
|
+
* {@link Ftp2.lastErrorText}.
|
|
3343
|
+
*/
|
|
3344
|
+
setSslClientCertPfx(pfxFilename: string, pfxPassword: string): void
|
|
3345
|
+
|
|
3346
|
+
/**
|
|
3347
|
+
* Sets the FTP representation type to ASCII for subsequent transfers. In ASCII mode, the FTP
|
|
3348
|
+
* endpoints may translate line endings, and {@link Ftp2.crlfMode} can apply additional conversion
|
|
3349
|
+
* on downloads.
|
|
3350
|
+
*
|
|
3351
|
+
* **Use carefully:** ASCII mode is intended for text. Use {@link Ftp2.setTypeBinary} for
|
|
3352
|
+
* executables, archives, images, encrypted data, and any file whose bytes must remain unchanged.
|
|
3353
|
+
*
|
|
3354
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3355
|
+
* {@link Ftp2.setTypeAsciiAsync}.
|
|
3356
|
+
*
|
|
3357
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3358
|
+
* {@link Ftp2.lastErrorText}.
|
|
3359
|
+
*/
|
|
3360
|
+
setTypeAscii(): void
|
|
3361
|
+
|
|
3362
|
+
/**
|
|
3363
|
+
* Asynchronous form of {@link Ftp2.setTypeAscii}: the same call on a native worker thread,
|
|
3364
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3365
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3366
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3367
|
+
*
|
|
3368
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3369
|
+
* {@link Ftp2.lastErrorText}.
|
|
3370
|
+
*/
|
|
3371
|
+
setTypeAsciiAsync(): Promise<void>
|
|
3372
|
+
|
|
3373
|
+
/**
|
|
3374
|
+
* Sets the FTP representation type to binary (`TYPE I`) for subsequent transfers. Binary mode
|
|
3375
|
+
* preserves file bytes and is the appropriate default for nearly all modern file types.
|
|
3376
|
+
*
|
|
3377
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3378
|
+
* {@link Ftp2.setTypeBinaryAsync}.
|
|
3379
|
+
*
|
|
3380
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3381
|
+
* {@link Ftp2.lastErrorText}.
|
|
3382
|
+
*/
|
|
3383
|
+
setTypeBinary(): void
|
|
3384
|
+
|
|
3385
|
+
/**
|
|
3386
|
+
* Asynchronous form of {@link Ftp2.setTypeBinary}: the same call on a native worker thread,
|
|
3387
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3388
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3389
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3390
|
+
*
|
|
3391
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3392
|
+
* {@link Ftp2.lastErrorText}.
|
|
3393
|
+
*/
|
|
3394
|
+
setTypeBinaryAsync(): Promise<void>
|
|
3395
|
+
|
|
3396
|
+
/**
|
|
3397
|
+
* Sends a server-specific `SITE` command. `siteCommand` contains the text following `SITE`, for
|
|
3398
|
+
* example `RECFM=FB LRECL=600`.
|
|
3399
|
+
*
|
|
3400
|
+
* `SITE` subcommands are defined by the server, not by the FTP standard, and may require special
|
|
3401
|
+
* permissions.
|
|
3402
|
+
*
|
|
3403
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3404
|
+
* {@link Ftp2.siteAsync}.
|
|
3405
|
+
*
|
|
3406
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3407
|
+
* {@link Ftp2.lastErrorText}.
|
|
3408
|
+
*/
|
|
3409
|
+
site(siteCommand: string): void
|
|
3410
|
+
|
|
3411
|
+
/**
|
|
3412
|
+
* Asynchronous form of {@link Ftp2.site}: the same call on a native worker thread,
|
|
3413
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3414
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3415
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3416
|
+
*
|
|
3417
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3418
|
+
* {@link Ftp2.lastErrorText}.
|
|
3419
|
+
*/
|
|
3420
|
+
siteAsync(siteCommand: string): Promise<void>
|
|
3421
|
+
|
|
3422
|
+
/**
|
|
3423
|
+
* Blocks the calling thread for `millisec` milliseconds. This is a utility method and performs no
|
|
3424
|
+
* FTP network operation.
|
|
3425
|
+
*/
|
|
3426
|
+
sleepMs(millisec: number): void
|
|
3427
|
+
|
|
3428
|
+
/**
|
|
3429
|
+
* Sends the FTP `STAT` command and returns the server's reply. Depending on the server and
|
|
3430
|
+
* session state, the reply may contain status information or a directory listing.
|
|
3431
|
+
*
|
|
3432
|
+
* Support, accepted arguments, and whether the command is permitted before login are
|
|
3433
|
+
* server-dependent.
|
|
3434
|
+
*
|
|
3435
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3436
|
+
* {@link Ftp2.statAsync}.
|
|
3437
|
+
*
|
|
3438
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3439
|
+
* {@link Ftp2.lastErrorText}.
|
|
3440
|
+
*/
|
|
3441
|
+
stat(): string
|
|
3442
|
+
|
|
3443
|
+
/**
|
|
3444
|
+
* Asynchronous form of {@link Ftp2.stat}: the same call on a native worker thread,
|
|
3445
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3446
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3447
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3448
|
+
*
|
|
3449
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3450
|
+
* {@link Ftp2.lastErrorText}.
|
|
3451
|
+
*/
|
|
3452
|
+
statAsync(): Promise<string>
|
|
3453
|
+
|
|
3454
|
+
/**
|
|
3455
|
+
* Recursively compares the remote tree rooted at the current remote directory with the local tree
|
|
3456
|
+
* rooted at `localRoot` and deletes remote files that have no corresponding local file. The
|
|
3457
|
+
* synchronization file and directory filters apply. Empty remote directories are not deleted.
|
|
3458
|
+
*
|
|
3459
|
+
* **Destructive synchronization:** This method deletes server data. Verify the current remote
|
|
3460
|
+
* directory, local root, and synchronization filters before calling it.
|
|
3461
|
+
*
|
|
3462
|
+
* Use {@link Ftp2.getSyncedFiles} after the call to obtain the relative paths deleted.
|
|
3463
|
+
*
|
|
3464
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3465
|
+
* {@link Ftp2.syncDeleteRemoteAsync}.
|
|
3466
|
+
*
|
|
3467
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3468
|
+
* {@link Ftp2.lastErrorText}.
|
|
3469
|
+
*/
|
|
3470
|
+
syncDeleteRemote(localRoot: string): void
|
|
3471
|
+
|
|
3472
|
+
/**
|
|
3473
|
+
* Asynchronous form of {@link Ftp2.syncDeleteRemote}: the same call on a native worker thread,
|
|
3474
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3475
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3476
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3477
|
+
*
|
|
3478
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3479
|
+
* {@link Ftp2.lastErrorText}.
|
|
3480
|
+
*/
|
|
3481
|
+
syncDeleteRemoteAsync(localRoot: string): Promise<void>
|
|
3482
|
+
|
|
3483
|
+
/**
|
|
3484
|
+
* Synchronizes files from the current remote directory into the local directory at `localRoot`
|
|
3485
|
+
* without descending into subdirectories. `mode` selects the same download modes documented for
|
|
3486
|
+
* {@link Ftp2.syncLocalTree}.
|
|
3487
|
+
*
|
|
3488
|
+
* The filters are case-insensitive and match basenames. In mode `99`, only unmatched remote files
|
|
3489
|
+
* in the current directory are deleted; nested directories are not traversed and their contents
|
|
3490
|
+
* are not examined. Extra local files are not deleted.
|
|
3491
|
+
*
|
|
3492
|
+
* Unsupported mode values fail before an FTP command is sent. Use {@link Ftp2.getSyncedFiles}
|
|
3493
|
+
* afterward to obtain the affected relative paths.
|
|
3494
|
+
*
|
|
3495
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3496
|
+
* {@link Ftp2.syncLocalDirAsync}.
|
|
3497
|
+
*
|
|
3498
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3499
|
+
* {@link Ftp2.lastErrorText}.
|
|
3500
|
+
*/
|
|
3501
|
+
syncLocalDir(localRoot: string, mode: number): void
|
|
3502
|
+
|
|
3503
|
+
/**
|
|
3504
|
+
* Asynchronous form of {@link Ftp2.syncLocalDir}: the same call on a native worker thread,
|
|
3505
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3506
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3507
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3508
|
+
*
|
|
3509
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3510
|
+
* {@link Ftp2.lastErrorText}.
|
|
3511
|
+
*/
|
|
3512
|
+
syncLocalDirAsync(localRoot: string, mode: number): Promise<void>
|
|
3513
|
+
|
|
3514
|
+
/**
|
|
3515
|
+
* Synchronizes the remote tree rooted at the current remote directory into the local directory at
|
|
3516
|
+
* `localRoot`. `mode` selects which files are downloaded or deleted.
|
|
3517
|
+
*
|
|
3518
|
+
* ModeAction
|
|
3519
|
+
*
|
|
3520
|
+
* | `0` | | Download all selected files. |
|
|
3521
|
+
*
|
|
3522
|
+
* | `1` | | Download files missing locally. |
|
|
3523
|
+
*
|
|
3524
|
+
* | `2` | | Download files that are missing locally or newer on the server. |
|
|
3525
|
+
*
|
|
3526
|
+
* | `3` | | Download only files that already exist locally and are newer on the server. |
|
|
3527
|
+
*
|
|
3528
|
+
* | `5` | | Download files that are missing locally or have a different size. |
|
|
3529
|
+
*
|
|
3530
|
+
* | `6` | | Download files that are missing, have a different size, or are newer on the server. |
|
|
3531
|
+
*
|
|
3532
|
+
* | `99` | | Do not download; delete remote files that do not exist locally. |
|
|
3533
|
+
*
|
|
3534
|
+
* The synchronization filters are case-insensitive and match file basenames rather than relative
|
|
3535
|
+
* paths. A file is considered newer only when its timestamp is strictly later; equal timestamps
|
|
3536
|
+
* do not qualify.
|
|
3537
|
+
*
|
|
3538
|
+
* Mode `99` deletes remote files that do not exist locally; it does not delete extra local files.
|
|
3539
|
+
* Only the mode values shown in the table are valid. Other values fail before any FTP command is
|
|
3540
|
+
* sent. Use {@link Ftp2.getSyncedFiles} afterward to obtain the affected relative paths.
|
|
3541
|
+
*
|
|
3542
|
+
* **Mode numbers differ by direction:** The upload and download synchronization methods do not
|
|
3543
|
+
* assign the same meanings to all numeric modes. Use the table for the method being called.
|
|
3544
|
+
*
|
|
3545
|
+
* **Time comparison:** Newer-file modes depend on remote timestamps and local clock
|
|
3546
|
+
* interpretation. Size-based modes may be more predictable when server timestamp precision is
|
|
3547
|
+
* limited.
|
|
3548
|
+
*
|
|
3549
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3550
|
+
* {@link Ftp2.syncLocalTreeAsync}.
|
|
3551
|
+
*
|
|
3552
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3553
|
+
* {@link Ftp2.lastErrorText}.
|
|
3554
|
+
*/
|
|
3555
|
+
syncLocalTree(localRoot: string, mode: number): void
|
|
3556
|
+
|
|
3557
|
+
/**
|
|
3558
|
+
* Asynchronous form of {@link Ftp2.syncLocalTree}: the same call on a native worker thread,
|
|
3559
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3560
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3561
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3562
|
+
*
|
|
3563
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3564
|
+
* {@link Ftp2.lastErrorText}.
|
|
3565
|
+
*/
|
|
3566
|
+
syncLocalTreeAsync(localRoot: string, mode: number): Promise<void>
|
|
3567
|
+
|
|
3568
|
+
/**
|
|
3569
|
+
* Synchronizes the local tree rooted at `localRoot` into the current remote directory. `mode`
|
|
3570
|
+
* selects which files are uploaded.
|
|
3571
|
+
*
|
|
3572
|
+
* ModeAction
|
|
3573
|
+
*
|
|
3574
|
+
* | `0` | | Upload all selected files. |
|
|
3575
|
+
*
|
|
3576
|
+
* | `1` | | Upload files missing on the server. |
|
|
3577
|
+
*
|
|
3578
|
+
* | `2` | | Upload files that are missing or newer locally. |
|
|
3579
|
+
*
|
|
3580
|
+
* | `3` | | Upload only files that already exist remotely and are newer locally. |
|
|
3581
|
+
*
|
|
3582
|
+
* | `4` | | Upload files that are missing or have a different size. |
|
|
3583
|
+
*
|
|
3584
|
+
* | `5` | | Upload files that are missing, have a different size, or are newer locally. |
|
|
3585
|
+
*
|
|
3586
|
+
* The synchronization filters are case-insensitive and match file basenames rather than relative
|
|
3587
|
+
* paths. A file is considered newer only when its timestamp is strictly later; equal timestamps
|
|
3588
|
+
* do not qualify.
|
|
3589
|
+
*
|
|
3590
|
+
* Only the mode values shown in the table are valid. Other values fail before any FTP command is
|
|
3591
|
+
* sent. Use {@link Ftp2.getSyncedFiles} afterward to obtain the relative paths uploaded.
|
|
3592
|
+
*
|
|
3593
|
+
* **Mode numbers differ by direction:** The upload and download synchronization methods do not
|
|
3594
|
+
* assign the same meanings to all numeric modes. Use the table for the method being called rather
|
|
3595
|
+
* than reusing a mode number from a download operation.
|
|
3596
|
+
*
|
|
3597
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3598
|
+
* {@link Ftp2.syncRemoteTreeAsync}.
|
|
3599
|
+
*
|
|
3600
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3601
|
+
* {@link Ftp2.lastErrorText}.
|
|
3602
|
+
*/
|
|
3603
|
+
syncRemoteTree(localRoot: string, mode: number): void
|
|
3604
|
+
|
|
3605
|
+
/**
|
|
3606
|
+
* Asynchronous form of {@link Ftp2.syncRemoteTree}: the same call on a native worker thread,
|
|
3607
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3608
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3609
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3610
|
+
*
|
|
3611
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3612
|
+
* {@link Ftp2.lastErrorText}.
|
|
3613
|
+
*/
|
|
3614
|
+
syncRemoteTreeAsync(localRoot: string, mode: number): Promise<void>
|
|
3615
|
+
|
|
3616
|
+
/**
|
|
3617
|
+
* Provides the upload synchronization behavior and valid modes of {@link Ftp2.syncRemoteTree}
|
|
3618
|
+
* with traversal and preview controls. `localDirPath` is the local root, `mode` is the upload
|
|
3619
|
+
* synchronization mode, `bDescend` controls whether subdirectories are traversed, and
|
|
3620
|
+
* `bPreviewOnly` selects preview-only mode. File and directory filters apply in both normal and
|
|
3621
|
+
* preview operation.
|
|
3622
|
+
*
|
|
3623
|
+
* When `bPreviewOnly` is `true`, files are not uploaded and the absolute candidate file paths are
|
|
3624
|
+
* placed in {@link Ftp2.syncPreview}. Required remote directories may still be created during
|
|
3625
|
+
* preview. If no files qualify, the preview is empty.
|
|
3626
|
+
*
|
|
3627
|
+
* Unsupported mode values fail before any FTP command is sent and clear `SyncPreview`. A failed
|
|
3628
|
+
* preview also leaves it empty. A subsequent non-preview synchronization clears the previous
|
|
3629
|
+
* preview.
|
|
3630
|
+
*
|
|
3631
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3632
|
+
* {@link Ftp2.syncRemoteTree2Async}.
|
|
3633
|
+
*
|
|
3634
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3635
|
+
* {@link Ftp2.lastErrorText}.
|
|
3636
|
+
*/
|
|
3637
|
+
syncRemoteTree2(localDirPath: string, mode: number, bDescend: boolean, bPreviewOnly: boolean): void
|
|
3638
|
+
|
|
3639
|
+
/**
|
|
3640
|
+
* Asynchronous form of {@link Ftp2.syncRemoteTree2}: the same call on a native worker thread,
|
|
3641
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3642
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3643
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3644
|
+
*
|
|
3645
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3646
|
+
* {@link Ftp2.lastErrorText}.
|
|
3647
|
+
*/
|
|
3648
|
+
syncRemoteTree2Async(localDirPath: string, mode: number, bDescend: boolean, bPreviewOnly: boolean): Promise<void>
|
|
3649
|
+
|
|
3650
|
+
/**
|
|
3651
|
+
* Sends `SYST` and returns the server's operating-system type reply. Chilkat can use this
|
|
3652
|
+
* information when interpreting legacy directory listings.
|
|
3653
|
+
*
|
|
3654
|
+
* Whether the command is accepted before authentication is server-dependent.
|
|
3655
|
+
*
|
|
3656
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3657
|
+
* {@link Ftp2.systAsync}.
|
|
3658
|
+
*
|
|
3659
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3660
|
+
* {@link Ftp2.lastErrorText}.
|
|
3661
|
+
*/
|
|
3662
|
+
syst(): string
|
|
3663
|
+
|
|
3664
|
+
/**
|
|
3665
|
+
* Asynchronous form of {@link Ftp2.syst}: the same call on a native worker thread,
|
|
3666
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3667
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3668
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3669
|
+
*
|
|
3670
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3671
|
+
* {@link Ftp2.lastErrorText}.
|
|
3672
|
+
*/
|
|
3673
|
+
systAsync(): Promise<string>
|
|
3674
|
+
|
|
3675
|
+
/**
|
|
3676
|
+
* Downloads the remote file at `remoteFilePath` and appends its bytes to the existing contents of
|
|
3677
|
+
* the `BinData` object in `binData`. The object is not cleared automatically. No text decoding or
|
|
3678
|
+
* line-ending conversion is performed.
|
|
3679
|
+
*
|
|
3680
|
+
* When {@link Ftp2.restartNext} is `true`, the current byte count in `binData` is used as the
|
|
3681
|
+
* resume offset and only the remaining remote bytes are appended.
|
|
3682
|
+
*
|
|
3683
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3684
|
+
* {@link Ftp2.getFileBdAsync}.
|
|
3685
|
+
*
|
|
3686
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3687
|
+
* {@link Ftp2.lastErrorText}.
|
|
3688
|
+
*/
|
|
3689
|
+
getFileBd(remoteFilePath: string, binData: BinData): void
|
|
3690
|
+
|
|
3691
|
+
/**
|
|
3692
|
+
* Asynchronous form of {@link Ftp2.getFileBd}: the same call on a native worker thread,
|
|
3693
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3694
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3695
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3696
|
+
*
|
|
3697
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3698
|
+
* {@link Ftp2.lastErrorText}.
|
|
3699
|
+
*/
|
|
3700
|
+
getFileBdAsync(remoteFilePath: string, binData: BinData): Promise<void>
|
|
3701
|
+
|
|
3702
|
+
/**
|
|
3703
|
+
* Downloads the remote file at `remoteFilePath`, decodes its bytes using the charset named by
|
|
3704
|
+
* `charset`, and appends the resulting text to the existing contents of the `StringBuilder` in
|
|
3705
|
+
* `sb`. The destination is not cleared automatically.
|
|
3706
|
+
*
|
|
3707
|
+
* A byte-order mark for the selected encoding is recognized and removed from the decoded text.
|
|
3708
|
+
* Invalid byte sequences are replaced during decoding rather than causing the transfer itself to
|
|
3709
|
+
* fail.
|
|
3710
|
+
*
|
|
3711
|
+
* When {@link Ftp2.restartNext} is `true`, the existing destination content is used to determine
|
|
3712
|
+
* the resume offset, and the remaining decoded content is appended.
|
|
3713
|
+
*
|
|
3714
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3715
|
+
* {@link Ftp2.getFileSbAsync}.
|
|
3716
|
+
*
|
|
3717
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3718
|
+
* {@link Ftp2.lastErrorText}.
|
|
3719
|
+
*/
|
|
3720
|
+
getFileSb(remoteFilePath: string, charset: string, sb: StringBuilder): void
|
|
3721
|
+
|
|
3722
|
+
/**
|
|
3723
|
+
* Asynchronous form of {@link Ftp2.getFileSb}: the same call on a native worker thread,
|
|
3724
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3725
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3726
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3727
|
+
*
|
|
3728
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3729
|
+
* {@link Ftp2.lastErrorText}.
|
|
3730
|
+
*/
|
|
3731
|
+
getFileSbAsync(remoteFilePath: string, charset: string, sb: StringBuilder): Promise<void>
|
|
3732
|
+
|
|
3733
|
+
/**
|
|
3734
|
+
* Uploads the bytes contained in the `BinData` object in `binData` to the remote path at
|
|
3735
|
+
* `remoteFilePath`. No character encoding or line-ending conversion is performed.
|
|
3736
|
+
*
|
|
3737
|
+
* Uses the FTP `STOR` command. A normal upload creates a missing remote file or truncates and
|
|
3738
|
+
* replaces an existing one. Chilkat does not create missing remote parent directories and does
|
|
3739
|
+
* not upload through a temporary remote name followed by an atomic rename.
|
|
3740
|
+
*
|
|
3741
|
+
* {@link Ftp2.restartNext} can be used to upload only the bytes beyond the existing remote size.
|
|
3742
|
+
*
|
|
3743
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3744
|
+
* {@link Ftp2.putFileBdAsync}.
|
|
3745
|
+
*
|
|
3746
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3747
|
+
* {@link Ftp2.lastErrorText}.
|
|
3748
|
+
*/
|
|
3749
|
+
putFileBd(binData: BinData, remoteFilePath: string): void
|
|
3750
|
+
|
|
3751
|
+
/**
|
|
3752
|
+
* Asynchronous form of {@link Ftp2.putFileBd}: the same call on a native worker thread,
|
|
3753
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3754
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3755
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3756
|
+
*
|
|
3757
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3758
|
+
* {@link Ftp2.lastErrorText}.
|
|
3759
|
+
*/
|
|
3760
|
+
putFileBdAsync(binData: BinData, remoteFilePath: string): Promise<void>
|
|
3761
|
+
|
|
3762
|
+
/**
|
|
3763
|
+
* Encodes the text in the `StringBuilder` `sb` using the charset named by `charset` and uploads
|
|
3764
|
+
* it to the remote path at `remoteFilePath`. When `includeBom` is `true`, a byte-order mark is
|
|
3765
|
+
* included when the selected encoding defines one.
|
|
3766
|
+
*
|
|
3767
|
+
* Uses the FTP `STOR` command. A normal upload creates a missing remote file or truncates and
|
|
3768
|
+
* replaces an existing one. Chilkat does not create missing remote parent directories and does
|
|
3769
|
+
* not upload through a temporary remote name followed by an atomic rename.
|
|
3770
|
+
*
|
|
3771
|
+
* {@link Ftp2.restartNext} can be used for a resumed upload when the existing remote content and
|
|
3772
|
+
* encoded byte sequence are compatible.
|
|
3773
|
+
*
|
|
3774
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3775
|
+
* {@link Ftp2.putFileSbAsync}.
|
|
3776
|
+
*
|
|
3777
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3778
|
+
* {@link Ftp2.lastErrorText}.
|
|
3779
|
+
*/
|
|
3780
|
+
putFileSb(sb: StringBuilder, charset: string, includeBom: boolean, remoteFilePath: string): void
|
|
3781
|
+
|
|
3782
|
+
/**
|
|
3783
|
+
* Asynchronous form of {@link Ftp2.putFileSb}: the same call on a native worker thread,
|
|
3784
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3785
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3786
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3787
|
+
*
|
|
3788
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3789
|
+
* {@link Ftp2.lastErrorText}.
|
|
3790
|
+
*/
|
|
3791
|
+
putFileSbAsync(sb: StringBuilder, charset: string, includeBom: boolean, remoteFilePath: string): Promise<void>
|
|
3792
|
+
|
|
3793
|
+
/**
|
|
3794
|
+
* Downloads the remote file at `remoteFilePath` and writes its bytes to the `Stream` in
|
|
3795
|
+
* `toStream`.
|
|
3796
|
+
*
|
|
3797
|
+
* For a synchronous call, `toStream` must be configured with a destination sink before the method
|
|
3798
|
+
* begins. For an asynchronous call, application code may read from the stream while the
|
|
3799
|
+
* background download produces data.
|
|
3800
|
+
*
|
|
3801
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3802
|
+
* {@link Ftp2.getFileToStreamAsync}.
|
|
3803
|
+
*
|
|
3804
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3805
|
+
* {@link Ftp2.lastErrorText}.
|
|
3806
|
+
*/
|
|
3807
|
+
getFileToStream(remoteFilePath: string, toStream: Stream): void
|
|
3808
|
+
|
|
3809
|
+
/**
|
|
3810
|
+
* Asynchronous form of {@link Ftp2.getFileToStream}: the same call on a native worker thread,
|
|
3811
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3812
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3813
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3814
|
+
*
|
|
3815
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3816
|
+
* {@link Ftp2.lastErrorText}.
|
|
3817
|
+
*/
|
|
3818
|
+
getFileToStreamAsync(remoteFilePath: string, toStream: Stream): Promise<void>
|
|
3819
|
+
|
|
3820
|
+
/**
|
|
3821
|
+
* Copies the password from the `SecureString` in `password` for subsequent FTP authentication.
|
|
3822
|
+
* This avoids exposing the password as an ordinary immutable language string. It is equivalent to
|
|
3823
|
+
* setting {@link Ftp2.password} for login behavior.
|
|
3824
|
+
*
|
|
3825
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3826
|
+
* {@link Ftp2.lastErrorText}.
|
|
3827
|
+
*/
|
|
3828
|
+
setSecurePassword(password: SecureString): void
|
|
3829
|
+
|
|
3830
|
+
/**
|
|
3831
|
+
* Appends to the `StringTable` in `strTable` the relative paths affected by the most recent
|
|
3832
|
+
* synchronization operation. Existing entries in `strTable` are preserved.
|
|
3833
|
+
*
|
|
3834
|
+
* The appended paths include files uploaded, downloaded, or deleted by {@link
|
|
3835
|
+
* Ftp2.syncDeleteRemote}, {@link Ftp2.syncLocalDir}, {@link Ftp2.syncLocalTree}, {@link
|
|
3836
|
+
* Ftp2.syncRemoteTree}, or {@link Ftp2.syncRemoteTree2}. When a successful preview has no
|
|
3837
|
+
* candidates, no placeholder or empty-string entry is appended.
|
|
3838
|
+
*/
|
|
3839
|
+
getSyncedFiles(strTable: StringTable): void
|
|
3840
|
+
|
|
3841
|
+
/**
|
|
3842
|
+
* Loads into the `Cert` object in `cert` the leaf certificate presented on the currently
|
|
3843
|
+
* connected FTPS control channel.
|
|
3844
|
+
*
|
|
3845
|
+
* The method requires an active TLS control connection. A protected data connection does not
|
|
3846
|
+
* replace the control-channel certificate returned here, and the certificate is not retained for
|
|
3847
|
+
* retrieval after {@link Ftp2.disconnect}.
|
|
3848
|
+
*
|
|
3849
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3850
|
+
* {@link Ftp2.lastErrorText}.
|
|
3851
|
+
*/
|
|
3852
|
+
getServerCert(cert: Cert): void
|
|
3853
|
+
|
|
3854
|
+
/**
|
|
3855
|
+
* Appends the bytes in the `BinData` object `bd` to the remote file at `remoteFilename`. No text
|
|
3856
|
+
* encoding or line-ending conversion is performed.
|
|
3857
|
+
*
|
|
3858
|
+
* Uses the FTP `APPE` command. On servers with normal APPE behavior, a missing remote file is
|
|
3859
|
+
* created and an existing file is extended. A failed or interrupted append can leave the bytes
|
|
3860
|
+
* already accepted by the server in place; the operation is not transactional.
|
|
3861
|
+
*
|
|
3862
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3863
|
+
* {@link Ftp2.appendFileBdAsync}.
|
|
3864
|
+
*
|
|
3865
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3866
|
+
* {@link Ftp2.lastErrorText}.
|
|
3867
|
+
*/
|
|
3868
|
+
appendFileBd(remoteFilename: string, bd: BinData): void
|
|
3869
|
+
|
|
3870
|
+
/**
|
|
3871
|
+
* Asynchronous form of {@link Ftp2.appendFileBd}: the same call on a native worker thread,
|
|
3872
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3873
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3874
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3875
|
+
*
|
|
3876
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3877
|
+
* {@link Ftp2.lastErrorText}.
|
|
3878
|
+
*/
|
|
3879
|
+
appendFileBdAsync(remoteFilename: string, bd: BinData): Promise<void>
|
|
3880
|
+
|
|
3881
|
+
/**
|
|
3882
|
+
* Encodes the text in the `StringBuilder` `sb` using the charset named by `charset` and appends
|
|
3883
|
+
* the resulting bytes to the remote file at `remoteFilename`.
|
|
3884
|
+
*
|
|
3885
|
+
* Uses the FTP `APPE` command. On servers with normal APPE behavior, a missing remote file is
|
|
3886
|
+
* created and an existing file is extended. A failed or interrupted append can leave the bytes
|
|
3887
|
+
* already accepted by the server in place; the operation is not transactional.
|
|
3888
|
+
*
|
|
3889
|
+
* This call blocks the JavaScript thread until Chilkat returns; from UI code prefer
|
|
3890
|
+
* {@link Ftp2.appendFileSbAsync}.
|
|
3891
|
+
*
|
|
3892
|
+
* @throws Error if the call fails (the message names the reason); the full log is in
|
|
3893
|
+
* {@link Ftp2.lastErrorText}.
|
|
3894
|
+
*/
|
|
3895
|
+
appendFileSb(remoteFilename: string, sb: StringBuilder, charset: string): void
|
|
3896
|
+
|
|
3897
|
+
/**
|
|
3898
|
+
* Asynchronous form of {@link Ftp2.appendFileSb}: the same call on a native worker thread,
|
|
3899
|
+
* settling on the JavaScript thread. While it is pending, other calls on this object throw,
|
|
3900
|
+
* except {@link Ftp2.abort} (which cancels it) and the {@link Ftp2.onPercentDone} /
|
|
3901
|
+
* {@link Ftp2.onProgressInfo} callbacks, which report progress while it runs.
|
|
3902
|
+
*
|
|
3903
|
+
* The promise rejects with an Error if the call fails; the full log is in
|
|
3904
|
+
* {@link Ftp2.lastErrorText}.
|
|
3905
|
+
*/
|
|
3906
|
+
appendFileSbAsync(remoteFilename: string, sb: StringBuilder, charset: string): Promise<void>
|
|
3907
|
+
|
|
3908
|
+
/**
|
|
3909
|
+
* Copies structured supplemental JSON produced by the immediately preceding method into the
|
|
3910
|
+
* `JsonObject` in `json`. TLS connection and protected data-connection operations can populate
|
|
3911
|
+
* information such as the negotiated TLS version.
|
|
3912
|
+
*
|
|
3913
|
+
* The data is transient. A later method may replace it or clear it to an empty object, including
|
|
3914
|
+
* ordinary commands such as `NOOP`, raw commands, or {@link Ftp2.disconnect}. Call this method
|
|
3915
|
+
* immediately after the operation whose details are needed.
|
|
3916
|
+
*/
|
|
3917
|
+
getLastJsonData(json: JsonObject): void
|
|
3918
|
+
|
|
3919
|
+
// ---- Events (ReactNativeGen_DESIGN.md §6) ----
|
|
3920
|
+
|
|
3921
|
+
/**
|
|
3922
|
+
* Called with the percent completed (0..100) while a long-running method runs, when Chilkat
|
|
3923
|
+
* can measure progress. Runs on the JavaScript thread, so it is only useful with the
|
|
3924
|
+
* `...Async` methods (during a synchronous call the thread is busy and the events arrive
|
|
3925
|
+
* after it returns). Assign `undefined` to remove.
|
|
3926
|
+
*/
|
|
3927
|
+
onPercentDone?: (pctDone: number) => void
|
|
3928
|
+
|
|
3929
|
+
/**
|
|
3930
|
+
* Called with a name/value pair of progress information while a long-running method runs
|
|
3931
|
+
* (what is reported depends on the class and method). Runs on the JavaScript thread; see
|
|
3932
|
+
* {@link Ftp2.onPercentDone}. Assign `undefined` to remove.
|
|
3933
|
+
*/
|
|
3934
|
+
onProgressInfo?: (name: string, value: string) => void
|
|
3935
|
+
|
|
3936
|
+
/**
|
|
3937
|
+
* Requests that the pending `...Async` call on this object stop at its next progress check.
|
|
3938
|
+
* The promise then rejects with Chilkat's abort error. Chilkat checks at least every
|
|
3939
|
+
* `heartbeatMs` milliseconds on the classes that have that property, so set it (e.g. 250)
|
|
3940
|
+
* for a responsive cancel. Harmless when nothing is pending.
|
|
3941
|
+
*/
|
|
3942
|
+
abort(): void
|
|
3943
|
+
}
|