bes  Updated for version 3.17.4
BESXMLUtils Class Reference

Static Public Member Functions

static xmlNode * GetChild (xmlNode *node, const string &child_name, string &child_value, map< string, string > &child_props)
 get the element child node of the given node with the given name More...
 
static xmlNode * GetFirstChild (xmlNode *node, string &child_name, string &child_value, map< string, string > &child_props)
 get the first element child node for the given node More...
 
static xmlNode * GetNextChild (xmlNode *child_node, string &next_name, string &next_value, map< string, string > &next_props)
 get the next element child node after the given child node More...
 
static void GetNodeInfo (xmlNode *node, string &name, string &value, map< string, string > &props)
 get the name, value if any, and any properties for the specified node More...
 
static void GetProps (xmlNode *node, map< string, string > &props)
 given an xml node, build the map of properties for that node More...
 
static void XMLErrorFunc (void *context, const char *msg,...)
 error function used by libxml2 to report errors More...
 

Detailed Description

Definition at line 46 of file BESXMLUtils.h.

Member Function Documentation

◆ GetChild()

xmlNode * BESXMLUtils::GetChild ( xmlNode *  node,
const string &  child_name,
string &  child_value,
map< string, string > &  child_props 
)
static
Parameters
nodethe xml node to get the named child node for
child_namename of the child element node to get
child_valueparameter to store the value, if any, of the named child
child_propsparameter to store any properties of the named child

Definition at line 184 of file BESXMLUtils.cc.

References GetNodeInfo(), and BESUtil::removeLeadingAndTrailingBlanks().

◆ GetFirstChild()

xmlNode * BESXMLUtils::GetFirstChild ( xmlNode *  node,
string &  child_name,
string &  child_value,
map< string, string > &  child_props 
)
static
Parameters
nodethe xml node to get the first element child from
child_nameparameter to store the name of the first child
child_valueparameter to store the value, if any, of the first child
child_propsparameter to store any properties of the first child

Definition at line 131 of file BESXMLUtils.cc.

References GetNodeInfo().

◆ GetNextChild()

xmlNode * BESXMLUtils::GetNextChild ( xmlNode *  child_node,
string &  next_name,
string &  next_value,
map< string, string > &  next_props 
)
static
Parameters
child_nodeget the next child after this child
next_nameparameter to store the name of the next child
next_valueparameter to store the value, if any, of the next child
next_propsparameter to store any properties of the next child

Definition at line 158 of file BESXMLUtils.cc.

References GetNodeInfo().

◆ GetNodeInfo()

void BESXMLUtils::GetNodeInfo ( xmlNode *  node,
string &  name,
string &  value,
map< string, string > &  props 
)
static
Parameters
nodethe xml node to get the information for
nameparameter to store the name of the node
valueparameter to store the value, if any, of the node
propsparameter to store any properties of the node

Definition at line 99 of file BESXMLUtils.cc.

References GetProps(), BESUtil::removeLeadingAndTrailingBlanks(), and BESUtil::xml2id().

◆ GetProps()

void BESXMLUtils::GetProps ( xmlNode *  node,
map< string, string > &  props 
)
static

Properties can have multiple values, hence the need for a map of string keys and a list of values.

Parameters
nodexml node to retrieve properties from
propsmap to store the property name and values in

Definition at line 65 of file BESXMLUtils.cc.

References BESUtil::removeLeadingAndTrailingBlanks(), and BESUtil::xml2id().

◆ XMLErrorFunc()

void BESXMLUtils::XMLErrorFunc ( void *  context,
const char *  msg,
  ... 
)
static

libxml2 has a default error function which simply displays the errors to stderr or stdout, whichever. This function can be used to replace the default function and store the error strings in a vector of strings

Parameters
contextvector<string> pointer to list of error strings
msgthe error message format string
...the arguments to the error message format string

Definition at line 46 of file BESXMLUtils.cc.


The documentation for this class was generated from the following files: