Macros | Typedefs | Enumerations | Functions
Vortex XML-RPC types: XML-RPC data abstraction layer, supporting types used.

Macros

#define CREATE_FAULT_REPLY(fault_code, fault_string)   vortex_xml_rpc_method_response_new (XML_RPC_FAIL, fault_code, fault_string, NULL);
 Creates a negative XmlRpcMethodResponse containing the provided fault code and fault string. More...
 
#define CREATE_OK_REPLY(ctx, type, value)   vortex_xml_rpc_method_response_create (ctx, type, value);
 Helper function to create positive XmlRpcMethodResponse objects by providing a reference to the XmlRpcMethodValue. More...
 
#define method_call_add_value   vortex_xml_rpc_method_call_add_value
 Alias definition for vortex_xml_rpc_method_call_add_value. More...
 
#define method_call_create_value   vortex_xml_rpc_method_call_create_value
 Alias definition for vortex_xml_rpc_method_call_create_value. More...
 
#define method_call_create_value_from_string   vortex_xml_rpc_method_call_create_value_from_string
 Alias definition for vortex_xml_rpc_method_call_create_value_from_string. More...
 
#define METHOD_CALL_CTX(mc)   (vortex_xml_rpc_method_call_get_ctx (mc))
 Allows to get the VortexCtx associated to the method call object provided. More...
 
#define method_call_free   vortex_xml_rpc_method_call_free
 Alias definition for vortex_xml_rpc_method_call_free. More...
 
#define method_call_get_current_num_params   vortex_xml_rpc_method_call_get_current_num_params
 Alias definition for vortex_xml_rpc_method_call_get_current_num_params. More...
 
#define method_call_get_msgno   vortex_xml_rpc_method_call_get_msgno
 Alias definition for vortex_xml_rpc_method_call_get_msgno. More...
 
#define method_call_get_name   vortex_xml_rpc_method_call_get_name
 Alias definition for vortex_xml_rpc_method_call_get_name. More...
 
#define method_call_get_num_params   vortex_xml_rpc_method_call_get_num_params
 Alias definition for vortex_xml_rpc_method_call_get_num_params. More...
 
#define method_call_get_param_value   vortex_xml_rpc_method_call_get_param_value
 Alias definition for vortex_xml_rpc_method_call_get_param_value. More...
 
#define method_call_get_param_value_as_array   vortex_xml_rpc_method_call_get_param_value_as_array
 Alias definition for vortex_xml_rpc_method_call_get_param_value_as_array. More...
 
#define method_call_get_param_value_as_double   vortex_xml_rpc_method_call_get_param_value_as_double
 Alias definition for vortex_xml_rpc_method_call_get_param_value_as_double. More...
 
#define method_call_get_param_value_as_int   vortex_xml_rpc_method_call_get_param_value_as_int
 Alias definition for vortex_xml_rpc_method_call_get_param_value_as_int. More...
 
#define method_call_get_param_value_as_string   vortex_xml_rpc_method_call_get_param_value_as_string
 Alias definition for vortex_xml_rpc_method_call_get_param_value_as_string. More...
 
#define method_call_get_param_value_as_struct   vortex_xml_rpc_method_call_get_param_value_as_struct
 Alias definition for vortex_xml_rpc_method_call_get_param_value_as_struct. More...
 
#define method_call_is   vortex_xml_rpc_method_call_is
 Alias definition for vortex_xml_rpc_method_call_is. More...
 
#define method_call_marshall   vortex_xml_rpc_method_call_marshall
 Alias definition for vortex_xml_rpc_method_call_marshall. More...
 
#define method_call_new   vortex_xml_rpc_method_call_new
 Alias definition for vortex_xml_rpc_method_call_new. More...
 
#define method_call_set_value   vortex_xml_rpc_method_call_set_value
 Alias definition for vortex_xml_rpc_method_call_set_value. More...
 
#define method_response_free   vortex_xml_rpc_method_response_free
 Alias definition for vortex_xml_rpc_method_response_free. More...
 
#define method_response_get_fault_code   vortex_xml_rpc_method_response_get_fault_code
 Alias definition for vortex_xml_rpc_method_response_get_fault_code. More...
 
