RLI Operations(3) Functions to view and update data managed by a RLI server.

Data Structures


struct globus_rls_sender_info_t
Information about server sending updates to an rli, returned by globus_rls_client_rli_sender_list().

Functions


globus_result_t globus_rls_client_rli_exists (globus_rls_handle_t *h, char *key, globus_rls_obj_type_t objtype)

globus_result_t globus_rls_client_rli_exists_bulk (globus_rls_handle_t *h, globus_list_t *keylist, globus_rls_obj_type_t objtype, globus_list_t **str2bulk_list)

globus_result_t globus_rls_client_rli_get_lrc (globus_rls_handle_t *h, char *lfn, int *offset, int reslimit, globus_list_t **str2_list)

globus_result_t globus_rls_client_rli_get_lrc_bulk (globus_rls_handle_t *h, globus_list_t *lfnlist, globus_list_t **str2bulk_list)

globus_result_t globus_rls_client_rli_get_lrc_wc (globus_rls_handle_t *h, char *lfn_pattern, globus_rls_pattern_t type, int *offset, int reslimit, globus_list_t **str2_list)

globus_result_t globus_rls_client_rli_sender_list (globus_rls_handle_t *h, globus_list_t **senderinfo_list)

globus_result_t globus_rls_client_rli_lrc_list (globus_rls_handle_t *h, globus_list_t **lrcinfo_list)

globus_result_t globus_rls_client_rli_mapping_exists (globus_rls_handle_t *h, char *lfn, char *lrc)

globus_result_t globus_rls_client_rli_rli_add (globus_rls_handle_t *h, char *rli_url, char *pattern)

globus_result_t globus_rls_client_rli_rli_delete (globus_rls_handle_t *h, char *rli_url, char *pattern)

globus_result_t globus_rls_client_rli_rli_get_part (globus_rls_handle_t *h, char *rli_url, char *pattern, globus_list_t **str2_list)

globus_result_t globus_rls_client_rli_rli_list (globus_rls_handle_t *h, globus_list_t **rliinfo_list)

Detailed Description

Functions to view and update data managed by a RLI server.

Function Documentation

globus_result_t globus_rls_client_rli_exists (globus_rls_handle_t * h, char * key, globus_rls_obj_type_t objtype)

Check if an object exists in the RLI database. Parameters:

h Handle connected to an RLS server.
key LFN or LRC that identifies object.
objtype Type of object key refers to (globus_rls_obj_rli_lfn or globus_rls_obj_rli_lrc).

Return values:

GLOBUS_SUCCESS Object exists.

globus_result_t globus_rls_client_rli_exists_bulk (globus_rls_handle_t * h, globus_list_t * keylist, globus_rls_obj_type_t objtype, globus_list_t ** str2bulk_list)

Bulk check if objects exist in the RLI database. Parameters:

h Handle connected to an RLS server.
keylist LFNs or LRCs that identify objects.
objtype Type of object key refers to (globus_rls_obj_rli_lfn or globus_rls_obj_rli_lrc).
str2bulk_list Results of existence check. Each list datum will be a globus_rls_string2_bulk_t structure. str2.s1 will be the LFN or LRC, and str2.s2 empty, and rc will be the result code indicating existence.

globus_result_t globus_rls_client_rli_get_lrc (globus_rls_handle_t * h, char * lfn, int * offset, int reslimit, globus_list_t ** str2_list)

Return LRCs mapped to LFN in the RLI database. Parameters:

h Handle connected to an RLS server.
lfn LFN whose list of LRCs is desired.
offset Offset into result list. Used in conjunction with reslimit to retrieve results a few at a time. Use 0 to begin with first result.
reslimit Maximum number of results to return. Used in conjunction with offset to retrieve results a few at a time. Use 0 to retrieve all results.
str2_list List of LRCs that lfn maps to. Each list datum will be a globus_rls_string2_t structure. s1 will be the LFN, and s2 the LRC it maps to. str2_list should be freed with globus_rls_client_free_list().

Return values:

GLOBUS_SUCCESS List of LRCs that map to lfn in str2_list. See Query Results.

globus_result_t globus_rls_client_rli_get_lrc_bulk (globus_rls_handle_t * h, globus_list_t * lfnlist, globus_list_t ** str2bulk_list)

Bulk return LRCs mapped to LFN in the RLI database. Parameters:

h Handle connected to an RLS server.
lfnlist LFNs to search for.
str2bulk_list Results of queries. Each list datum will be a globus_rls_string2_bulk_t structure. str2.s1 will be the LFN, and str2.s2 the LRC it maps to, and rc will be the result code from the query.

globus_result_t globus_rls_client_rli_get_lrc_wc (globus_rls_handle_t * h, char * lfn_pattern, globus_rls_pattern_t type, int * offset, int reslimit, globus_list_t ** str2_list)

