globus_connect_gridftp_server  16.1
Data Structures | Typedefs | Functions | Variables
globus_dsi_rest.h File Reference
#include <stdbool.h>
#include "globus_common.h"
#include "globus_gridftp_server.h"
Include dependency graph for globus_dsi_rest.h:

Go to the source code of this file.

Data Structures

struct  globus_dsi_rest_key_value_s
 Key-Value Pairs. More...
 
struct  globus_dsi_rest_key_array_s
 Key-Value Pair Array. More...
 
struct  globus_dsi_rest_write_block_arg_s
 Single-block write specialization data_write_callback_arg. More...
 
struct  globus_dsi_rest_write_blocks_arg_t
 Multiple-block write specialization data_write_callback_arg. More...
 
struct  globus_dsi_rest_gridftp_op_arg_s
 GridFTP Operation write specialization data_write_callback_arg. More...
 
struct  globus_dsi_rest_write_multipart_arg_s
 Multipart write specialization data_write_callback_arg. More...
 
struct  globus_dsi_rest_read_multipart_arg_s
 Multipart write specialization data_read_callback_arg. More...
 
struct  globus_dsi_rest_response_arg_s
 Response specialization response_callback_arg. More...
 

Typedefs

typedef struct globus_dsi_rest_key_value_s globus_dsi_rest_key_value_t
 Key-Value Pairs. More...
 
typedef struct globus_dsi_rest_key_array_s globus_dsi_rest_key_array_t
 Key-Value Pair Array. More...
 
typedef globus_result_t(* globus_dsi_rest_response_t) (void *response_callback_arg, int response_code, const char *response_status, const globus_dsi_rest_key_array_t *response_headers)
 Response Callback Signature. More...
 
typedef globus_result_t(* globus_dsi_rest_write_t) (void *write_callback_arg, void *buffer, size_t buffer_length, size_t *amount_copied)
 Data Write Callback Signature. More...
 
typedef globus_result_t(* globus_dsi_rest_read_t) (void *read_callback_arg, void *buffer, size_t buffer_length)
 Data Read Callback Signature. More...
 
typedef void(* globus_dsi_rest_complete_t) (void *complete_callback_arg, globus_result_t result)
 Request Complete Callback Signature. More...
 
typedef globus_result_t(* globus_dsi_rest_progress_t) (void *progress_callback_arg, uint64_t total_read, uint64_t amt_read, uint64_t total_written, uint64_t amt_written)
 Request Progress Callback Signature. More...
 
typedef struct globus_dsi_rest_write_block_arg_s globus_dsi_rest_write_block_arg_t
 Single-block write specialization data_write_callback_arg. More...
 
typedef struct globus_dsi_rest_gridftp_op_arg_s globus_dsi_rest_gridftp_op_arg_t
 GridFTP Operation write specialization data_write_callback_arg. More...
 
typedef struct globus_dsi_rest_write_multipart_arg_s globus_dsi_rest_write_multipart_arg_t
 Multipart write specialization data_write_callback_arg. More...
 
typedef struct globus_dsi_rest_read_multipart_arg_s globus_dsi_rest_read_multipart_arg_t
 Multipart write specialization data_read_callback_arg. More...
 
typedef struct globus_dsi_rest_response_arg_s globus_dsi_rest_response_arg_t
 Response specialization response_callback_arg. More...
 

Functions

globus_result_t globus_dsi_rest_request (const char *method, const char *uri, const globus_dsi_rest_key_array_t *query_parameters, const globus_dsi_rest_key_array_t *headers, const globus_dsi_rest_callbacks_t *callbacks)
 Perform a REST request. More...
 
globus_result_t globus_dsi_rest_uri_add_query (const char *uri, const globus_dsi_rest_key_array_t *query_parameters, char **complete_urip)
 Add query parameters to a URI base string. More...
 
globus_result_t globus_dsi_rest_uri_escape (const char *s, char **escaped)
 Escape a string. More...
 
bool globus_dsi_rest_error_is_retryable (globus_result_t result)
 Check if an error is transient. More...
 

Variables

const globus_dsi_rest_write_t globus_dsi_rest_write_block
 Single-block write specialization of globus_dsi_rest_write_t. More...
 
const globus_dsi_rest_write_t globus_dsi_rest_write_json
 JSON write specialization of globus_dsi_rest_write_t. More...
 
const globus_dsi_rest_write_t globus_dsi_rest_write_blocks
 Multiple-block write specialization of the globus_dsi_rest_write_t. More...
 
const globus_dsi_rest_write_t globus_dsi_rest_write_form
 POST FORM write specialization of globus_dsi_rest_write_t. More...
 
const globus_dsi_rest_write_t globus_dsi_rest_write_gridftp_op
 GridFTP operation write specialization of globus_dsi_rest_write_t. More...
 
const globus_dsi_rest_write_t globus_dsi_rest_write_multipart
 Multipart write specialization of globus_dsi_rest_write_t. More...
 
const globus_dsi_rest_read_t globus_dsi_rest_read_multipart
 Multipart read specialization of globus_dsi_rest_read_t. More...
 
const globus_dsi_rest_read_t globus_dsi_rest_read_json
 JSON read specialization of globus_dsi_rest_read_t. More...
 
const globus_dsi_rest_read_t globus_dsi_rest_read_gridftp_op
 GridFTP operation read specialization of globus_dsi_rest_read_t. More...
 
const globus_dsi_rest_progress_t globus_dsi_rest_progress_idle_timeout
 Idle timeout specialization of globus_dsi_rest_progress_t. More...
 
const globus_dsi_rest_response_t globus_dsi_rest_response
 Response parsing specialization of globus_dsi_rest_response_t. More...
 

Detailed Description

GridFTP DSI REST Helper API

This header describes the public interface to the GridFTP DSI REST Helper API.

Function Documentation

◆ globus_dsi_rest_error_is_retryable()

bool globus_dsi_rest_error_is_retryable ( globus_result_t  result)

Check if an error is transient.

This function checks whether the error object referenced by result is a potentially transient network error. It returns true if the result does not seem to indicate a non-recoverable error.

Parameters
[in]resultThe result to check to see if the error might be handled by retrying the operation.