#define method_response_get_fault_string   vortex_xml_rpc_method_response_get_fault_string
 Alias definition for vortex_xml_rpc_method_response_get_fault_string. More...
 
#define method_response_get_status   vortex_xml_rpc_method_response_get_status
 Alias definition for vortex_xml_rpc_method_response_get_status. More...
 
#define method_response_get_value   vortex_xml_rpc_method_response_get_value
 Alias definition for vortex_xml_rpc_method_response_get_value. More...
 
#define method_response_new   vortex_xml_rpc_method_response_new
 Alias definition for vortex_xml_rpc_method_response_new. More...
 
#define method_response_stringify   vortex_xml_rpc_method_response_stringify
 Alias definition for vortex_xml_rpc_method_response_stringify. More...
 
#define method_value_copy   vortex_xml_rpc_method_value_copy
 Alias definition for vortex_xml_rpc_method_value_copy. More...
 
#define method_value_free   vortex_xml_rpc_method_value_free
 Alias definition for vortex_xml_rpc_method_value_free. More...
 
#define method_value_get_as_array   vortex_xml_rpc_method_value_get_as_array
 Alias definition for vortex_xml_rpc_method_value_get_as_array. More...
 
#define method_value_get_as_double   vortex_xml_rpc_method_value_get_as_double
 Alias definition for vortex_xml_rpc_method_value_get_as_double. More...
 
#define method_value_get_as_int   vortex_xml_rpc_method_value_get_as_int
 Alias definition for vortex_xml_rpc_method_value_get_as_int. More...
 
#define method_value_get_as_string   vortex_xml_rpc_method_value_get_as_string
 Alias definition for vortex_xml_rpc_method_value_get_as_string. More...
 
#define method_value_get_as_struct   vortex_xml_rpc_method_value_get_as_struct
 Alias definition for vortex_xml_rpc_method_value_get_as_struct. More...
 
#define method_value_get_type   vortex_xml_rpc_method_value_get_type
 Alias definition for vortex_xml_rpc_method_value_get_type. More...
 
#define method_value_new   vortex_xml_rpc_method_value_new
 Alias definition for vortex_xml_rpc_method_value_new. More...
 
#define method_value_new_from_string   vortex_xml_rpc_method_value_new_from_string
 Alias definition for vortex_xml_rpc_method_value_new_from_string. More...
 
#define REPLY_FAULT(string, code, error)
 Perform an error reply inside a XML-RPC server stub implementation. More...
 
#define XML_RPC_EMPTY_STR   ""
 XML-RPC protocol have a design that do not allow to send NULL values or "none". More...
 

Typedefs

typedef struct _XmlRpcArray XmlRpcArray
 Abstraction of an array of values. More...
 
typedef axlPointer(* XmlRpcArrayUnMarshaller )(XmlRpcArray *array, axl_bool dealloc)
 Unmarshaller function that receives a XmlRpcArray reference and translates it to a native representation. More...
 
typedef struct _XmlRpcMethodCall XmlRpcMethodCall
 Represents an abstraction of a remote procedure invocation. More...
 
typedef struct
_XmlRpcMethodResponse 
XmlRpcMethodResponse
 Abstraction to represent a method response object. More...
 
typedef struct _XmlRpcMethodValue XmlRpcMethodValue
 Abstraction of a value stored inside a method call or a method response. More...
 
typedef void(* XmlRpcProcessArray )(XmlRpcArray *array, XmlRpcResponseStatus status, int fault_code, char *fault_string)
 Async reply notification for XML-RPC services that returns as a result an array value. More...
 
typedef void(* XmlRpcProcessDouble )(double result, XmlRpcResponseStatus status, int fault_code, char *fault_string)
 Async reply notification for XML-RPC services that returns as a result a double value. More...
 
typedef void(* XmlRpcProcessInt )(int result, XmlRpcResponseStatus status, int fault_code, char *fault_string)
 Async reply notification for XML-RPC services that returns as a result an integer value. More...
 
typedef void(* XmlRpcProcessString )(char *result, XmlRpcResponseStatus status, int fault_code, char *fault_string)
 Async reply notification for XML-RPC services that returns as a result a string value. More...
 
