MySQL  8.0.22
Source Code Documentation
xcom_input_request.cc File Reference
#include "xcom/xcom_input_request.h"
#include <stdlib.h>
#include "xcom/xcom_memory.h"

Classes

struct  xcom_input_request
 

Typedefs

typedef struct xcom_input_request xcom_input_request
 

Functions

xcom_input_request_ptr xcom_input_request_new (app_data_ptr a, xcom_input_reply_function_ptr reply_function, void *reply_arg)
 Creates a new XCom request. More...
 
void xcom_input_request_free (xcom_input_request_ptr request)
 Frees the given request and its payload. More...
 
void xcom_input_request_set_next (xcom_input_request_ptr request, xcom_input_request_ptr next)
 Links request to the list of requests next. More...
 
xcom_input_request_ptr xcom_input_request_extract_next (xcom_input_request_ptr request)
 Unlinks request from its list. More...
 
app_data_ptr xcom_input_request_extract_app_data (xcom_input_request_ptr request)
 Extract the given request's payload. More...
 
void xcom_input_request_reply (xcom_input_request_ptr request, pax_msg *payload)
 Replies to the request using the strategy chosen by the request's origin. More...
 

Typedef Documentation

◆ xcom_input_request

Function Documentation

◆ xcom_input_request_extract_app_data()

app_data_ptr xcom_input_request_extract_app_data ( xcom_input_request_ptr  request)

Extract the given request's payload.

Transfers ownership of the result to the caller.

Parameters
requestthe request from which to extract the payload
Returns
the request's app_data payload

◆ xcom_input_request_extract_next()

xcom_input_request_ptr xcom_input_request_extract_next ( xcom_input_request_ptr  request)

Unlinks request from its list.

Parameters
requestthe request to unlink
Returns
the tail of the list the request was unlinked from

◆ xcom_input_request_free()

void xcom_input_request_free ( xcom_input_request_ptr  request)

Frees the given request and its payload.

Parameters
requestthe request to free

◆ xcom_input_request_new()

xcom_input_request_ptr xcom_input_request_new ( app_data_ptr  a,
xcom_input_reply_function_ptr  reply_function,
void *  reply_arg 
)

Creates a new XCom request.

Takes ownership of a.

Parameters
athe request's app_data payload
reply_functionthe function used to reply to the request
reply_argopaque argument to the reply_function
Return values
xcom_input_request_ptrif successful
NULLif unsuccessful

◆ xcom_input_request_reply()

void xcom_input_request_reply ( xcom_input_request_ptr  request,
pax_msg *  payload 
)

Replies to the request using the strategy chosen by the request's origin.

Parameters
requestthe request to reply to
payloadthe payload of the reply

◆ xcom_input_request_set_next()

void xcom_input_request_set_next ( xcom_input_request_ptr  request,
xcom_input_request_ptr  next 
)

Links request to the list of requests next.

Parameters
requestthe request to link
nextthe list to be linked to