globus_connect_gridftp_server
15.80
|
Data Structures | |
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_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... | |
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... | |
typedef struct globus_dsi_rest_gridftp_op_arg_s globus_dsi_rest_gridftp_op_arg_t |
GridFTP Operation write specialization data_write_callback_arg.
A pointer to a data structure of this type must be be used as the data_write_callback_arg parameter when using the globus_dsi_rest_write_gridftp_op() function as the data_write_callback to globus_dsi_rest_request().
Multipart write specialization data_read_callback_arg.
A pointer to a data structure of this type must be be used as the data_read_callback_arg parameter when using the globus_dsi_rest_read_multipart() function as the data_read_callback to globus_dsi_rest_request().
typedef struct globus_dsi_rest_response_arg_s globus_dsi_rest_response_arg_t |
Response specialization response_callback_arg.
A pointer to a data structure of this type must be be used as the response_callback_arg parameter when using the globus_dsi_rest_response function as the response_callback to globus_dsi_rest_request().
Single-block write specialization data_write_callback_arg.
A pointer to a data structure of this type must be be used as the data_write_callback_arg parameter when using the globus_dsi_rest_write_block() function as the data_write_callback to globus_dsi_rest_request().
Multipart write specialization data_write_callback_arg.
A pointer to a data structure of this type must be be used as the data_write_callback_arg parameter when using the globus_dsi_rest_write_multipart() function as the data_write_callback to globus_dsi_rest_request().
const globus_dsi_rest_progress_t globus_dsi_rest_progress_idle_timeout |
Idle timeout specialization of globus_dsi_rest_progress_t.
This function implements the globus_dsi_rest_progress_t interface and is intended to be used to provide an idle timeout implementation.
The progress_callback_arg used with this function MUST BE a uintptr_t with its value meaning the number of milliseconds without any data read or written that triggers the timeout.
const globus_dsi_rest_read_t globus_dsi_rest_read_gridftp_op |
GridFTP operation read specialization of globus_dsi_rest_read_t.
This function implements the globus_dsi_rest_read_t interface and is intended to be used in the situation when the data to receive from the REST server is to be sent to the data channels associated with a GridFTP DSI operation. This function will call globus_gridftp_server_register_write() and send the resulting data to the GridFTP data channel.
The read_callback_arg used with this function MUST BE a pointer to a globus_dsi_rest_gridftp_op_arg_t.
const globus_dsi_rest_read_t globus_dsi_rest_read_json |
JSON read specialization of globus_dsi_rest_read_t.
This function implements the globus_dsi_rest_read_t interface and is intended to be used in the situation when the data to receive from the REST server is a json object. The callback will parse the data.
The read_callback_arg passed to this function MUST BE a json ** cast to a void *. This function will cause the request to fail if the Content-Type of the response is not "application/json" or if the content is not parseable as json.
const globus_dsi_rest_read_t globus_dsi_rest_read_multipart |
Multipart read specialization of globus_dsi_rest_read_t.
This function implements the globus_dsi_rest_read_t interface and is intended to be used in the situation when the data to receive from the REST server is a multipart message.
The read_callback_arg passed to this function MUST BE a globus_dsi_rest_read_multipart_arg_t * cast to a void *. This function will cause the request to fail if the Content-Type of the response does not start with "multipart/".
const globus_dsi_rest_response_t globus_dsi_rest_response |
Response parsing specialization of globus_dsi_rest_response_t.
This function implements the globus_dsi_rest_response_t interface and is intended to be used to provide the HTTP status value and values of certain headers. This is intended to be used when a application wants to receive the response code and specific header values without having to implement callbacks.
The response_callback_arg used with this function MUST BE a pointer to a globus_dsi_rest_response_arg_t structure, with the desired_headers array initialized with a count and a key_value array containing only the key values initialized to the names of the headers that the application wants filled in.
When this function is used, the response_code will be set to the HTTP response code, and the values in the desired_headers.key_value array will be updated for each of the keys which was present in the HTTP response.
const globus_dsi_rest_write_t globus_dsi_rest_write_block |
Single-block write specialization of globus_dsi_rest_write_t.
This function implements the globus_dsi_rest_write_t interface and is intended to be used in the situation when the data to send to the REST server is contained in a single data array.
The write_callback_arg used with this MUST BE a pointer to a globus_dsi_rest_write_block_arg_t.
const globus_dsi_rest_write_t globus_dsi_rest_write_blocks |
Multiple-block write specialization of the globus_dsi_rest_write_t.
This function implements the globus_dsi_rest_write_t interface and is intended to be used in the situation where the data to send to the REST server is contained in multiple data arrays.
The write_callback_arg used with this MUST BE a pointer to a globus_dsi_rest_write_blocks_arg_t.
const globus_dsi_rest_write_t globus_dsi_rest_write_form |
POST FORM write specialization of globus_dsi_rest_write_t.
This function implements the globus_dsi_rest_write_t interface and is intended to be used in the situation when the data to send to the REST server is to be a application/x-www-form-urlencoded post body.
The write_callback_arg used with this function MUST BE a pointer to a globus_dsi_rest_key_array_t.
const globus_dsi_rest_write_t globus_dsi_rest_write_gridftp_op |
GridFTP operation write specialization of globus_dsi_rest_write_t.
This function implements the globus_dsi_rest_write_t interface and is intended to be used in the situation when the data to send to the REST server is coming from the data channels associated with a GridFTP DSI operation. This function will call globus_gridftp_server_register_read() and send the resulting data to the REST server.
The write_callback_arg used with this function MUST BE a pointer to a globus_dsi_rest_gridftp_op_arg_t.
const globus_dsi_rest_write_t globus_dsi_rest_write_json |
JSON write specialization of globus_dsi_rest_write_t.
This function implements the globus_dsi_rest_write_t interface and is intended to be used in the situation when the data to send from the REST server is a json object. The callback will serialize the json object and send it. The Content-Type header will be automatically set to application/json when this specialization is used, so it doesn't need to be set in the header explicitly.
The write_callback_arg used with this function MUST BE a json *.
const globus_dsi_rest_write_t globus_dsi_rest_write_multipart |
Multipart write specialization of globus_dsi_rest_write_t.
This function implements the globus_dsi_rest_write_t interface and is intended to be used in the situation when the data to send to the REST server is multipart message.
The write_callback_arg used with this function MUST BE a pointer to a globus_dsi_rest_write_multipart_arg_t.
If the headers for the message contain a Content-Type type that is a multipart type, then the header is scanned for a boundary. If no Content-Type header is included, a multipart/related header is used and a boundary is created internally. If the Content-Type is included and is a non-multipart type, then no boundary is used, and the different parts are concatenated without any boundary.
The part_writer, part_writer_arg, and part_header arrays all contain num_parts elements.
For each part, this function serializes the part_header array as a set of HTTP headers for the message part. The array may be empty, either to include no headers for a part, or because this message is not a multipart/related message.
Then, this function sends the data by calling the part_writer repeatedly, passing the part_writer_arg as normal. When that function returns 0 bytes written or an error, then this function will (if defined) write the mulitpart boundary, and then continue to the next element in the array.
This function may be used to compose any of the other available write specializations into a multipart message.