typedef void(* XmlRpcProcessStruct )(XmlRpcStruct *_struct, XmlRpcResponseStatus status, int fault_code, char *fault_string)
 Async reply notification for XML-RPC services that returns as a result a structure value. More...
 
typedef struct _XmlRpcStruct XmlRpcStruct
 Abstraction of a special value representing an struct. More...
 
typedef struct _XmlRpcStructMember XmlRpcStructMember
 Abstraction of a single member inside a struct. More...
 
typedef axlPointer(* XmlRpcStructUnMarshaller )(XmlRpcStruct *_struct, axl_bool dealloc)
 Unmarshaller function that receives a XmlRpcStruct reference and translates it to a native representation. More...
 

Enumerations

enum  XmlRpcParamType { ,
  XML_RPC_UNKNOWN_VALUE = 1, XML_RPC_INT_VALUE = 2, XML_RPC_BOOLEAN_VALUE = 3, XML_RPC_DOUBLE_VALUE = 4,
  XML_RPC_STRING_VALUE = 5, XML_RPC_DATE_VALUE = 6, XML_RPC_BASE64_VALUE = 7, XML_RPC_STRUCT_VALUE = 8,
  XML_RPC_ARRAY_VALUE = 9, XML_RPC_STRING_REF_VALUE = 10, XML_RPC_BASE64_REF_VALUE = 11, XML_RPC_NONE_VALUE = 12
}
 Values supported to send as parameters for a method invocation and a method response. More...
 
enum  XmlRpcResponseStatus {
  XML_RPC_UNKNOWN_ERROR = -1, XML_RPC_OK = 1, XML_RPC_FAIL = -2, XML_RPC_CHANNEL_NOT_READY = -3,
  XML_RPC_NOT_XML_RPC_CHANNEL = -4, XML_RPC_WAITING_PREVIOUS = -5, XML_RPC_INVOCATION_FAILURE = -6, XML_RPC_TIMEOUT_ERROR = -7,
  XML_RPC_BAD_REPLY_RECEIVED = -8, XML_RPC_FAULT_REPLY = -9
}
 Represents current XmlRpc status operation. More...
 

Functions

void vortex_xml_rpc_array_add (XmlRpcArray *array, XmlRpcMethodValue *value)
 Addes the next item (XmlRpcMethodValue) to the provided XmlRpcArray. More...
 
int vortex_xml_rpc_array_count (XmlRpcArray *array)
 Returns the number of items inside the provided XmlRpcArray. More...
 
void vortex_xml_rpc_array_free (XmlRpcArray *array)
 Deallocates the provided XmlRpcArray reference. More...
 
XmlRpcMethodValuevortex_xml_rpc_array_get (XmlRpcArray *array, int index)
 Returns the reference of the XmlRpcMethodValue inside the provided XmlRpcArray, at the provided position. More...
 
int vortex_xml_rpc_array_max_count (XmlRpcArray *array)
 Returns the maximum number of items inside the provided array, that is, the number of items that could hold the provided array (the value configured at vortex_xml_rpc_array_new). More...
 
XmlRpcArrayvortex_xml_rpc_array_new (int count)
 Allows to create a new XmlRpcArray reference that will contain the provided number of item. More...
 
axl_bool vortex_xml_rpc_array_ref (XmlRpcArray *array)
 Allows to update reference counting on the provided xml rpc array. More...
 
void vortex_xml_rpc_array_set (XmlRpcArray *array, int index, XmlRpcMethodValue *value)
 Configures the provided XmlRpcMethodValue at the provided position, for the selected XmlRpcArray. More...
 
int vortex_xml_rpc_method_call_add_value (XmlRpcMethodCall *method_call, XmlRpcMethodValue *value)
 Allows to add the given XmlRpcMethodValue in the next parameter position available. More...
 
axl_bool vortex_xml_rpc_method_call_create_value (XmlRpcMethodCall *method_call, XmlRpcParamType type, axlPointer value)
 Convenience function to avoid XML-RPC API consumers to write to much code. More...
 
axl_bool vortex_xml_rpc_method_call_create_value_from_string (XmlRpcMethodCall *method_call, XmlRpcParamType type, const char *string_value)
 Convenience function to avoid XML-RPC API consumers to write to much code. More...
 
