Public Member Functions | |
curl_transfer (void) | |
curl_transfer (const std::string &host, const std::string &user_arg, const std::string &passwd, std::ostream &os) | |
curl_transfer (const std::string &url_str, std::ostream &os) | |
curl_transfer (const curl_transfer &)=delete | |
~curl_transfer (void) | |
void | ascii (void) |
void | binary (void) |
void | cwd (const std::string &path) |
void | del (const std::string &file) |
void | dir (void) |
void | get (const std::string &file, std::ostream &os) |
void | get_fileinfo (const std::string &filename, double &filesize, time_t &filetime, bool &fileisdir) |
bool | good (void) const |
void | http_action (const Array< std::string > ¶m, const std::string &action) |
void | http_get (const Array< std::string > ¶m) |
void | http_post (const Array< std::string > ¶m) |
bool | is_ascii (void) const |
bool | is_binary (void) const |
bool | is_valid (void) const |
std::string | lasterror (void) const |
string_vector | list (void) |
void | mget_directory (const std::string &directory, const std::string &target) |
void | mkdir (const std::string &path) |
string_vector | mput_directory (const std::string &base, const std::string &directory) |
curl_transfer & | operator= (const curl_transfer &)=delete |
void | perform (void) |
void | put (const std::string &file, std::istream &is) |
std::string | pwd (void) |
void | rename (const std::string &oldname, const std::string &newname) |
void | rmdir (const std::string &path) |
std::istream & | set_istream (std::istream &is) |
std::ostream & | set_ostream (std::ostream &os) |
Protected Attributes | |
bool | ascii_mode |
std::istream * | curr_istream |
std::ostream * | curr_ostream |
std::string | errmsg |
bool | ftp |
std::string | host_or_url |
bool | ok |
bool | valid |
Private Member Functions | |
std::string | form_query_string (const Array< std::string > ¶m) |
void | ftp_file_or_dir_action (const std::string &file_or_dir, const std::string &action) |
void | init (const std::string &user, const std::string &passwd, std::istream &is, std::ostream &os) |
Private Attributes | |
CURL * | curl |
CURLcode | errnum |
std::string | url |
std::string | userpwd |
Definition at line 277 of file url-transfer.cc.
|
inline |
Definition at line 281 of file url-transfer.cc.
References curl, octave::base_url_transfer::errmsg, and octave::base_url_transfer::valid.
|
inline |
Definition at line 291 of file url-transfer.cc.
References curl, octave::base_url_transfer::errmsg, init(), os, perform(), SETOPT, url, and octave::base_url_transfer::valid.
|
inline |
Definition at line 313 of file url-transfer.cc.
References curl, octave::base_url_transfer::errmsg, octave::sys::env::getenv(), init(), os, SETOPT, string, and octave::base_url_transfer::valid.
|
delete |
|
inline |
Definition at line 350 of file url-transfer.cc.
References curl.
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 392 of file url-transfer.cc.
References octave::base_url_transfer::ascii_mode, and SETOPT.
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 398 of file url-transfer.cc.
References octave::base_url_transfer::ascii_mode, and SETOPT.
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 404 of file url-transfer.cc.
References ftp_file_or_dir_action().
Referenced by get_fileinfo().
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 409 of file url-transfer.cc.
References file, and ftp_file_or_dir_action().
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 480 of file url-transfer.cc.
References octave::base_url_transfer::good(), octave::base_url_transfer::host_or_url, perform(), SETOPT, and url.
|
inlineprivate |
Definition at line 726 of file url-transfer.cc.
References curl, i, name, Array< T >::numel(), param, and string.
Referenced by http_get(), and http_post().
|
inlineprivate |
Definition at line 755 of file url-transfer.cc.
References octave::action_container::add_fcn(), frame, octave::base_url_transfer::good(), perform(), SETOPT, and string.
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 463 of file url-transfer.cc.
References file, octave::base_url_transfer::good(), octave::base_url_transfer::host_or_url, os, perform(), set_ostream(), SETOPT, and url.
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 543 of file url-transfer.cc.
References curl, cwd(), filename, fs, octave::base_url_transfer::good(), octave::base_url_transfer::host_or_url, perform(), pwd(), SETOPT, string, octave::throw_away(), url, and octave::write_data().
|
inlineinherited |
Definition at line 88 of file url-transfer.h.
Referenced by dir(), ftp_file_or_dir_action(), get(), get_fileinfo(), list(), octave::base_url_transfer::mget_directory(), octave::base_url_transfer::mput_directory(), put(), pwd(), and rename().
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 649 of file url-transfer.cc.
References octave::base_url_transfer::errmsg, http_get(), http_post(), octave::base_url_transfer::ok, and param.
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 624 of file url-transfer.cc.
References form_query_string(), octave::base_url_transfer::host_or_url, param, perform(), SETOPT, string, and url.
Referenced by http_action().
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 638 of file url-transfer.cc.
References form_query_string(), octave::base_url_transfer::host_or_url, param, perform(), SETOPT, and string.
Referenced by http_action().
|
inlineprivate |
Definition at line 686 of file url-transfer.cc.
References is, os, octave::read_data(), SETOPT, userpwd, and octave::write_data().
Referenced by curl_transfer().
|
inlineinherited |
Definition at line 108 of file url-transfer.h.
|
inlineinherited |
Definition at line 110 of file url-transfer.h.
|
inlineinherited |
Definition at line 86 of file url-transfer.h.
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 371 of file url-transfer.cc.
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 495 of file url-transfer.cc.
References octave::base_url_transfer::curr_ostream, octave::base_url_transfer::good(), octave::base_url_transfer::host_or_url, i, perform(), octave_value::resize(), retval, SETOPTR, str, string, and url.
|
inherited |
Definition at line 58 of file url-transfer.cc.
References octave::action_container::add_fcn(), octave::base_url_transfer::cwd(), octave::base_url_transfer::delete_file(), octave::sys::file_ops::dir_sep_str(), directory, octave::action_container::discard(), octave::base_url_transfer::errmsg, frame, fs, octave::base_url_transfer::get_fileinfo(), octave::base_url_transfer::good(), i, octave::sys::base_file_stat::is_dir(), octave::base_url_transfer::list(), octave::sys::mkdir(), Array< T >::numel(), ofile(), octave::base_url_transfer::ok, octave::base_url_transfer::reset_path(), and string.
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 419 of file url-transfer.cc.
References ftp_file_or_dir_action().
|
inherited |
Definition at line 131 of file url-transfer.cc.
References octave::action_container::add_fcn(), string_vector::append(), octave::base_url_transfer::cwd(), octave::sys::file_ops::dir_sep_str(), directory, octave::base_url_transfer::errmsg, octave::sys::base_file_stat::exists(), file, files, frame, fs, octave::base_url_transfer::good(), i, octave::sys::base_file_stat::is_dir(), octave::base_url_transfer::mkdir(), octave::base_url_transfer::ok, octave::base_url_transfer::put(), octave::sys::dir_entry::read(), octave::base_url_transfer::reset_path(), and string.
|
delete |
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 356 of file url-transfer.cc.
References BEGIN_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE, curl, END_INTERRUPT_IMMEDIATELY_IN_FOREIGN_CODE, octave::base_url_transfer::errmsg, errnum, and octave::base_url_transfer::ok.
Referenced by curl_transfer(), dir(), ftp_file_or_dir_action(), get(), get_fileinfo(), http_get(), http_post(), list(), put(), pwd(), and rename().
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 444 of file url-transfer.cc.
References file, octave::base_url_transfer::good(), octave::base_url_transfer::host_or_url, is, perform(), set_istream(), SETOPT, and url.
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 590 of file url-transfer.cc.
References octave::action_container::add_fcn(), frame, octave::base_url_transfer::good(), perform(), retval, SETOPTR, string, and octave::write_data().
Referenced by get_fileinfo().
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 424 of file url-transfer.cc.
References octave::action_container::add_fcn(), frame, octave::base_url_transfer::good(), perform(), SETOPT, and string.
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 414 of file url-transfer.cc.
References ftp_file_or_dir_action().
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 384 of file url-transfer.cc.
References octave::base_url_transfer::curr_istream, is, retval, and SETOPTR.
Referenced by put().
|
inlinevirtual |
Reimplemented from octave::base_url_transfer.
Definition at line 376 of file url-transfer.cc.
References octave::base_url_transfer::curr_ostream, os, retval, and SETOPTR.
Referenced by get().
|
protectedinherited |
Definition at line 159 of file url-transfer.h.
|
private |
Definition at line 665 of file url-transfer.cc.
Referenced by curl_transfer(), form_query_string(), get_fileinfo(), perform(), and ~curl_transfer().
|
protectedinherited |
Definition at line 162 of file url-transfer.h.
Referenced by set_istream().
|
protectedinherited |
Definition at line 163 of file url-transfer.h.
Referenced by list(), and set_ostream().
|
protectedinherited |
Definition at line 161 of file url-transfer.h.
Referenced by curl_transfer(), http_action(), octave::base_url_transfer::mget_directory(), octave::base_url_transfer::mput_directory(), and perform().
|
private |
Definition at line 668 of file url-transfer.cc.
Referenced by lasterror(), and perform().
|
protectedinherited |
Definition at line 158 of file url-transfer.h.
|
protectedinherited |
Definition at line 156 of file url-transfer.h.
Referenced by dir(), get(), get_fileinfo(), http_get(), http_post(), list(), and put().
|
protectedinherited |
Definition at line 160 of file url-transfer.h.
Referenced by http_action(), octave::base_url_transfer::mget_directory(), octave::base_url_transfer::mput_directory(), and perform().
|
private |
Definition at line 683 of file url-transfer.cc.
Referenced by curl_transfer(), dir(), get(), get_fileinfo(), http_get(), list(), and put().
|
private |
Definition at line 684 of file url-transfer.cc.
Referenced by init().
|
protectedinherited |
Definition at line 157 of file url-transfer.h.
Referenced by curl_transfer().