Scroll to navigation

globus_gass_copy.h(3) globus_gass_copy globus_gass_copy.h(3)

NAME

globus_gass_copy.h - GASS Copy Library.

SYNOPSIS

#include 'globus_gass_transfer.h'
 
#include 'globus_ftp_client.h'
 
#include 'globus_io.h'
 

Data Structures


struct globus_gass_copy_handle_s
 
Copy Handle. struct globus_gass_copy_attr_s
 
Attributes. struct globus_gass_copy_handleattr_s
 
Handle Attributes. struct globus_gass_copy_glob_stat_t
 
Glob expanded entry information.

Macros


#define GLOBUS_GASS_COPY_MODULE (&globus_i_gass_copy_module)
 
Module Descriptor.

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)
 
Performance Callback. typedef void(* globus_gass_copy_callback_t )(void *callback_arg, globus_gass_copy_handle_t *handle, globus_object_t *error)
 
Copy Callback. typedef struct
 
globus_gass_copy_attr_s globus_gass_copy_attr_t"
 
Attributes. typedef struct
 
globus_gass_copy_handleattr_s globus_gass_copy_handleattr_t"
 
Handle Attributes. 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.

Enumerations


enum globus_gass_copy_status_t
 
Status States. enum globus_gass_copy_url_mode_t
 
URL Modes. enum globus_gass_copy_glob_entry_t
 

Functions


globus_result_t globus_gass_copy_handle_init (globus_gass_copy_handle_t *handle, globus_gass_copy_handleattr_t *handle_attr)
 
Initialize a GASS Copy handle. globus_result_t globus_gass_copy_handle_destroy ( globus_gass_copy_handle_t *handle)
 
Destroy a GASS Copy handle. globus_result_t globus_gass_copy_set_buffer_length ( globus_gass_copy_handle_t *handle, int length)
 
Set the size of the buffer to be used for doing transfers. globus_result_t globus_gass_copy_get_buffer_length (globus_gass_copy_handle_t *handle, int *length)
 
Get the size of the transfer buffer. globus_result_t globus_gass_copy_set_no_third_party_transfers ( globus_gass_copy_handle_t *handle, globus_bool_t no_third_party_transfers)
 
Enable/Disable third-party transfers. globus_result_t globus_gass_copy_get_no_third_party_transfers ( globus_gass_copy_handle_t *handle, globus_bool_t *no_third_party_transfers)
 
Query third-party transfer status. globus_result_t globus_gass_copy_get_partial_offsets ( globus_gass_copy_handle_t *handle, globus_off_t *offset, globus_off_t *end_offset)
 
Get partial transfer offsets. globus_result_t globus_gass_copy_set_partial_offsets ( globus_gass_copy_handle_t *handle, globus_off_t offset, globus_off_t end_offset)
 
Set partial file offsets. globus_result_t globus_gass_copy_set_allocate ( globus_gass_copy_handle_t *handle, globus_bool_t send_allo)
 
Set allo on or off. globus_result_t globus_gass_copy_set_stat_on_expand ( globus_gass_copy_handle_t *handle, globus_bool_t always_stat)
 
Make globus_gass_copy_expand_url() always send stat info. globus_result_t globus_gass_copy_get_url_mode (char *url, globus_gass_copy_url_mode_t *mode)
 
Get URL scheme. globus_result_t globus_gass_copy_attr_init (globus_gass_copy_attr_t *attr)
 
Initialize an attribute structure. globus_result_t globus_gass_copy_attr_set_ftp ( globus_gass_copy_attr_t *attr, globus_ftp_client_operationattr_t *ftp_attr)
 
Set the attributes for ftp/gsiftp transfers. globus_result_t globus_gass_copy_attr_set_io ( globus_gass_copy_attr_t *attr, globus_io_attr_t *io_attr)
 
Set file transfers attributes. globus_result_t globus_gass_copy_attr_set_gass ( globus_gass_copy_attr_t *attr, globus_gass_transfer_requestattr_t *gass_attr)
 
Set the http/https attributes. globus_result_t globus_gass_copy_url_to_url ( globus_gass_copy_handle_t *handle, char *source_url, globus_gass_copy_attr_t *source_attr, char *dest_url, globus_gass_copy_attr_t *dest_attr)
 
Blocking Transfer between URLs. globus_result_t globus_gass_copy_url_to_handle ( globus_gass_copy_handle_t *handle, char *source_url, globus_gass_copy_attr_t *source_attr, globus_io_handle_t *dest_handle)
 
Blocking Transfer from an URL to an IO handle. globus_result_t globus_gass_copy_handle_to_url ( globus_gass_copy_handle_t *handle, globus_io_handle_t *source_handle, char *dest_url, globus_gass_copy_attr_t *dest_attr)
 
Blocking transfer from an IO handle to an URL. globus_result_t globus_gass_copy_register_url_to_url ( globus_gass_copy_handle_t *handle, char *source_url, globus_gass_copy_attr_t *dest_attr, char *dest_url, globus_gass_copy_attr_t *source_attr, globus_gass_copy_callback_t callback_func, void *callback_arg)
 
