CppUnit project page FAQ CppUnit home page

XmlElement Class Reference

A XML Element. More...

#include <XmlElement.h>

List of all members.

Public Member Functions

 XmlElement (std::string elementName, std::string content="")
 Constructs an element with the specified name and string content.
 XmlElement (std::string elementName, int numericContent)
 Constructs an element with the specified name and numeric content.
virtual ~XmlElement ()
 Destructs the element and its child elements.
std::string name () const
 Returns the name of the element.
std::string content () const
 Returns the content of the element.
void setName (const std::string &name)
 Sets the name of the element.
void setContent (const std::string &content)
 Sets the content of the element.
void setContent (int numericContent)
void addAttribute (std::string attributeName, std::string value)
 Adds an attribute with the specified string value.
void addAttribute (std::string attributeName, int numericValue)
 Adds an attribute with the specified numeric value.
void addElement (XmlElement *element)
 Adds a child element to the element.
int elementCount () const
 Returns the number of child elements.
XmlElementelementAt (int index) const
 Returns the child element at the specified index.
XmlElementelementFor (const std::string &name) const
 Returns the first child element with the specified name.
std::string toString (const std::string &indent="") const
 Returns a XML string that represents the element.

Private Types

typedef std::pair< std::string,
std::string > 
Attribute
typedef CppUnitDeque< AttributeAttributes
typedef CppUnitDeque
< XmlElement * > 
Elements

Private Member Functions

std::string attributesAsString () const
std::string escape (std::string value) const

Private Attributes

std::string m_name
std::string m_content
Attributes m_attributes
Elements m_elements


Detailed Description

A XML Element.

A XML element has:


Member Typedef Documentation

typedef std::pair<std::string,std::string> XmlElement::Attribute [private]

typedef CppUnitDeque<Attribute> XmlElement::Attributes [private]

typedef CppUnitDeque<XmlElement *> XmlElement::Elements [private]


Constructor & Destructor Documentation

CPPUNIT_NS_BEGIN XmlElement::XmlElement ( std::string  elementName,
std::string  content = "" 
)

Constructs an element with the specified name and string content.

Parameters:
elementName Name of the element. Must not be empty.
content Content of the element.

XmlElement::XmlElement ( std::string  elementName,
int  numericContent 
)

Constructs an element with the specified name and numeric content.

Parameters:
elementName Name of the element. Must not be empty.
numericContent Content of the element.

XmlElement::~XmlElement (  )  [virtual]

Destructs the element and its child elements.


Member Function Documentation

void XmlElement::addAttribute ( std::string  attributeName,
int  numericValue 
)

Adds an attribute with the specified numeric value.

Parameters:
attributeName Name of the attribute. Must not be empty.
numericValue Numeric value of the attribute.

void XmlElement::addAttribute ( std::string  attributeName,
std::string  value 
)

Adds an attribute with the specified string value.

Parameters:
attributeName Name of the attribute. Must not be an empty.
value Value of the attribute.

void XmlElement::addElement ( XmlElement element  ) 

Adds a child element to the element.

Parameters:
element Child element to add. Must not be NULL.

std::string XmlElement::attributesAsString (  )  const [private]

std::string XmlElement::content (  )  const

Returns the content of the element.

Returns:
Content of the element.

XmlElement * XmlElement::elementAt ( int  index  )  const

Returns the child element at the specified index.

Parameters:
index Zero based index of the element to return.
Returns:
Element at the specified index. Never NULL.
Exceptions:
std::invalid_argument if index < 0 or index >= elementCount().

int XmlElement::elementCount (  )  const

Returns the number of child elements.

Returns:
Number of child elements (element added with addElement()).

XmlElement * XmlElement::elementFor ( const std::string &  name  )  const

Returns the first child element with the specified name.

Parameters:
name Name of the child element to return.
Returns:
First child element found which is named name.
Exceptions:
std::invalid_argument if there is no child element with the specified name.

std::string XmlElement::escape ( std::string  value  )  const [private]

std::string XmlElement::name (  )  const

Returns the name of the element.

Returns:
Name of the element.

void XmlElement::setContent ( int  numericContent  ) 

void XmlElement::setContent ( const std::string &  content  ) 

Sets the content of the element.

Parameters:
content New content for the element.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

void XmlElement::setName ( const std::string &  name  ) 

Sets the name of the element.

Parameters:
name New name for the element.

std::string XmlElement::toString ( const std::string &  indent = ""  )  const

Returns a XML string that represents the element.

Parameters:
indent String of spaces representing the amount of 'indent'.
Returns:
XML string that represents the element, its attributes and its child elements.


Member Data Documentation

std::string XmlElement::m_content [private]

std::string XmlElement::m_name [private]


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

SourceForge Logo hosts this site. Send comments to:
CppUnit Developers