globus_gass_copy 10.13
|
GASS Copy Library. More...
#include <openssl/evp.h>
#include "globus_gass_transfer.h"
#include "globus_ftp_client.h"
#include "globus_io.h"
Go to the source code of this file.
Data Structures | |
struct | globus_gass_copy_handle_s |
Copy Handle. More... | |
struct | globus_gass_copy_attr_s |
Attributes. More... | |
struct | globus_gass_copy_handleattr_s |
Handle Attributes. More... | |
struct | globus_gass_copy_glob_stat_t |
Glob expanded entry information. More... | |
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_set_checksum_algo (globus_gass_copy_handle_t *handle, char *algo, globus_gass_copy_handle_t *cksm_handle) |
Stores the checksum algorithm to use with all checksum operations. | |
globus_result_t | globus_gass_copy_set_checksum (globus_gass_copy_handle_t *handle, char *cksm) |
Copies the checksum to the handle's checksum parameter. | |
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. | |
GASS Copy Library.
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.
handle | Handle which will contain a cached connection to the URL server. |
url | The URL of the FTP or GSIFTP server to cache. |
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.
handle | Handle which contains a cached connection to the URL server. |
url | The URL of the FTP or GSIFTP server to remove. |
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.
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 |
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 |
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 ) |
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.
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. |
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 |
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.
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.
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. |
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 |
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_t | callback_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.
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. |
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 |
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.
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 |
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 |
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.
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 |
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 |