CosFileTransfer_FileTransferSession(3)

MODULE
CosFileTransfer_FileTransferSession - This module implements the OMG CosFileTransfer::FileTransferSession interface.

DESCRIPTION

To get access to the record definitions for the structures use: .br -include_lib("cosFileTransfer/include/*.hrl").

EXPORTS

    Types
        FTS = #objref
        Return = [#'CosFileTransfer_ProtocolSupport'{protocol_name=Type, addresses=[Address]}]
        Type = Address = string()

    This read only attribute returns the protocols supported by the target object.

set_directory(FTS, Directory) -> Return

    Types
        FTS = Directory = #objref
        Return = ok | {'EXCEPTION, E}

    Invoking this operation will change the current working directory of the target object's associated file system. If fail to do so the appropriate exception is raised.

create_file(FTS, FileNameList) -> Return

    Types
        FTS = #objref
        FileNameList = [string()]
        Return = File | {'EXCEPTION, E}
        File = #objref

    This operation creates a File Object representing a file which may or may not exist. For this operation to be independent of the working directory the supplied FileNameList must represent the absolute name.

create_directory(FTS, FileNameList) -> Return

    Types
        FTS = #objref
        FileNameList = [string()]
        Return = Directory | {'EXCEPTION, E}
        Directory = #objref

    This operation creates a new directory in the target objects associated file systems domain. If fail to do so an exception is raised but, if successful, a Directory object representing the new directory is returned.

get_file(FTS, FileNameList) -> Return

    Types
        FTS = #objref
        FileNameList = [string()]
        Return = FileWrapper | {'EXCEPTION, E}
        FileWrapper = #'CosFileTransfer_FileWrapper'{the_file = File file_type = Type}
        File = #objref
        Type = nfile | ndirectory

    This operation, creates a FileWrapper which represents a file or directory, and should be independent of the working Directory, i.e., a full path name must be supplied. Furthermore, the file or directory represented by the FileNameList must exist.

delete(FTS, File) -> Return

    Types
        FTS = File = #objref
        Return = ok | {'EXCEPTION', E}

    This operation removes the file or directory, represented by the File object, from the target objects associated file system. If it is a non-empty directory or non-existing file or directory an exception is raised.

transfer(FTS, SourceFile, DestinationFile) -> Return

    Types
        FTS = SourceFile = DestinationFile = #objref
        Return = ok | {'EXCEPTION', E}

    If the target object's and the DestinationFile's associated FileTransferSession's support the same protocol(s) this operation will copy the file represented by the SourceFile from the target object's file system to a file in the destination FileTransferSession's file system. The file is represented by the DestinationFile object and may not exist. This operation must be invoked on the FileTransferSession associated with the SourceFile object.

append(FTS, SourceFile, DestinationFile) -> Return

    Types
        FTS = SourceFile = DestinationFile = #objref
        Return = ok | {'EXCEPTION', E}

    This operation behaves almost like the transfer/3 operation. The difference is that the DestinationFile must exist since the SourceFile will be appended to the DestinationFile.

    Currently, it is not possible to use this operation when the target object represents FTP.

insert(FTS, SourceFile, DestinationFile, Offset) -> Return

    Types
        FTS = SourceFile = DestinationFile = #objref
        Offset = long()
        Return = ok | {'EXCEPTION', E}

    This operation behaves almost like the append/3 operation. The difference is that the SourceFile will be inserted into the DestinationFile Offset bytes from the start of the file.

    Currently, it is not possible to use this operation when the target object represents FTP.

logout(FTS) -> ok

    Types
        FTS = #objref

    This operation terminates the target object and closes the connection to the file system it represents.