def upload_parameters( keys )
keys = OpenObject.new(keys)
keys.copy = keys.copy || '**/*'
keys.host = keys.host || keys.domain
keys.user = keys.user || keys.username
keys.root = keys.root || '/'
raise ArgumentError, "missing publish parameter -- dir" unless keys.dir
raise ArgumentError, "missing publish parameter -- host" unless keys.host
raise ArgumentError, "missing publish parameter -- user" unless keys.user
keys.root = '' if keys.root.nil?
keys.root.sub!(/^\//,'')
if String===keys.copy and File.directory?(keys.copy)
copy = File.join(keys.copy, '*')
end
keys.copy = [keys.copy].flatten.compact
return keys
end