![]() |
![]() |
![]() |
Loudmouth Reference Manual | ![]() |
---|---|---|---|---|
Top | Description |
struct LmMessageNode; const gchar * lm_message_node_get_value (LmMessageNode *node
); void lm_message_node_set_value (LmMessageNode *node
,const gchar *value
); LmMessageNode * lm_message_node_add_child (LmMessageNode *node
,const gchar *name
,const gchar *value
); void lm_message_node_set_attributes (LmMessageNode *node
,const gchar *name
,...
); const gchar * lm_message_node_get_attribute (LmMessageNode *node
,const gchar *name
); void lm_message_node_set_attribute (LmMessageNode *node
,const gchar *name
,const gchar *value
); LmMessageNode * lm_message_node_get_child (LmMessageNode *node
,const gchar *child_name
); LmMessageNode * lm_message_node_find_child (LmMessageNode *node
,const gchar *child_name
); gboolean lm_message_node_get_raw_mode (LmMessageNode *node
); void lm_message_node_set_raw_mode (LmMessageNode *node
,gboolean raw_mode
); LmMessageNode * lm_message_node_ref (LmMessageNode *node
); void lm_message_node_unref (LmMessageNode *node
); gchar * lm_message_node_to_string (LmMessageNode *node
);
struct LmMessageNode { gchar *name; gchar *value; gboolean raw_mode; LmMessageNode *next; LmMessageNode *prev; LmMessageNode *parent; LmMessageNode *children; };
A struct representing a node in a message.
the name of the node | |
value of the node, can be NULL | |
if true, don't escape the content of the message. The content must be valid XML. | |
LmMessageNode * |
next sibling |
LmMessageNode * |
previous sibling |
LmMessageNode * |
node parent |
LmMessageNode * |
pointing to first child |
const gchar * lm_message_node_get_value (LmMessageNode *node
);
Retrieves the value of node
.
|
an LmMessageNode |
Returns : |
The value of the node or NULL . |
void lm_message_node_set_value (LmMessageNode *node
,const gchar *value
);
Sets the value of node
. If a previous value is set it will be freed.
|
an LmMessageNode |
|
the new value. |
LmMessageNode * lm_message_node_add_child (LmMessageNode *node
,const gchar *name
,const gchar *value
);
Add a child node with name
and value set to value
.
|
an LmMessageNode |
|
the name of the new child |
|
value of the new child |
Returns : |
the newly created child |
void lm_message_node_set_attributes (LmMessageNode *node
,const gchar *name
,...
);
Sets a list of attributes. The arguments should be names and corresponding
value and needs to be ended with NULL
.
|
an LmMessageNode |
|
the first attribute, should be followed by a string with the value |
const gchar * lm_message_node_get_attribute (LmMessageNode *node
,const gchar *name
);
Fetches the attribute name
from node
.
|
an LmMessageNode |
|
the attribute name |
Returns : |
the attribute value or NULL if not set |
void lm_message_node_set_attribute (LmMessageNode *node
,const gchar *name
,const gchar *value
);
Sets the attribute name
to value
.
|
an LmMessageNode |
|
name of attribute |
|
value of attribute. |
LmMessageNode * lm_message_node_get_child (LmMessageNode *node
,const gchar *child_name
);
Fetches the child child_name
from node
. If child is not found as an
immediate child of node
NULL
is returned.
|
an LmMessageNode |
|
the childs name |
Returns : |
the child node or NULL if not found |
LmMessageNode * lm_message_node_find_child (LmMessageNode *node
,const gchar *child_name
);
Locates a child among all children of node
. The entire tree will be search
until a child with name child_name
is located.
|
A LmMessageNode |
|
The name of the child to find |
Returns : |
the located child or NULL if not found |
gboolean lm_message_node_get_raw_mode (LmMessageNode *node
);
Checks if the nodes value should be sent as raw mode.
|
an LmMessageNode |
Returns : |
TRUE if nodes value should be sent as is and FALSE if the value will be escaped before sending. |
void lm_message_node_set_raw_mode (LmMessageNode *node
,gboolean raw_mode
);
Set raw_mode
to TRUE
if you don't want to escape the value. You need to make sure the value is valid XML yourself.
|
an LmMessageNode |
|
boolean specifying if node value should be escaped or not. |
LmMessageNode * lm_message_node_ref (LmMessageNode *node
);
Adds a reference to node
.
|
an LmMessageNode |
Returns : |
the node |
void lm_message_node_unref (LmMessageNode *node
);
Removes a reference from node
. When no more references are present the
node is freed. When freed lm_message_node_unref()
will be called on all
children. If caller needs to keep references to the children a call to
lm_message_node_ref()
needs to be done before the call to
lm_message_unref()
.
|
an LmMessageNode |
gchar * lm_message_node_to_string (LmMessageNode *node
);
Returns an XML string representing the node. This is what is sent over the wire. This is used internally Loudmouth and is external for debugging purposes.
|
an LmMessageNode |
Returns : |
an XML string representation of node
|