Qore Programming Language Reference Manual  1.6.0
QC_FtpClient.dox.h
1 
3 namespace Qore {
5 
9  int code;
11  string msg;
12 };
13 }
14 
16 namespace Qore {
18 
98 class FtpClient {
99 
100 public:
102 
111  clearStats();
112 
113 public:
115 
124 nothing clearWarningQueue();
125 
126 public:
128 
145 nothing connect();
146 
147 public:
149 
154  constructor();
155 
156 public:
158 
170  constructor(string url);
171 
172 public:
174 
176  copy();
177 
178 public:
180 
193 nothing cwd(string path);
194 
195 public:
197 
212 nothing del(string remote_path);
213 
214 public:
216 
224  destructor();
225 
226 public:
228 
236 nothing disconnect();
237 
238 public:
240 
264 nothing get(string remote_path, *string local_path);
265 
266 public:
268 
288 nothing get(string remote_path, Qore::OutputStream os);
289 
290 public:
292 
312 binary getAsBinary(string remote_path);
313 
314 public:
316 
340 string getAsString(string remote_path, *string encoding);
341 
342 public:
344 
360 hash<auto> getControlPeerInfo(bool host_lookup = True);
361 
362 public:
364 
380 hash<auto> getControlSocketInfo(bool host_lookup = True);
381 
382 public:
384 
400 hash<auto> getDataPeerInfo(bool host_lookup = True);
401 
402 public:
404 
420 hash<auto> getDataSocketInfo(bool host_lookup = True);
421 
422 public:
424 
431 *string getHostName();
432 
433 public:
435 
445 string getMode();
446 
447 public:
449 
461 int getNetworkFamily();
462 
463 public:
465 
472 *string getPassword();
473 
474 public:
476 
483 int getPort();
484 
485 public:
487 
498 *string getSSLCipherName();
499 
500 public:
502 
513 *string getSSLCipherVersion();
514 
515 public:
517 
524 int getTimeout();
525 
526 public:
528 
535 string getURL();
536 
537 public:
539 
561 
562 public:
564 
571 *string getUserName();
572 
573 public:
575 
586 bool isDataSecure();
587 
588 public:
590 
600 bool isSecure();
601 
602 public:
604 
621 *string list();
622 
623 public:
625 
644 *string list(string path);
645 
646 public:
648 
663 nothing mkdir(string remote_path);
664 
665 public:
667 
684 *string nlst();
685 
686 public:
688 
707 *string nlst(string path);
708 
709 public:
711 
734 nothing put(string local_path, *string remote_path);
735 
736 public:
738 
758 nothing put(Qore::InputStream is, string remote_path);
759 
760 public:
762 
778 nothing putData(string data, string remote_path);
779 
780 public:
782 
798 nothing putData(binary data, string remote_path);
799 
800 public:
802 
817 string pwd();
818 
819 public:
821 
837 nothing rename(string from, string to);
838 
839 public:
841 
856 nothing rmdir(string remote_path);
857 
858 public:
860 
869 hash<FtpResponseInfo> sendControlMessage(string cmd, string arg);
870 
871 public:
873 
878 nothing setControlEventQueue();
879 
880 public:
882 
897 nothing setControlEventQueue(Qore::Thread::Queue queue, auto arg, *bool with_data);
898 
899 public:
901 
906 nothing setDataEventQueue();
907 
908 public:
910 
925 nothing setDataEventQueue(Qore::Thread::Queue queue, auto arg, *bool with_data);
926 
927 public:
929 
934 nothing setEventQueue();
935 
936 public:
938 
953 nothing setEventQueue(Qore::Thread::Queue queue, auto arg, *bool with_data);
954 
955 public:
957 
964 nothing setHostName(string host);
965 
966 public:
968 
975 nothing setInsecure();
976 
977 public:
979 
987 nothing setInsecureData();
988 
989 public:
991 
996 nothing setModeAuto();
997 
998 public:
1000 
1005 nothing setModeEPSV();
1006 
1007 public:
1009 
1014 nothing setModePASV();
1015 
1016 public:
1018 
1023 nothing setModePORT();
1024 
1025 public:
1027 
1038 nothing setNetworkFamily(int family);
1039 
1040 public:
1042 
1049 nothing setPassword(string pass);
1050 
1051 public:
1053 
1062 nothing setPort(int port);
1063 
1064 public:
1066 
1075 nothing setSecure(bool secure = True);
1076 
1077 public:
1079 
1083  setTimeout(timeout timeout_ms);
1084 
1085 public:
1087 
1099 nothing setURL(string url);
1100 
1101 public:
1103 
1110 nothing setUserName(string user);
1111 
1112 public:
1114 
1146 nothing setWarningQueue(int warning_ms, int warning_bs, Queue queue, auto arg, timeout min_ms = 1s);
1147 
1148 public:
1150 
1161 *string verifyPeerCertificate();
1162 };
1163 }
nothing setControlEventQueue()
Clears any Queue object that may be set on the FtpClient object so that I/O events are no longer capt...
int getNetworkFamily()
Returns the network address family to use for new connections.
string getURL()
Retrieves the current connection URL string for this object.
copy()
Throws an exception to prevent copying of objects this class.
nothing setModeEPSV()
Sets the object to only try to make data connections using EPSV (RFC-2428 extended passive) mode...
*string nlst()
Returns a list of file names from the FTP server in the current working directory or NOTHING if the p...
hash< auto > getControlSocketInfo(bool host_lookup=True)
Returns information about the local control socket as a hash.
nothing disconnect()
Disconnects from an FTP server.
nothing setHostName(string host)
Sets the hostname or address to use to connect to for the next connection.
nothing setModePASV()
Sets the object to only try to make data connections using PASV (RFC-959 passive) mode...
hash< FtpResponseInfo > sendControlMessage(string cmd, string arg)
Sends a message on the control connection with a reply on the control connection only.
setTimeout(timeout timeout_ms)
sets the socket I/O timeout value in milliseconds
const True
logical True
Definition: qc_qore.dox.h:98
nothing setSecure(bool secure=True)
Make an FTPS connection to the server on the next connect if the argument is True.
*string getSSLCipherVersion()
Returns the version of the cipher for an encrypted connection or NOTHING if an encrypted connection i...
binary binary()
Always returns an empty binary object (of zero length)
The FtpClient class allows Qore code to communicate with FTP servers with the FTP and FTPS protocols...
Definition: QC_FtpClient.dox.h:98
hash< auto > getDataSocketInfo(bool host_lookup=True)
Returns information about the local data socket as a hash.
*string getSSLCipherName()
Returns the name of the cipher for an encrypted connection or NOTHING if an encrypted connection is n...
int getTimeout()
returns the socket I/O timeout value as an integer in milliseconds
A hash describing a free-form FTP control response.
Definition: QC_FtpClient.dox.h:7
nothing rmdir(string remote_path)
Removes a directory on the remote FTP server; if any errors occur, an exception is thrown...
hash< auto > getControlPeerInfo(bool host_lookup=True)
Returns information about the remote end of the control socket as a hash.
nothing clearWarningQueue()
Removes any warning Queue object from the Socket.
nothing setEventQueue()
Clears any Queue object that may be set on the FtpClient object so that I/O events are no longer capt...
nothing connect()
Connects to the FTP server and attempts a login; if any errors occur, an exception is thrown...
nothing setModePORT()
Sets the object to only try to make data connections using PORT mode.
string pwd()
Returns the server-side current working directory.
*string list()
Returns a list of files from the FTP server in the server&#39;s long format in the current working direct...
This class defines an abstract interface for output streams.
Definition: QC_OutputStream.dox.h:18
clearStats()
Clears performance statistics.
nothing setNetworkFamily(int family)
Sets the network address family to use for new connections; use this method to restrict connections t...
*string verifyPeerCertificate()
Returns a string code giving the result of verifying the remote certificate or NOTHING if an encrypte...
string getMode()
returns a string for the connection mode: "port", "pasv", "epsv", or "auto" if not connected and auto...
*string getPassword()
Returns the current password value or NOTHING if none is set.
string getAsString(string remote_path, *string encoding)
Gets a file from the FTP server and returns it as a string.
nothing setUserName(string user)
Sets the user name to use for the next connection.
nothing setURL(string url)
Sets the connection and login parameters based on the URL passed as an argument.
binary getAsBinary(string remote_path)
Gets a file from the FTP server and returns it as a binary.
hash getUsageInfo()
Returns performance statistics for the socket.
nothing setPassword(string pass)
Sets the password to use for the next connection.
hash< auto > hash(object obj)
Returns a hash of an object&#39;s members.
int getPort()
Retrieves the current connection port value for this object.
nothing mkdir(string remote_path)
Creates a directory on the FTP server; if any errors occur, an exception is thrown.
bool isSecure()
Returns True if the control connection is a secure TLS/SSL connection, False if not.
nothing setPort(int port)
Sets the control port value to use for the next connection (the FTP protocol default is 21) ...
Queue objects provide a blocking, thread-safe message-passing object to Qore programs ...
Definition: QC_Queue.dox.h:22
destructor()
Disconnects any remote connection and destroys the object.
nothing setWarningQueue(int warning_ms, int warning_bs, Queue queue, auto arg, timeout min_ms=1s)
Sets a Queue object to receive socket warnings.
string msg
The response message string.
Definition: QC_FtpClient.dox.h:11
nothing setModeAuto()
Sets the object to automatically try to negotiate the data connections in EPSV, PASV, and PORT modes, in that order.
nothing putData(string data, string remote_path)
Transfers string data to the FTP server and saves it as a file on the remote machine; if any errors o...
main Qore-language namespace
Definition: Pseudo_QC_All.dox.h:3
This class defines an abstract interface for input streams.
Definition: QC_InputStream.dox.h:19
constructor()
Creates an empty FtpClient object.
nothing setInsecureData()
Make a non-encrypted data connection to the server on the next connect even if the control connection...
*string getHostName()
Returns the current hostname value or NOTHING if none is set.
nothing setDataEventQueue()
Clears any Queue object that may be set on the FtpClient object so that I/O events are no longer capt...
bool isDataSecure()
Returns True if the data connections are secure TLS/SSL connections, False if not.
nothing cwd(string path)
Changes the current working directory on the server.
nothing del(string remote_path)
Deletes a file from the FTP server; if any errors occur, an exception is thrown.
nothing rename(string from, string to)
Renames/moves a file or directory; if any errors occur, an exception is thrown.
hash< auto > getDataPeerInfo(bool host_lookup=True)
Returns information about the remote data socket as a hash.
nothing put(string local_path, *string remote_path)
Transfers a local file to the FTP server; if any errors occur, an exception is thrown.
int code
The integer response code.
Definition: QC_FtpClient.dox.h:9
nothing setInsecure()
Make a non-encrypted connection to the server on the next connect.
*string getUserName()
Returns the current username value or NOTHING if none is set.