Return LRCs mapped to wildcarded LFN in the RLI database. Parameters:

h Handle connected to an RLS server.
lfn_pattern LFN pattern to search for.
type Identifies wildcard characters used in lfn_pattern. Wildcard chars can be Unix file globbing chars (* matches 0 or more characters, ? matches any single character) or SQL 'like' wildcard characters (% matches 0 or more charactes, _ matches any single character).
offset Offset into result list. Used in conjunction with reslimit to retrieve results a few at a time. Use 0 to begin with first result.
reslimit Maximum number of results to return. Used in conjunction with offset to retrieve results a few at a time. Use 0 to retrieve all results.
str2_list List of LRCs that map to lfn_pattern. Each list datum will be a globus_rls_string2_t. s1 will be the LFN, and s2 the LRC it maps to. str2_list should be freed with globus_rls_client_free_list().

Return values:

GLOBUS_SUCCESS List of LRCs that map to lfn_pattern in str2_list. See Query Results.

globus_result_t globus_rls_client_rli_sender_list (globus_rls_handle_t * h, globus_list_t ** senderinfo_list)

Get list of servers updating this RLI server. Similar to globus_rls_client_rli_get_part() except no partition information is returned.

Parameters:

h Handle connected to an RLS server.
senderinfo_list Datums in senderinfo_list will be of type globus_rls_sender_info_t. senderinfo_list should be freed with globus_rls_client_free_list().

Return values:

GLOBUS_SUCCESS List of LRCs updating RLI added to senderinfo_list.

globus_result_t globus_rls_client_rli_lrc_list (globus_rls_handle_t * h, globus_list_t ** lrcinfo_list)

Deprecated, use globus_rls_client_rli_sender_list(). Parameters:

h Handle connected to an RLS server.
lrcinfo_list Datums in lrcinfo_list will be of type globus_rls_lrc_info_t. lrcinfo_list should be freed with globus_rls_client_free_list().

Return values:

GLOBUS_SUCCESS List of LRCs updating RLI added to lrcinfo_list.

globus_result_t globus_rls_client_rli_mapping_exists (globus_rls_handle_t * h, char * lfn, char * lrc)

Check if a mapping exists in the RLI database. Parameters:

h Handle connected to an RLS server.
lfn LFN of mapping.
lrc LRC of mapping.

Return values:

GLOBUS_SUCCESS Mapping exists.

globus_result_t globus_rls_client_rli_rli_add (globus_rls_handle_t * h, char * rli_url, char * pattern)

RLI servers send information about LFNs in their database to the the list of RLI servers in the database, added with the following function. Updates may be partitioned amongst multiple RLIs by specifying one or more patterns for an RLI.

Parameters:

h Handle connected to an RLS server.
rli_url URL of RLI server that LRC should send updates to.
pattern If not NULL used to filter which LFNs are sent to rli_url. Standard Unix wildcard characters (*, ?) may be used to do wildcard matches.

Return values:

GLOBUS_SUCCESS RLI (with pattern if not NULL) added to RLI database.

globus_result_t globus_rls_client_rli_rli_delete (globus_rls_handle_t * h, char * rli_url, char * pattern)

Delete an entry from the RLI rli/partition tables. Parameters:

h Handle connected to an RLS server.
rli_url URL of RLI server to remove from RLI partition table.
pattern If not NULL then only the specific rli_url/pattern is removed, else all partition information for rli_url is removed.

Return values:

GLOBUS_SUCCESS RLI and pattern (if specified) removed from LRC partition table.

globus_result_t globus_rls_client_rli_rli_get_part (globus_rls_handle_t * h, char * rli_url, char * pattern, globus_list_t ** str2_list)

Get RLI update partitions from RLI server. Parameters:

h Handle connected to an RLS server.
rli_url If not NULL identifies RLI that partition data will be retrieved for. If NULL then all RLIs are retrieved.
pattern If not NULL returns only partitions with matching patterns, otherwise all patterns are retrieved.
str2_list Results added to list. Datums in str2_list are of type globus_rls_string2_t structure. s1 will be the rli url, s2 an empty string or the pattern used to partition updates. See Query Results.

Return values:

GLOBUS_SUCCESS Partition data retrieved from server, written to str2_list.

globus_result_t globus_rls_client_rli_rli_list (globus_rls_handle_t * h, globus_list_t ** rliinfo_list)

Return URLs of RLIs that RLI sends updates to. Parameters:

h Handle connected to an RLS server.
rliinfo_list List of RLIs updated by this RLI returned in this list. Each list datum is of type globus_rls_rli_info_t. rliinfo_list should be freed with globus_rls_client_free_list() when no longer needed.

Return values:

GLOBUS_SUCCESS List of RLIs updated by this LRC returned in rliinfo_list.

Author

Generated automatically by Doxygen for globus rls client from the source code.