globus_result_t globus_gass_copy_register_url_to_handle (globus_gass_copy_handle_t *handle, char *source_url, globus_gass_copy_attr_t *source_attr, globus_io_handle_t *dest_handle, globus_gass_copy_callback_t callback_func, void *callback_arg)
 
Nonblocking transfer from an URL to an IO handle. globus_result_t globus_gass_copy_register_handle_to_url ( globus_gass_copy_handle_t *handle, globus_io_handle_t *source_handle, char *dest_url, globus_gass_copy_attr_t *dest_attr, globus_gass_copy_callback_t callback_func, void *callback_arg)
 
globus_result_t globus_gass_copy_get_status (globus_gass_copy_handle_t *handle, globus_gass_copy_status_t *status)
 
Get the status code of a transfer. const char * globus_gass_copy_get_status_string ( globus_gass_copy_handle_t *handle)
 
Get the status string of a transfer. globus_result_t globus_gass_copy_cancel ( globus_gass_copy_handle_t *handle, globus_gass_copy_callback_t cancel_callback, void *cancel_callback_arg)
 
Cancel a transfer. globus_result_t globus_gass_copy_cache_url_state ( globus_gass_copy_handle_t *handle, char *url)
 
Cache connections to an FTP or GridFTP server. globus_result_t globus_gass_copy_flush_url_state ( globus_gass_copy_handle_t *handle, char *url)
 
Remove an FTP or GridFTP cached connection. globus_result_t globus_gass_copy_set_user_pointer ( globus_gass_copy_handle_t *handle, void *user_data)
 
Set the user pointer in a handle. globus_result_t globus_gass_copy_get_user_pointer ( globus_gass_copy_handle_t *handle, void **user_data)
 
Get the user pointer in a handle. globus_result_t globus_gass_copy_register_performance_cb ( globus_gass_copy_handle_t *handle, globus_gass_copy_performance_cb_t callback, void *user_arg)
 
Register a performance information callback. 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. globus_result_t globus_gass_copy_mkdir (globus_gass_copy_handle_t *handle, char *url, globus_gass_copy_attr_t *attr)
 
Make directory.

Detailed Description

GASS Copy Library.

Function Documentation

globus_result_t globus_gass_copy_cache_url_state ( globus_gass_copy_handle_t *handle, char *url)

Cache connections to an FTP or GridFTP server. Explicitly cache connections to URL server. When an URL is cached, the connection to the URL server will not be closed after a file transfer completes.
Parameters:
handle Handle which will contain a cached connection to the URL server.
 
url The URL of the FTP or GSIFTP server to cache.
Returns:
This function returns GLOBUS_SUCCESS if successful, or a globus_result_t indicating the error that occurred.

globus_result_t globus_gass_copy_flush_url_state ( globus_gass_copy_handle_t *handle, char *url)

Remove an FTP or GridFTP cached connection. Explicitly remove a cached connection to an FTP or GSIFTP server. If an idle connection to an FTP server exists, it will be closed.
Parameters:
handle Handle which contains a cached connection to the URL server.
 
url The URL of the FTP or GSIFTP server to remove.
Returns:
This function returns GLOBUS_SUCCESS if successful, or a globus_result_t indicating the error that occurred.

globus_result_t globus_gass_copy_handle_to_url ( globus_gass_copy_handle_t *handle, globus_io_handle_t *source_handle, char *dest_url, globus_gass_copy_attr_t *dest_attr)

Blocking transfer from an IO handle to an URL.
Parameters:
handle The handle to perform the copy operation
 
source_handle transfer data from this IO handle
 
dest_url transfer data to this URL
 
dest_attr Attributes describing how the transfer to the destination should be done
Returns:
This function returns GLOBUS_SUCCESS if the transfer was completed successfully, or a result pointing to an object of one of the the following error types:
Return values:
GLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER The handle was equal to GLOBUS_NULL, so the transfer could not processed.
 
GLOBUS_GASS_COPY_ERROR_TYPE_next_error next error description
See also:
globus_gass_copy_url_to_url() globus_gass_copy_url_to_handle()

globus_result_t globus_gass_copy_register_handle_to_url ( globus_gass_copy_handle_t *handle, globus_io_handle_t *source_handle, char *dest_url, globus_gass_copy_attr_t *dest_attr, globus_gass_copy_callback_tcallback_func, void *callback_arg)

Nonblocking Transfer From an IO handle to an URL
This functions initiates a transfer from an IO handle to destination URL, then returns immediately.
When the transfer is completed or if the transfer is aborted, the callback_func will be invoked with the final status of the transfer.
Parameters:
handle The handle to perform the copy operation
 
source_handle transfer data from this IO handle
 
dest_url transfer data to this URL
 
dest_attr Attributes describing how the transfer to the destination should be done
 
callback_func Callback to be invoked once the transfer is completed.
 
