5 cosFileTransfer Examples
5.1 A tutorial on how to create a simple service
Initiate the application
To use the complete cosFileTransfer application cosProperty must be installed.
How to run everything
Below is a short transcript on how to run cosFileTransfer.
%% Start Mnesia and Orber mnesia:delete_schema([node()]), mnesia:create_schema([node()]), orber:install([node()]), mnesia:start(), orber:start(), %% The File Transfer Service depends on the cosProperty %% application. Hence, we must install cosProperty first. %% It's NOT necessary to invoke cosProperty:install_db(). cosProperty:install(), %% Install File Transfer Service in the IFR. cosFileTransfer:install(), %% Now start the application and necessary services. cosFileTransfer:start(), %% Create two Virtual File Systems respectively representing an FTP- %% and the local NFS file system. VFSFTP = cosFileTransferApp:create_VFS('FTP', [], FTPHost, 21), VFSNATIVE = cosFileTransferApp: create_VFS({'NATIVE', 'cosFileTransferNATIVE_file'}, [], MyLocalHost, 0), %% Login to each system. {FSFTP, DirFTP} = 'CosFileTransfer_VirtualFileSystem': login(VFSFTP, "myId", "myPwd", "myAccount"), {FSNATIVE, DirNATIVE} = 'CosFileTransfer_VirtualFileSystem': login(VFSNATIVE, "myId", "myPwd", "myAccount"), %% If we want to copy a file from the NFS to the FTP we must first %% create a File object which contains its attributes. Target = 'CosFileTransfer_FileTransferSession':create_file(FSFTP, ["/", "ftp", "incoming", "targetFile"])), #'CosFileTransfer_FileWrapper'{the_file = Dir} = %% Lookup the file we want to copy. FileWrapper = 'CosFileTransfer_FileTransferSession':get_file(FSNATIVE, ["/", "home", "myId", "sourceFile"]), Source = FileWrapper#'CosFileTransfer_FileWrapper'.the_file, %% Now we are ready to transfer the file. Please note that we most %% call the source Session object. 'CosFileTransfer_FileTransferSession':transfer(FSNATIVE, Source, Target),