void vortex_xml_rpc_method_call_free (XmlRpcMethodCall *method_call)
 Unref all memory allocated by the method call object and its childs, including method call values. More...
 
VortexCtxvortex_xml_rpc_method_call_get_ctx (XmlRpcMethodCall *method_call)
 Allows to get the VortexCtx associated to the method call object provided. More...
 
int vortex_xml_rpc_method_call_get_current_num_params (XmlRpcMethodCall *method_call)
 Allows to get current number of parameters already added to the given XmlRpcMethodCall object. More...
 
int vortex_xml_rpc_method_call_get_msgno (XmlRpcMethodCall *method_call)
 Allows to get the message number, unique identifier inside the channel, where the xml-rpc method call was received. More...
 
char * vortex_xml_rpc_method_call_get_name (XmlRpcMethodCall *method_call)
 Allows to get current method name for the given XmlRpcMethodCall object. More...
 
int vortex_xml_rpc_method_call_get_num_params (XmlRpcMethodCall *method_call)
 Allows to get which is the number of parameters that the given XmlRpcMethodCall object has. More...
 
XmlRpcMethodValuevortex_xml_rpc_method_call_get_param_value (XmlRpcMethodCall *method_call, int position)
 Allows to get the param value (XmlRpcMethodValue) from the given XmlRpcMethodCall at the selected position. More...
 
XmlRpcArrayvortex_xml_rpc_method_call_get_param_value_as_array (XmlRpcMethodCall *method_call, int position)
 Allows to get the XmlRpcArray inside the provided method call. More...
 
double vortex_xml_rpc_method_call_get_param_value_as_double (XmlRpcMethodCall *method_call, int position)
 Allow to get current double value associated to the giveh XmlRpcMethodCall, at the given position for the parameter value. More...
 
int vortex_xml_rpc_method_call_get_param_value_as_int (XmlRpcMethodCall *method_call, int position)
 Helper function that allows to get the <integer> value from the given position for the arguments received inside the given XmlRpcMethodCall object. More...
 
char * vortex_xml_rpc_method_call_get_param_value_as_string (XmlRpcMethodCall *method_call, int position)
 Convenience function to the the string associated to the given parameter, indentified by the position, inside the given XmlRpcMethodCall object. More...
 
XmlRpcStructvortex_xml_rpc_method_call_get_param_value_as_struct (XmlRpcMethodCall *method_call, int position)
 Allows to get the struct provided at the given position. More...
 
axl_bool vortex_xml_rpc_method_call_is (XmlRpcMethodCall *method_call, const char *method_name, int param_num,...)
 Allows to check if the given method call meets the requirements provided. More...
 
char * vortex_xml_rpc_method_call_marshall (XmlRpcMethodCall *method_call, int *size)
 Perform a marshalling from the invocator provided (method_call) into the appropiate XML-RPC representation. More...
 
axl_bool vortex_xml_rpc_method_call_must_release (XmlRpcMethodCall *method_call)
 Returns current status for releasing the given object after performing an invoke. More...
 
XmlRpcMethodCallvortex_xml_rpc_method_call_new (VortexCtx *ctx, const char *methodName, int parameters)
 Creates a new method call object, representing a remote procedure invocation. More...
 
void vortex_xml_rpc_method_call_release_after_invoke (XmlRpcMethodCall *method_call, axl_bool release)
 Allows to configure how the XML-RPC invocation mechanism manages invocator objects that have performed its invocation. More...
 
axl_bool vortex_xml_rpc_method_call_set_value (XmlRpcMethodCall *method_call, int position, XmlRpcMethodValue *value)
 Allows to set a particular value at a particular position into the parameter invocation order. More...
 
XmlRpcMethodResponsevortex_xml_rpc_method_response_create (VortexCtx *ctx, XmlRpcParamType type, axlPointer value)
 Creates a new positive XmlRpcMethodResponse object, inserting a XmlRpcMethodValue instance created by providing the type and value this function receives. More...
 
void vortex_xml_rpc_method_response_free (XmlRpcMethodResponse *response)
 Deallocates the given XmlRpcMethodResponse object. More...
 