callback_arg Argument to be passed to the callback_func.
Returns:
This function returns GLOBUS_SUCCESS if the transfer was initiated successfully, or a result pointing to an object of one of the the following error types:
Return values:
GLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER The handle was equal to GLOBUS_NULL, so the transfer could not processed.
 
GLOBUS_GASS_COPY_ERROR_TYPE_next_error next error description
See also:
globus_gass_copy_register_url_to_url(), globus_gass_copy_register_url_to_handle()

globus_result_t globus_gass_copy_register_url_to_handle ( globus_gass_copy_handle_t *handle, char *source_url, globus_gass_copy_attr_t *source_attr, globus_io_handle_t *dest_handle, globus_gass_copy_callback_tcallback_func, void *callback_arg)

Nonblocking transfer from an URL to an IO handle. This functions initiates a transfer from source URL to an IO handle, then returns immediately.
When the transfer is completed or if the transfer is aborted, the callback_func will be invoked with the final status of the transfer.
Parameters:
handle The handle to perform the copy operation
 
source_url transfer data from this URL
 
source_attr Attributes describing how the transfer form the source should be done
 
dest_handle transfer data to this IO handle
 
callback_func Callback to be invoked once the transfer is completed.
 
callback_arg Argument to be passed to the callback_func.
Returns:
This function returns GLOBUS_SUCCESS if the transfer was initiated successfully, or a result pointing to an object of one of the the following error types:
Return values:
GLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER The handle was equal to GLOBUS_NULL, so the transfer could not processed.
 
GLOBUS_GASS_COPY_ERROR_TYPE_next_error next error description
See also:
globus_gass_copy_register_url_to_url(), globus_gass_copy_register_handle_to_url()

globus_result_t globus_gass_copy_register_url_to_url ( globus_gass_copy_handle_t *handle, char *source_url, globus_gass_copy_attr_t *source_attr, char *dest_url, globus_gass_copy_attr_t *dest_attr, globus_gass_copy_callback_tcallback_func, void *callback_arg)

Nonblocking Transfer between URLs
This functions initiates a transfer from source URL to destination URL, then returns immediately.
When the transfer is completed or if the transfer is aborted, the callback_func will be invoked with the final status of the transfer.
Parameters:
handle The handle to perform the copy operation
 
source_url transfer data from this URL
 
source_attr Attributes describing how the transfer form the source should be done
 
dest_url transfer data to this URL
 
dest_attr Attributes describing how the transfer to the destination should be done
 
callback_func Callback to be invoked once the transfer is completed.
 
callback_arg Argument to be passed to the callback_func.
Returns:
This function returns GLOBUS_SUCCESS if the transfer was initiated successfully, or a result pointing to an object of one of the the following error types:
Return values:
GLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER The handle was equal to GLOBUS_NULL, so the transfer could not processed.
 
GLOBUS_GASS_COPY_ERROR_TYPE_next_error next error description
See also:
globus_gass_copy_register_url_to_handle(), globus_gass_copy_register_handle_to_url()

globus_result_t globus_gass_copy_url_to_handle ( globus_gass_copy_handle_t *handle, char *source_url, globus_gass_copy_attr_t *source_attr, globus_io_handle_t *dest_handle)

Blocking Transfer from an URL to an IO handle.
Parameters:
handle The handle to perform the copy operation
 
source_url transfer data from this URL
 
source_attr Attributes describing how the transfer form the source should be done
 
dest_handle transfer data to this IO handle
Returns:
This function returns GLOBUS_SUCCESS if the transfer was completed successfully, or a result pointing to an object of one of the the following error types:
Return values:
GLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER The handle was equal to GLOBUS_NULL, so the transfer could not processed.
 
GLOBUS_GASS_COPY_ERROR_TYPE_next_error next error description
See also:
globus_gass_copy_url_to_url() globus_gass_copy_handle_to_url()

globus_result_t globus_gass_copy_url_to_url ( globus_gass_copy_handle_t *handle, char *source_url, globus_gass_copy_attr_t *source_attr, char *dest_url, globus_gass_copy_attr_t *dest_attr)

Blocking Transfer between URLs.
Parameters:
handle The handle to perform the copy operation
 
source_url transfer data from this URL
 
source_attr Attributes describing how the transfer form the source should be done
 
dest_url transfer data to this URL
 
dest_attr Attributes describing how the transfer to the destination should be done
Returns:
This function returns GLOBUS_SUCCESS if the transfer was completed successfully, or a result pointing to an object of one of the the following error types:
Return values:
GLOBUS_GASS_COPY_ERROR_TYPE_NULL_PARAMETER The handle was equal to GLOBUS_NULL, so the transfer could not processed.
 
GLOBUS_GASS_COPY_ERROR_TYPE_next_error next error description
See also:
globus_gass_copy_url_to_handle() globus_gass_copy_handle_to_url()

Author

Generated automatically by Doxygen for globus_gass_copy from the source code.
Sat Nov 8 2014 Version 9.12