globus_gass_copy.h

Langue: en

Version: 374012 (fedora - 01/12/10)

Section: 3 (Bibliothèques de fonctions)

NAME

globus_gass_copy.h -

Header file for the gass copy library.

SYNOPSIS


Data Structures


struct globus_gass_copy_glob_stat_t
Glob expanded entry information.

Defines


#define GLOBUS_GASS_COPY_MODULE (&globus_i_gass_copy_module)

Typedefs


typedef void(* globus_gass_copy_performance_cb_t )(void *user_arg, globus_gass_copy_handle_t *handle, globus_off_t total_bytes, float instantaneous_throughput, float avg_throughput)

typedef void(* globus_gass_copy_glob_entry_cb_t )(const char *url, const globus_gass_copy_glob_stat_t *info_stat, void *user_arg)

Enumerations


enum globus_gass_copy_glob_entry_t

Functions


globus_result_t globus_gass_copy_glob_expand_url (globus_gass_copy_handle_t *handle, const char *url, globus_gass_copy_attr_t *attr, globus_gass_copy_glob_entry_cb_t entry_cb, void *user_arg)

globus_result_t globus_gass_copy_mkdir (globus_gass_copy_handle_t *handle, char *url, globus_gass_copy_attr_t *attr)

Detailed Description

Header file for the gass copy library.

Define Documentation

#define GLOBUS_GASS_COPY_MODULE (&globus_i_gass_copy_module)

Module descriptor. Globus GASS Copy uses standard Globus module activation and deactivation. Before any Globus GASS Copy functions are called, the following function must be called:

       globus_module_activate(GLOBUS_GASS_COPY_MODULE)
 

This function returns GLOBUS_SUCCESS if Globus GASS Copy was successfully initialized, and you are therefore allowed to subsequently call Globus GASS Copy functions. Otherwise, an error code is returned, and Globus GASS Copy functions should not be subsequently called. This function may be called multiple times.

To deactivate Globus GASS Copy, the following function must be called:

     globus_module_deactivate(GLOBUS_GASS_COPY_MODULE)
 

This function should be called once for each time Globus GASS Copy was activated.

Typedef Documentation

typedef void(* globus_gass_copy_performance_cb_t)(void *user_arg, globus_gass_copy_handle_t *handle, globus_off_t total_bytes, float instantaneous_throughput, float avg_throughput)

Gass copy transfer performance callback. This callback is registered with 'globus_gass_copy_register_performance_cb' It will be called during a transfer to supply performance information on current transfer. Its frequency will be at most one per second, but it is possible to receive no callbacks. This is possible in very short transfers and in ftp transfers in which the server does not provide performance information.

Parameters:

handle the gass copy handle this transfer is occurring on
user_arg a user pointer registered with 'globus_gass_copy_register_performance_cb'
total_bytes the total number of bytes transfer so far
instantaneous_throughput instantaneous rate of transfer (since last callback or start) (bytes / sec)
avg_throughput the avg thoughput calculated since the start of the transfer (bytes / sec)

Returns:

*
n/a

typedef void(* globus_gass_copy_glob_entry_cb_t)(const char *url, const globus_gass_copy_glob_stat_t *info_stat, void *user_arg)

Gass copy glob entry callback. This callback is passed as a parameter to globus_gass_copy_glob_expand_url(). It is called once for each entry that the original expands to.

Parameters:

url The full url to the expanded entry. A directory entry will end in a forward slash '/'.
stat A pointer to a globus_gass_copy_glob_stat_t containing information about the entry.
user_arg The user_arg passed to globus_gass_copy_glob_expand()

See also:

globus_gass_copy_glob_stat_t, globus_gass_copy_glob_expand_url

Enumeration Type Documentation

enum globus_gass_copy_glob_entry_t

globbed entry types

Function Documentation

globus_result_t globus_gass_copy_glob_expand_url (globus_gass_copy_handle_t * handle, const char * url, globus_gass_copy_attr_t * attr, globus_gass_copy_glob_entry_cb_t entry_cb, void * user_arg)

Expand globbed url. This function expands wildcards in a globbed url, and calls entry_cb() on each one.

Parameters:

handle A gass copy handle to use for the operation.
url The URL to expand. The URL may be an ftp, gsiftp or file URL. Wildcard characters supported are '?' '*' '[ ]' in the filename portion of the url.
attr Gass copy attributes for this operation.
entry_cb Function to call with information about each entry
user_arg An argument to pass to entry_cb()

Returns:

This function returns an error when any of these conditions are true:
*
handle is GLOBUS_NULL
*
url is GLOBUS_NULL
*
url cannot be parsed
*
url is not a ftp, gsiftp or file url

References globus_gass_copy_glob_expand_url(), GLOBUS_GASS_COPY_MODULE, globus_gass_copy_glob_stat_t::mdtm, globus_gass_copy_glob_stat_t::mode, globus_gass_copy_glob_stat_t::size, globus_gass_copy_glob_stat_t::symlink_target, globus_gass_copy_glob_stat_t::type, and globus_gass_copy_glob_stat_t::unique_id.

globus_result_t globus_gass_copy_mkdir (globus_gass_copy_handle_t * handle, char * url, globus_gass_copy_attr_t * attr)

Make directory. This function creates a directory given a ftp or file url.

Parameters:

handle A gass copy handle to use for the mkdir operation.
url The URL for the directory to create. The URL may be an ftp, gsiftp or file URL.
attr Gass copy attributes for this operation.

Returns:

This function returns an error when any of these conditions are true:
*
handle is GLOBUS_NULL
*
url is GLOBUS_NULL
*
url cannot be parsed
*
url is not a ftp, gsiftp or file url
*
the directory could not be created

References globus_gass_copy_get_url_mode(), globus_gass_copy_mkdir(), and GLOBUS_GASS_COPY_MODULE.

Author

Generated automatically by Doxygen for globus gass copy from the source code.