int vortex_xml_rpc_method_response_get_fault_code (XmlRpcMethodResponse *response)
 Get current fault code from the given XmlRpcMethodResponse object. More...
 
char * vortex_xml_rpc_method_response_get_fault_string (XmlRpcMethodResponse *response)
 Get current fault string from the given XmlRpcMethodResponse object. More...
 
XmlRpcResponseStatus vortex_xml_rpc_method_response_get_status (XmlRpcMethodResponse *response)
 Returns current status for the invocation performed which has return the given XmlRpcMethodResponse. More...
 
XmlRpcMethodValuevortex_xml_rpc_method_response_get_value (XmlRpcMethodResponse *response)
 Allows to get the XmlRpcMethodValue inside the provided XmlRpcMethodResponse. More...
 
char * vortex_xml_rpc_method_response_marshall (XmlRpcMethodResponse *response, int *size)
 Allows to perform a marshalling operation into the XML representation for the given XmlRpcMethodResponse object. More...
 
XmlRpcMethodResponsevortex_xml_rpc_method_response_new (XmlRpcResponseStatus status, int fault_code, const char *fault_string, XmlRpcMethodValue *value)
 Allows to create a new XmlRpcMethodResponse object, representing a request reply having either a XmlRpcMethodValue or a error code with a fault string. More...
 
void vortex_xml_rpc_method_response_nullify (XmlRpcMethodResponse *response)
 Nullifies the internal XmlRpcMethodValue reference hold by the XmlRpcMethodResponse reference. More...
 
char * vortex_xml_rpc_method_response_stringify (XmlRpcMethodResponse *response)
 Allows to get a string representation for the XmlRpcMethodValue inside the given XmlRpcMethodResponse. More...
 
XmlRpcMethodValuevortex_xml_rpc_method_value_copy (XmlRpcMethodValue *value)
 Allows to perform a copy from the provided method value. More...
 
void vortex_xml_rpc_method_value_free (XmlRpcMethodValue *value)
 Perform a memory deallocation operation over the given value. More...
 
XmlRpcArrayvortex_xml_rpc_method_value_get_as_array (XmlRpcMethodValue *value)
 Allows to get the array (XmlRpcArray) inside the provided XmlRpcMethodValue. More...
 
double vortex_xml_rpc_method_value_get_as_double (XmlRpcMethodValue *value)
 Allows to get the double value inside the provided XmlRpcMethodValue. More...
 
int vortex_xml_rpc_method_value_get_as_int (XmlRpcMethodValue *value)
 Allows to get current integer value from the given method value object (XmlRpcMethodValue). More...
 
char * vortex_xml_rpc_method_value_get_as_string (XmlRpcMethodValue *value)
 Allows to get the string inside the method value, supposing the method value represents an XML_RPC_STRING_VALUE. More...
 
char * vortex_xml_rpc_method_value_get_as_string_alloc (XmlRpcMethodValue *value)
 Allows to get the string inside the method value, supposing the method value represents an XML_RPC_STRING_VALUE. More...
 
XmlRpcStructvortex_xml_rpc_method_value_get_as_struct (XmlRpcMethodValue *value)
 Allows to get the struct (XmlRpcStruct) inside the provided XmlRpcMethodValue. More...
 
XmlRpcParamType vortex_xml_rpc_method_value_get_type (XmlRpcMethodValue *value)
 Allows to get current type for the given method value. More...
 
XmlRpcMethodValuevortex_xml_rpc_method_value_new (VortexCtx *ctx, XmlRpcParamType type, axlPointer value)
 Allows to create a new XmlRpcMethodValue object from the given type and the given value. More...
 
XmlRpcMethodValuevortex_xml_rpc_method_value_new_bool (VortexCtx *ctx, axl_bool value)
 Convenience interface to vortex_xml_rpc_method_value_new which allows to create a new XmlRpcMethodValue storing a bool value. More...
 
XmlRpcMethodValuevortex_xml_rpc_method_value_new_double (VortexCtx *ctx, double value)
 Convenience interface to vortex_xml_rpc_method_value_new which allows to create a new XmlRpcMethodValue storing a double value. More...
 
XmlRpcMethodValuevortex_xml_rpc_method_value_new_from_string (VortexCtx *ctx, XmlRpcParamType type, const char *string_value)
 Creates a new XmlRpcMethodValue object from the given type, using as value the string provided. More...
 
