CLAM::LibXmlDomReadingContext Class Reference
[XML Backend for Gnome's libxml++]

Keeps the booking when loading one LibXml DOM single element into CLAM data. More...

#include <LibXmlDomReadingContext.hxx>

List of all members.

Public Member Functions

 LibXmlDomReadingContext (xmlpp::Element *element)
 LibXmlDomReadingContext (LibXmlDomDocumentHandler &docHandler)
 LibXmlDomReadingContext (LibXmlDomReadingContext *oldContext, const char *name)
void setAt (xmlpp::Element *element)
bool findElement (const char *name)
 Returns true when the next DOM element to be read is an element with the required name.
xmlpp::Element * fetchElement (const char *name)
 Preconditions are asured when findElement returns true.
LibXmlDomReadingContextrelease ()
void checkNoContentLeftOrError ()
void checkNoElementLeftOrError ()
bool extractAttribute (const char *attributeName, std::ostream &os)
std::istream & reachableContent ()
void fetchContent ()
 Dumps the reachable content of text nodes onto the content stream.
bool contentLeft ()
 Returns true if there is non-space content on the content stream.
std::list< std::string > errors ()
std::string getPath ()


Detailed Description

Keeps the booking when loading one LibXml DOM single element into CLAM data.

Definition at line 41 of file LibXmlDomReadingContext.hxx.


Constructor & Destructor Documentation

CLAM::LibXmlDomReadingContext::LibXmlDomReadingContext ( xmlpp::Element *  element  )  [inline]

Definition at line 52 of file LibXmlDomReadingContext.hxx.

References setAt().

CLAM::LibXmlDomReadingContext::LibXmlDomReadingContext ( LibXmlDomDocumentHandler docHandler  ) 

CLAM::LibXmlDomReadingContext::LibXmlDomReadingContext ( LibXmlDomReadingContext oldContext,
const char *  name 
) [inline]

Definition at line 61 of file LibXmlDomReadingContext.hxx.

References fetchElement(), and setAt().


Member Function Documentation

void CLAM::LibXmlDomReadingContext::checkNoContentLeftOrError (  )  [inline]

Definition at line 122 of file LibXmlDomReadingContext.hxx.

References contentLeft(), and getPath().

Referenced by release().

void CLAM::LibXmlDomReadingContext::checkNoElementLeftOrError (  )  [inline]

Definition at line 133 of file LibXmlDomReadingContext.hxx.

References getPath(), and L.

Referenced by release().

bool CLAM::LibXmlDomReadingContext::contentLeft (  )  [inline]

Returns true if there is non-space content on the content stream.

As side effect it skips any space (including
...) caracters.

Definition at line 188 of file LibXmlDomReadingContext.hxx.

Referenced by checkNoContentLeftOrError(), fetchContent(), fetchElement(), and findElement().

std::list<std::string> CLAM::LibXmlDomReadingContext::errors (  )  [inline]

Definition at line 200 of file LibXmlDomReadingContext.hxx.

bool CLAM::LibXmlDomReadingContext::extractAttribute ( const char *  attributeName,
std::ostream &  os 
) [inline]

Definition at line 151 of file LibXmlDomReadingContext.hxx.

References L, and U.

void CLAM::LibXmlDomReadingContext::fetchContent (  )  [inline]

Dumps the reachable content of text nodes onto the content stream.

Reachable means continuous Text which may have XML comments inside. As side effect trims initial spaces on content

Definition at line 169 of file LibXmlDomReadingContext.hxx.

References contentLeft(), and L.

Referenced by fetchElement(), and setAt().

xmlpp::Element* CLAM::LibXmlDomReadingContext::fetchElement ( const char *  name  )  [inline]

Preconditions are asured when findElement returns true.

Precondition:
There is no non-space content left

There is a current node left to explore

The current node is an element

The current node has name as xml name

Definition at line 99 of file LibXmlDomReadingContext.hxx.

References CLAM_ASSERT, contentLeft(), fetchContent(), and L.

Referenced by LibXmlDomReadingContext().

bool CLAM::LibXmlDomReadingContext::findElement ( const char *  name  )  [inline]

Returns true when the next DOM element to be read is an element with the required name.

Returns false when all the nodes have been read. Returns false when there is content left before the next element. Returns false when the next DOM element has a different name.

Precondition:
There is only DOMElements and already fetched DOMText

Definition at line 82 of file LibXmlDomReadingContext.hxx.

References CLAM_ASSERT, contentLeft(), and U.

std::string CLAM::LibXmlDomReadingContext::getPath (  )  [inline]

Definition at line 205 of file LibXmlDomReadingContext.hxx.

References getPath(), and L.

Referenced by checkNoContentLeftOrError(), checkNoElementLeftOrError(), and getPath().

std::istream& CLAM::LibXmlDomReadingContext::reachableContent (  )  [inline]

Definition at line 160 of file LibXmlDomReadingContext.hxx.

LibXmlDomReadingContext* CLAM::LibXmlDomReadingContext::release (  )  [inline]

void CLAM::LibXmlDomReadingContext::setAt ( xmlpp::Element *  element  )  [inline]

Definition at line 66 of file LibXmlDomReadingContext.hxx.

References fetchContent().

Referenced by LibXmlDomReadingContext().


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

Generated on Tue Feb 22 09:53:31 2011 for CLAM-Development by  doxygen 1.5.9