# shellcheck shell=dash

___x_cmd_hub_file___localfp_is_exist(){
    local localfp="$1"
    [ -n "$localfp" ] || M='Provide local file path' N=hub log:ret:64
    [ -f "$localfp" ] || {  ___x_cmd_ui_tf false "$localfp not a file or diractory " >&2 ; return 1; }
}

# aaa             => me:aaa
# aaa    user1:   => user1:aaa
# p/aaa  ccc/     => me:ccc/aaa
# p/aaa  ccc/bbb  => me:ccc/bbb
___x_cmd_hub_file___remotefp(){
    local localfp="$1"
    local remotefp="$2"

    local filename="${localfp##*/}"
    [ -n "$remotefp" ] || remotefp="$filename"
    if [ "${remotefp%/}" != "$remotefp" ] || [ "${remotefp%":"}" != "$remotefp" ] ; then
        remotefp="${remotefp}${filename}"
    fi
    ___x_cmd_hub_file_normalize_remotefp "$remotefp"
}

___x_cmd_hub_file_update(){
    local X_help_cmd='___x_cmd_hub___help file update'
    help:arg-null:parse
    NO_CACHE=true ___x_cmd_hub_file_which_ "$1" || return 1
    ___x_cmd_ui_tf true "Successfully updated file $1"
}