XmlRpcMethodValuevortex_xml_rpc_method_value_new_from_string2 (VortexCtx *ctx, const char *type, const char *string_value)
 Allows to create a new method value (XmlRpcMethodValue) by providing two strings which are the type and the value representation. More...
 
XmlRpcMethodValuevortex_xml_rpc_method_value_new_int (VortexCtx *ctx, int value)
 Convenience interface to vortex_xml_rpc_method_value_new which allows to create a new XmlRpcMethodValue storing an integer value. More...
 
void vortex_xml_rpc_method_value_nullify (XmlRpcMethodValue *_value)
 Allows to nullify provided method value, in the case an internal reference is contained to avoid deallocating it once the vortex_xml_rpc_method_value_free is called. More...
 
char * vortex_xml_rpc_method_value_stringify (XmlRpcMethodValue *value)
 Allows to convert the provided XmlRpcMethodValue into a string representation. More...
 
void vortex_xml_rpc_struct_add_member (XmlRpcStruct *_struct, XmlRpcStructMember *member)
 Adds a XmlRpcMethodValue created to the provided XmlRpcStruct instance as a new member. More...
 
axl_bool vortex_xml_rpc_struct_check_member_names (XmlRpcStruct *_struct, int member_count,...)
 Checks the provided strings, using as upper limit the provided count, as members for the provided struct. More...
 
axl_bool vortex_xml_rpc_struct_check_member_types (XmlRpcStruct *_struct, int member_count,...)
 Allows to check the member types, for the provided structure, including the order. More...
 
void vortex_xml_rpc_struct_free (XmlRpcStruct *_struct)
 Allows to deallocate the provided struct reference (XmlRpcStruct), including all of its members. More...
 
int vortex_xml_rpc_struct_get_member_count (XmlRpcStruct *_struct)
 Allows to get the number of members added to the provided XmlRpcStruct. More...
 
char * vortex_xml_rpc_struct_get_member_name_at (XmlRpcStruct *_struct, int position)
 Allows to get the nember name for the member inside the struct located at the given position. More...
 
XmlRpcMethodValuevortex_xml_rpc_struct_get_member_value (XmlRpcStruct *_struct, const char *member_name)
 Allows to get the method value at the provided member for the given struct reference. More...
 
XmlRpcArrayvortex_xml_rpc_struct_get_member_value_as_array (XmlRpcStruct *_struct, const char *member_name)
 Allows to get the array inside the provided structure, at the select member. More...
 
double vortex_xml_rpc_struct_get_member_value_as_double (XmlRpcStruct *_struct, const char *member_name)
 Return the double value inside the provided struct at the selected member. More...
 
int vortex_xml_rpc_struct_get_member_value_as_int (XmlRpcStruct *_struct, const char *member_name)
 Allows to get the integer value associated to the provided member name, inside the provided struct. More...
 
char * vortex_xml_rpc_struct_get_member_value_as_string (XmlRpcStruct *_struct, const char *member_name)
 Allows to get the string value stored in a selected member at the provided structure. More...
 
XmlRpcStructvortex_xml_rpc_struct_get_member_value_as_struct (XmlRpcStruct *_struct, const char *member_name)
 Allows to get the struct inside the provided member on the provided struct. More...
 
XmlRpcMethodValuevortex_xml_rpc_struct_get_member_value_at (XmlRpcStruct *_struct, int position)
 Allows to get the member at the given position (ranging from 0 up to n -1) inside the given struct. More...
 
void vortex_xml_rpc_struct_member_free (XmlRpcStructMember *member)
 Allows to deallocate the member (XmlRpcStructMember) provided. More...
 
XmlRpcStructMembervortex_xml_rpc_struct_member_new (const char *name, XmlRpcMethodValue *value)
 Allows to create a new instance that represents an struct member. More...
 
XmlRpcStructvortex_xml_rpc_struct_new (int count)
 Allows to create an empty xml rpc struct. More...
 
axl_bool vortex_xml_rpc_struct_ref (XmlRpcStruct *_struct)
 Allows to update reference counting on the provided xml rpc struct. More...
 

Detailed Description