Main Page   Modules   Data Structures   Related Pages  

Handle Attributes

Handle attributes are used to control additional features of the FTP Client handle. More...

Initialize

Destroy

Copy

Connection Caching

URL Caching

Plugin Management

Typedefs

Functions


Detailed Description

Handle attributes are used to control additional features of the FTP Client handle.

These features are operation independent.

The attribute which can currently set on a handle concern the connection caching behavior of the handle, and the associations of plugins with a handle.

See also:
globus_ftp_client_handle_t

Typedef Documentation

typedef struct globus_i_ftp_client_handleattr_t* globus_ftp_client_handleattr_t
 

Handle Attributes.

Handle attributes are used to control the caching behavior of the ftp client handle, and to implement the plugin features for reliability and performance tuning.

See also:
globus_ftp_client_handle_t, Handle Attributes


Function Documentation

globus_result_t globus_ftp_client_handleattr_init globus_ftp_client_handleattr_t   attr
 

Initialize an FTP client handle attribute set.

This function creates an empty FTP Client handle attribute set. This function must be called on each attribute set before any of the other functions in this section may be called.

Parameters:
attr  The new handle attribute.
See also:
globus_ftp_client_handleattr_destroy()

globus_result_t globus_ftp_client_handleattr_destroy globus_ftp_client_handleattr_t   attr
 

Destroy an FTP client handle attribute set.

This function destroys an ftp client handle attribute set. All attributes on this set will be lost. The user must call globus_ftp_client_handleattr_init() again on this attribute set before calling any other handle attribute functions on it.

Parameters:
attr  The attribute set to destroy.

globus_result_t globus_ftp_client_handleattr_copy globus_ftp_client_handleattr_t   dest,
globus_ftp_client_handleattr_t   src
 

Create a duplicate of a handle attribute set.

The duplicated attribute set has a deep copy of all data in the attribute set, so the original may be destroyed while the copy is still valid.

Parameters:
dest  The attribute set to be initialized to the same values as src.
src  The original attribute set to duplicate.

globus_result_t globus_ftp_client_handleattr_set_cache_all globus_ftp_client_handleattr_t   attr,
globus_bool_t    cache_all
 

Set/Get the cache all connections attribute for an ftp client handle attribute set.

This attribute allows the user to cause all control connections to be cached between ftp operations. When this is enabled, the user skips the authentication handshake and connection establishment overhead for multiple subsequent ftp operations to the same server.

Memory and network connections associated with the caching will be used until the handle is destroyed. If fine grained caching is needed, then the user should disable this attribute and explicitly cache specific URLs.

Parameters:
attr  Attribute to query or modify.
cache_all  Value of the cache_all attribute.
See also:
globus_ftp_client_handleattr_add_cached_url(), globus_ftp_client_handleattr_remove_cached_url(), globus_ftp_client_handle_cache_url_state() globus_ftp_client_handle_flush_url_state()

globus_result_t globus_ftp_client_handleattr_add_cached_url globus_ftp_client_handleattr_t   attr,
const char *    url
 

Enable/Disable caching for a specific URL.

This function adds/removes the specified URL into the default cache for a handle attribute. Handles initialized with this attr will keep connections to FTP servers associated with the URLs in its cache open between operations.

Parameters:
attr  Attribute to modify
url  URL string to cache

globus_result_t globus_ftp_client_handleattr_remove_cached_url globus_ftp_client_handleattr_t   attr,
const char *    url
 

Enable/Disable caching for a specific URL.

This function adds/removes the specified URL into the default cache for a handle attribute. Handles initialized with this attr will keep connections to FTP servers associated with the URLs in its cache open between operations.

Parameters:
attr  Attribute to modify
url  URL string to cache

globus_result_t globus_ftp_client_handleattr_set_netlogger globus_ftp_client_handleattr_t   attr,
globus_netlogger_handle_t *    nl_handle
 

Set the netlogger handle used with this transfer.

Each handle can have a netlogger handle associated with it for logging its data.

Only 1 netlogger handle can be associated with a client handle.

Parameters:
attr  The attribute set to modify.
nl_handle  The open netlogger handle to be associated with this attribute set.

globus_result_t globus_ftp_client_handleattr_add_plugin globus_ftp_client_handleattr_t   attr,
globus_ftp_client_plugin_t   plugin
 

Add/Remove a plugin to a handle attribute set.

Each handle attribute set contains a list of plugins associated with it. When a handle is created with a particular attribute set, it will be associated with a copy of those plugins.

Only one instance of a specific plugin may be added to an attribute set. Each plugin must have a different name.

A copy of the plugin is created via the plugins 'copy' method when it is added to an attribute set. Thus, any changes to a particular plugin must be done before the plugin is added to an attribute set, and before the attribute set is used to create handles.

Parameters:
attr  The attribute set to modify.
plugin  The plugin to add or remove from the list.

globus_result_t globus_ftp_client_handleattr_get_cache_all const globus_ftp_client_handleattr_t   attr,
globus_bool_t *    cache_all
 

Set/Get the cache all connections attribute for an ftp client handle attribute set.

This attribute allows the user to cause all control connections to be cached between ftp operations. When this is enabled, the user skips the authentication handshake and connection establishment overhead for multiple subsequent ftp operations to the same server.

Memory and network connections associated with the caching will be used until the handle is destroyed. If fine grained caching is needed, then the user should disable this attribute and explicitly cache specific URLs.

Parameters:
attr  Attribute to query or modify.
cache_all  Value of the cache_all attribute.
See also:
globus_ftp_client_handleattr_add_cached_url(), globus_ftp_client_handleattr_remove_cached_url(), globus_ftp_client_handle_cache_url_state() globus_ftp_client_handle_flush_url_state()

globus_result_t globus_ftp_client_handleattr_remove_plugin globus_ftp_client_handleattr_t   attr,
globus_ftp_client_plugin_t   plugin
 

Add/Remove a plugin to a handle attribute set.

Each handle attribute set contains a list of plugins associated with it. When a handle is created with a particular attribute set, it will be associated with a copy of those plugins.

Only one instance of a specific plugin may be added to an attribute set. Each plugin must have a different name.

A copy of the plugin is created via the plugins 'copy' method when it is added to an attribute set. Thus, any changes to a particular plugin must be done before the plugin is added to an attribute set, and before the attribute set is used to create handles.

Parameters:
attr  The attribute set to modify.
plugin  The plugin to add or remove from the list.


about globus | grid research | globus toolkit | software development

Comments? webmaster@globus.org