BESXMLUtils Class Reference

#include <BESXMLUtils.h>

List of all members.

Public Member Functions

virtual ~BESXMLUtils ()

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
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
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
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
static void GetProps (xmlNode *node, map< string, string > &props)
 given an xml node, build the map of properties for that node
static void XMLErrorFunc (void *context, const char *msg,...)
 error function used by libxml2 to report errors

Detailed Description

Definition at line 46 of file BESXMLUtils.h.


Constructor & Destructor Documentation

virtual BESXMLUtils::~BESXMLUtils (  )  [virtual]

Member Function Documentation

xmlNode * BESXMLUtils::GetChild ( xmlNode *  node,
const string &  child_name,
string &  child_value,
map< string, string > &  child_props 
) [static]

get the element child node of the given node with the given name

Parameters:
node the xml node to get the named child node for
child_name name of the child element node to get
child_value parameter to store the value, if any, of the named child
child_props parameter to store any properties of the named child

Definition at line 214 of file BESXMLUtils.cc.

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

Here is the call graph for this function:

xmlNode * BESXMLUtils::GetFirstChild ( xmlNode *  node,
string &  child_name,
string &  child_value,
map< string, string > &  child_props 
) [static]

get the first element child node for the given node

Parameters:
node the xml node to get the first element child from
child_name parameter to store the name of the first child
child_value parameter to store the value, if any, of the first child
child_props parameter to store any properties of the first child

Definition at line 145 of file BESXMLUtils.cc.

References GetNodeInfo().

Referenced by SampleSayXMLCommand::parse_request(), and BESXMLDefineCommand::parse_request().

Here is the call graph for this function:

xmlNode * BESXMLUtils::GetNextChild ( xmlNode *  child_node,
string &  next_name,
string &  next_value,
map< string, string > &  next_props 
) [static]

get the next element child node after the given child node

Parameters:
child_node get the next child after this child
next_name parameter to store the name of the next child
next_value parameter to store the value, if any, of the next child
next_props parameter to store any properties of the next child

Definition at line 180 of file BESXMLUtils.cc.

References GetNodeInfo().

Referenced by BESXMLDefineCommand::parse_request().

Here is the call graph for this function:

void BESXMLUtils::GetNodeInfo ( xmlNode *  node,
string &  name,
string &  value,
map< string, string > &  props 
) [static]

get the name, value if any, and any properties for the specified node

Parameters:
node the xml node to get the information for
name parameter to store the name of the node
value parameter to store the value, if any, of the node
props parameter to store any properties of the node

Definition at line 105 of file BESXMLUtils.cc.

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

Referenced by BESXMLInterface::build_data_request_plan(), GetChild(), GetFirstChild(), GetNextChild(), SampleSayXMLCommand::parse_request(), BESXMLShowCommand::parse_request(), BESXMLSetContextCommand::parse_request(), BESXMLSetContainerCommand::parse_request(), BESXMLGetCommand::parse_request(), BESXMLDeleteDefinitionsCommand::parse_request(), BESXMLDeleteDefinitionCommand::parse_request(), BESXMLDeleteContainersCommand::parse_request(), BESXMLDeleteContainerCommand::parse_request(), BESXMLDefineCommand::parse_request(), and BESXMLCatalogCommand::parse_request().

Here is the call graph for this function:

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

given an xml node, build the map of properties for that node

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

Parameters:
node xml node to retrieve properties from
props map to store the property name and values in

Definition at line 66 of file BESXMLUtils.cc.

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

Referenced by GetNodeInfo().

Here is the call graph for this function:

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

error function used by libxml2 to report errors

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:
context vector<string> pointer to list of error strings
msg the error message format string
... the arguments to the error message format string

Definition at line 47 of file BESXMLUtils.cc.

Referenced by BESXMLInterface::build_data_request_plan().


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

Generated on 19 Feb 2010 for OPeNDAP Hyrax Back End Server (BES) by  doxygen 1.6.1