{"id":13787515,"url":"https://github.com/ThomasMaul/FileTransfer_Class","last_synced_at":"2025-05-12T00:31:14.391Z","repository":{"id":49839992,"uuid":"454773951","full_name":"ThomasMaul/FileTransfer_Class","owner":"ThomasMaul","description":"Class for filetransfer with ftp/sftp/ftps via curl, dropbox and gdrive support","archived":false,"fork":false,"pushed_at":"2024-09-10T07:21:13.000Z","size":100722,"stargazers_count":6,"open_issues_count":0,"forks_count":3,"subscribers_count":6,"default_branch":"main","last_synced_at":"2024-11-18T00:37:28.210Z","etag":null,"topics":["4d-code","4d-component"],"latest_commit_sha":null,"homepage":"","language":"4D","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ThomasMaul.png","metadata":{"files":{"readme":"Readme.MD","changelog":null,"contributing":null,"funding":null,"license":"License","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-02-02T12:54:10.000Z","updated_at":"2024-09-10T07:21:49.000Z","dependencies_parsed_at":"2022-08-02T16:15:18.133Z","dependency_job_id":"3904241c-b7c6-4201-b981-41a8e96a77ea","html_url":"https://github.com/ThomasMaul/FileTransfer_Class","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThomasMaul%2FFileTransfer_Class","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThomasMaul%2FFileTransfer_Class/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThomasMaul%2FFileTransfer_Class/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ThomasMaul%2FFileTransfer_Class/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ThomasMaul","download_url":"https://codeload.github.com/ThomasMaul/FileTransfer_Class/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253655816,"owners_count":21943069,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["4d-code","4d-component"],"created_at":"2024-08-03T20:00:37.077Z","updated_at":"2025-05-12T00:31:09.375Z","avatar_url":"https://github.com/ThomasMaul.png","language":"4D","readme":"# File Transfer Class collection\n\nFTP - FTPS - SFTP(*) - HTTPS(*)  \nUsing cURL - wrapper for Mac/Win build in cURL feature  \n\nDropbox\nUsing Dropbox CLI tool (easy to deploy)\n\nGoogle Drive - GDrive\nUsing Gdrive CLI tool\n\nRclone  (NEW)\nOver 40 cloud storage products support rclone including S3 object stores, business \u0026 consumer file storage services, as well as standard transfer protocols.\n\n## Introduction\n\nThis class collection provide a similar interface for file transfer via different channels.\nSame commands/code can be used to upload/download files, create/rename/move/delete directories or files (depending of feature set) for FTP or HTTP or Dropbox or GDrive.\n\nFor FTP/FTPS/HTTPS the system build in cURL version can be used, but also overwritten with another version.\n\nFor Dropbox a CLI tool (written in Go) is used.\n\nFor GDrive a CLI tool (written in Go) is used\n\nrclone is a CLI tool (written in Go)\n\n# Usage example\n\n```4D\n// download from ftps\nvar $ftp : cs.FileTransfer_curl\n$ftp:=cs.FileTransfer_curl.new(\"ftp.4d.com\"; \"username\"; \"password\"; \"ftps\")\n\n$source:=\"/product/4D.dmg\"\n$target:=Convert path system to POSIX(System folder(Desktop))\n$result:=$ftp.download($source; $target)\n\n\n// download from https\nvar $ftp : cs.FileTransfer_curl\n$ftp:=cs.FileTransfer_curl.new(\"www.4d.com\"; \"\"; \"\"; \"https\")\n\n$source:=\"/de\"\n$target:=System folder(Desktop)+\"newtest2.html\"\n$target:=Convert path system to POSIX($target)\n$result:=$ftp.download($source; $target)\n\n\n\n// download from Dropbox\nvar $ftp : cs.FileTransfer_Dropbox\n$ftp:=cs.FileTransfer_Dropbox.new()\n\n$source:=\"/product/4D.dmg\"\n$target:=Convert path system to POSIX(System folder(Desktop))\n$result:=$ftp.download($source; $target)\n\n\n// download from GDrive\nvar $ftp : cs.FileTransfer_GDrive\n$ftp:=cs.FileTransfer_GDrive.new()\n\n$source:=\"/product/4D.dmg\"\n$target:=Convert path system to POSIX(System folder(Desktop))\n$result:=$ftp.download($source; $target)\n\n```\n# Documentation\n\n## cURL  (FTP - FTPS - SFTP - HTTP - HTTPS)\n[Documentation](Documentation/Readme_curl.MD)\n\n## Dropbox\n[Documentation](Documentation/Readme_dropbox.MD)\n\n## GDrive\n[Documentation](Documentation/Readme_GDrive.MD)\n\n## Rclone\n[Documentation](Documentation/Readme_rclone.MD)\n\n\t\t\n","funding_links":[],"categories":["4D Components"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FThomasMaul%2FFileTransfer_Class","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FThomasMaul%2FFileTransfer_Class","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FThomasMaul%2FFileTransfer_Class/lists"}