---------------------------------------------- -- Export file for user XPCSV Région -- -- Created by BOUSSAFI 09/03/2008 -- ---------------------------------------------- CREATE OR REPLACE PACKAGE ftp AS -- -------------------------------------------------------------------------- -- Name : http://www.oracle-base.com/dba/miscellaneous/ftp.pks -- Author : DR Timothy S Hall -- Description : Basic FTP API. For usage notes see: -- http://www.oracle-base.com/articles/9i/FTPFromPLSQL9i.php -- Requirements : UTL_TCP -- Ammedments : -- When Who What -- =========== ======== ================================================= -- 14-AUG-2003 Tim Hall Initial Creation -- 10-MAR-2004 Tim Hall Add convert_crlf procedure. -- Make get_passive function visible. -- Added get_direct and put_direct procedures. -- 03-OCT-2006 Tim Hall Add list, rename, delete, mkdir, rmdir procedures. -- 15-Jan-2008 Tim Hall login: Include timeout parameter (suggested by Dmitry Bogomolov). -- -------------------------------------------------------------------------- TYPE t_string_table IS TABLE OF VARCHAR2(32767); FUNCTION login (p_host IN VARCHAR2, p_port IN VARCHAR2, p_user IN VARCHAR2, p_pass IN VARCHAR2, p_timeout IN NUMBER := NULL) RETURN UTL_TCP.connection; FUNCTION get_passive (p_conn IN OUT NOCOPY UTL_TCP.connection) RETURN UTL_TCP.connection; PROCEDURE logout (p_conn IN OUT NOCOPY UTL_TCP.connection, p_reply IN BOOLEAN := TRUE); PROCEDURE send_command (p_conn IN OUT NOCOPY UTL_TCP.connection, p_command IN VARCHAR2, p_reply IN BOOLEAN := TRUE); FUNCTION get_local_ascii_data (p_dir IN VARCHAR2, p_file IN VARCHAR2) RETURN CLOB; FUNCTION get_local_binary_data (p_dir IN VARCHAR2, p_file IN VARCHAR2) RETURN BLOB; FUNCTION get_remote_ascii_data (p_conn IN OUT NOCOPY UTL_TCP.connection, p_file IN VARCHAR2) RETURN CLOB; FUNCTION get_remote_binary_data (p_conn IN OUT NOCOPY UTL_TCP.connection, p_file IN VARCHAR2) RETURN BLOB; PROCEDURE put_local_ascii_data (p_data IN CLOB, p_dir IN VARCHAR2, p_file IN VARCHAR2); PROCEDURE put_local_binary_data (p_data IN BLOB, p_dir IN VARCHAR2, p_file IN VARCHAR2); PROCEDURE put_remote_ascii_data (p_conn IN OUT NOCOPY UTL_TCP.connection, p_file IN VARCHAR2, p_data IN CLOB); PROCEDURE put_remote_binary_data (p_conn IN OUT NOCOPY UTL_TCP.connection, p_file IN VARCHAR2, p_data IN BLOB); PROCEDURE get (p_conn IN OUT NOCOPY UTL_TCP.connection, p_from_file IN VARCHAR2, p_to_dir IN VARCHAR2, p_to_file IN VARCHAR2); PROCEDURE put (p_conn IN OUT NOCOPY UTL_TCP.connection, p_from_dir IN VARCHAR2, p_from_file IN VARCHAR2, p_to_file IN VARCHAR2); PROCEDURE get_direct (p_conn IN OUT NOCOPY UTL_TCP.connection, p_from_file IN VARCHAR2, p_to_dir IN VARCHAR2, p_to_file IN VARCHAR2); PROCEDURE put_direct (p_conn IN OUT NOCOPY UTL_TCP.connection, p_from_dir IN VARCHAR2, p_from_file IN VARCHAR2, p_to_file IN VARCHAR2); PROCEDURE help (p_conn IN OUT NOCOPY UTL_TCP.connection); PROCEDURE ascii (p_conn IN OUT NOCOPY UTL_TCP.connection); PROCEDURE binary (p_conn IN OUT NOCOPY UTL_TCP.connection); PROCEDURE list (p_conn IN OUT NOCOPY UTL_TCP.connection, p_dir IN VARCHAR2, p_list OUT t_string_table); PROCEDURE rename (p_conn IN OUT NOCOPY UTL_TCP.connection, p_from IN VARCHAR2, p_to IN VARCHAR2); PROCEDURE delete (p_conn IN OUT NOCOPY UTL_TCP.connection, p_file IN VARCHAR2); PROCEDURE mkdir (p_conn IN OUT NOCOPY UTL_TCP.connection, p_dir IN VARCHAR2); PROCEDURE rmdir (p_conn IN OUT NOCOPY UTL_TCP.connection, p_dir IN VARCHAR2); PROCEDURE convert_crlf (p_status IN BOOLEAN); END ftp;