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