Source: factory.core/ObjFtp.py
| Method | Signature | Description |
|---|---|---|
| Connect | Connect(site: str = 'localhost', user: str = '', password: str = '', port: int = 22) -> bool |
|
| set_remote_zip | set_remote_zip(remote_zip: str) -> None |
|
| connect_remote | connect_remote(remote: str = '') -> Union[bool, str] |
|
| Close | Close() -> None |
|
| Exist | Exist(destination: str) -> int |
|
| DateFromEpoch | DateFromEpoch(epoch_time: float) -> str |
|
| FileListAttr | FileListAttr(directory: str = '', file_type: str = '') -> List[Tuple[str, int, str]] |
|
| FileList | FileList(directory: str = '') -> List[str] |
|
| DirList | DirList(directory: str = '') -> Union[List[str], None] |
|
| DownloadDir | DownloadDir(directory: str = '.', remote_folder: str = 'data', file_filter: str = '', unlink_after_download: int = 0) -> None |
|
| UploadDir | UploadDir(directory: str, local_folder: str = 'data', file_filter: str = '', unlink_after_upload: int = 0, zip_files: int = 0, zip_folder: int = 0, zip_folder_name: str = '') -> None |
|
| UpdateScan | UpdateScan(directory: str = '.', folder: str = 'data', file_filter: str = '') -> None |
|
| update_scan_set | update_scan_set(directory: str = '.', folder: str = 'data', file_filter: str = '', unlink: int = 0) -> None |
|
| upload_action | upload_action(directory: str = '.', folder: str = 'data', file_filter: str = '', work_folder: str = '', backup_uploads: str = 'Y', unlink: int = 0) -> None |
|
| DownloadSet | DownloadSet(directory: str = '.', folder: str = 'data', file_filter: str = '', unlink: int = 0) -> None |
|
| Action | Action(service_code: str) -> None |
|
| select_action | select_action() -> None |
|
| ensure_connection | ensure_connection(connection: str) -> tuple[bool, str] |
Ensures a live FTP/SFTP connection using: |
| check_poll_backoff | check_poll_backoff(tracking_table: str, backoff_min: int) -> tuple[bool, float] |
Checks whether polling is allowed based on backoff rules. |
| process_remote_files | process_remote_files(remote_path: str, local_path: str, tracking_table: str, file_filter: str = '', backoff_min: int = 0) -> list[str] |
Lists remote files, filters them, downloads new ones, |
| poll | poll(connection: str, remote_path: str, local_path: str, file_filter: str = '', tracking_table: str = FtpConstants.TRACKING_TABLE, backoff_min: int = FtpConstants.POLL_BACKOFF_MIN, backoff_max: int = FtpConstants.POLL_BACKOFF_MAX, alert_after_hours: int = FtpConstants.POLL_ALERT_AFTER_HOURS, deadline_hour: int | None = None) -> list[str] |
Smart SFTP poll with backoff and tracking. |
| poll_mark_done | poll_mark_done(local_file: str, tracking_table: str = FtpConstants.TRACKING_TABLE, error: str = '') -> None |
Mark a polled file as processed. |
| run_query | run_query(query_name: str, placeholders: dict = None) |
Run FTP interactive action selection.
Connect to TRADERFTP for zip operations.
Run TRADER cloud FTP action.