class EL_FTP_COPY_TREE_COMMAND_I
Copy local to remote directory with the Unix lftp command
note
description: "[
Copy local to remote directory with the Unix [https://linux.die.net/man/1/lftp lftp command]
]"
author: "Finnian Reilly"
copyright: "Copyright (c) 2001-2022 Finnian Reilly"
contact: "finnian at eiffel hyphen loop dot com"
license: "MIT license (See: en.wikipedia.org/wiki/MIT_License)"
date: "2025-03-28 15:33:07 GMT (Friday 28th March 2025)"
revision: "1"
deferred class
EL_FTP_COPY_TREE_COMMAND_I
inherit
EL_MIRROR_TREE_COMMAND_I
rename
make_backup as make_tree_backup
redefine
getter_function_table
end
EL_SHARED_ESCAPE_TABLE
feature {NONE} -- Initialization
make_backup (config: EL_FTP_MIRROR_BACKUP; target_dir_base: ZSTRING)
do
make_default
destination_path := config.backup_dir #+ target_dir_base
host := config.host; user := config.user passphrase := config.passphrase
end
feature -- Access
host: STRING
passphrase: ZSTRING
user: ZSTRING
feature {NONE} -- Evolicity reflection
getter_function_table: like getter_functions
--
do
Result := Precursor
Result.append_tuples (<<
["pass", agent: ZSTRING do Result := passphrase.escaped (Bash_escaper) end],
["source_path", agent: ZSTRING do Result := source_path end], -- unescaped path
["destination_path", agent: ZSTRING do Result := destination_path end] -- unescaped path
>>)
end
feature {NONE} -- Constants
Bash_escaper: EL_STRING_ESCAPER [ZSTRING]
once
create Result.make (Escape_table.Bash)
end
end