Thu Apr 28 2011 17:16:23

Asterisk developer's documentation


xml.h File Reference

Asterisk XML abstraction layer. More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void ast_xml_close (struct ast_xml_doc *doc)
 Close an already open document and free the used structure.
struct ast_xml_node * ast_xml_find_element (struct ast_xml_node *root_node, const char *name, const char *attrname, const char *attrvalue)
 Find a node element by name.
int ast_xml_finish (void)
 Cleanup library allocated global data.
void ast_xml_free_attr (const char *attribute)
 Free an attribute returned by ast_xml_get_attribute()
void ast_xml_free_node (struct ast_xml_node *node)
 Free node.
void ast_xml_free_text (const char *text)
 Free a content element that was returned by ast_xml_get_text()
const char * ast_xml_get_attribute (struct ast_xml_node *node, const char *attrname)
 Get a node attribute by name.
struct ast_xml_node * ast_xml_get_root (struct ast_xml_doc *doc)
 Get the document root node.
const char * ast_xml_get_text (struct ast_xml_node *node)
 Get an element content string.
int ast_xml_init (void)
 Initialize the XML library implementation. This function is used to setup everything needed to start working with the xml implementation.
struct ast_xml_node * ast_xml_node_get_children (struct ast_xml_node *node)
 Get the node's children.
const char * ast_xml_node_get_name (struct ast_xml_node *node)
 Get the name of a node.
struct ast_xml_node * ast_xml_node_get_next (struct ast_xml_node *node)
 Get the next node in the same level.
struct ast_xml_node * ast_xml_node_get_parent (struct ast_xml_node *node)
 Get the parent of a specified node.
struct ast_xml_node * ast_xml_node_get_prev (struct ast_xml_node *node)
 Get the previous node in the same leve.
struct ast_xml_doc * ast_xml_open (char *filename)
 Open an XML document.

Detailed Description

Asterisk XML abstraction layer.

Definition in file xml.h.


Function Documentation

void ast_xml_close ( struct ast_xml_doc *  doc)

Close an already open document and free the used structure.

Return values:
docThe document reference.
struct ast_xml_node* ast_xml_find_element ( struct ast_xml_node *  root_node,
const char *  name,
const char *  attrname,
const char *  attrvalue 
) [read]

Find a node element by name.

Parameters:
nodeThis is the node starting point.
nameNode name to find.
attrnameattribute name to match (if NULL it won't be matched).
attrvalueattribute value to match (if NULL it won't be matched).
Return values:
NULLif not found
Thenode on success.
int ast_xml_finish ( void  )

Cleanup library allocated global data.

Return values:
0On success.
1On error.
void ast_xml_free_attr ( const char *  attribute)

Free an attribute returned by ast_xml_get_attribute()

Parameters:
datapointer to be freed.
void ast_xml_free_node ( struct ast_xml_node *  node)

Free node.

Parameters:
nodeNode to be released.
void ast_xml_free_text ( const char *  text)

Free a content element that was returned by ast_xml_get_text()

Parameters:
texttext to be freed.
const char* ast_xml_get_attribute ( struct ast_xml_node *  node,
const char *  attrname 
)

Get a node attribute by name.

Parameters:
nodeNode where to search the attribute.
attrnameAttribute name.
Return values:
NULLon error
Theattribute value on success.
struct ast_xml_node* ast_xml_get_root ( struct ast_xml_doc *  doc) [read]

Get the document root node.

Parameters:
docDocument reference
Return values:
NULLon error
Theroot node on success.
const char* ast_xml_get_text ( struct ast_xml_node *  node)

Get an element content string.

Parameters:
nodeNode from where to get the string.
Return values:
NULLon error.
Thetext content of node.
int ast_xml_init ( void  )

Initialize the XML library implementation. This function is used to setup everything needed to start working with the xml implementation.

Return values:
0On success.
1On error.
struct ast_xml_node* ast_xml_node_get_children ( struct ast_xml_node *  node) [read]

Get the node's children.

const char* ast_xml_node_get_name ( struct ast_xml_node *  node)

Get the name of a node.

struct ast_xml_node* ast_xml_node_get_next ( struct ast_xml_node *  node) [read]

Get the next node in the same level.

struct ast_xml_node* ast_xml_node_get_parent ( struct ast_xml_node *  node) [read]

Get the parent of a specified node.

struct ast_xml_node* ast_xml_node_get_prev ( struct ast_xml_node *  node) [read]

Get the previous node in the same leve.

struct ast_xml_doc* ast_xml_open ( char *  filename) [read]

Open an XML document.

Parameters:
filenameDocument path.
Return values:
NULLon error.
Theast_xml_doc reference to the open document.