Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

YUM::YUMFileListParser Class Reference

Parser for YUM filelists files Use this class as an iterator that produces, one after one, YUMFileListDataPtr(s) for the XML package elements. Here's an example:. More...

#include <YUMFileListParser.h>

Inheritance diagram for YUM::YUMFileListParser:

XMLNodeIterator< YUMFileListDataPtr > XMLNodeIteratorBase List of all members.

Public Member Functions

 YUMFileListParser (std::istream &is, const std::string &baseUrl)
 YUMFileListParser ()
 YUMFileListParser (YUMFileListDataPtr &entry)
virtual ~YUMFileListParser ()

Private Member Functions

virtual bool isInterested (const xmlNodePtr nodePtr)
virtual YUMFileListDataPtr process (const xmlTextReaderPtr reader)

Private Attributes

LibXMLHelper _helper

Detailed Description

Parser for YUM filelists files Use this class as an iterator that produces, one after one, YUMFileListDataPtr(s) for the XML package elements. Here's an example:.

for (YUMFileListParser iter(anIstream, baseUrl), iter != YUMFileListParser.end(), // or: iter() != 0, or ! iter.atEnd() ++iter) { doSomething(*iter) }

The iterator owns the pointer (i.e., caller must not delete it) until the next ++ operator is called. At this time, it will be destroyed (and a new ENTRYTYPE is created.)

If the input is fundamentally flawed so that it makes no sense to continue parsing, XMLNodeIterator will log it and consider the input as finished. You can query the exit status with errorStatus().


Constructor & Destructor Documentation

YUM::YUMFileListParser::YUMFileListParser std::istream &  is,
const std::string &  baseUrl
 

Constructor.

Parameters:
is the istream to read from
baseUrl the base URL of the XML document. Can be left empty.

YUMFileListParser::YUMFileListParser  ) 
 

YUMFileListParser::YUMFileListParser YUMFileListDataPtr &  entry  ) 
 

YUMFileListParser::~YUMFileListParser  )  [virtual]
 

Destructor.


Member Function Documentation

bool YUMFileListParser::isInterested const xmlNodePtr  nodePtr  )  [private, virtual]
 

decides if the parser is interested in the node (and subtree) of an element.

Parameters:
nodePtr the XML node
Returns:
true if the parser is interested.

Implements XMLNodeIterator< YUMFileListDataPtr >.

YUMFileListDataPtr YUMFileListParser::process const xmlTextReaderPtr  reader  )  [private, virtual]
 

creates a new object from the xml subtree

Parameters:
reader 
Returns:

Implements XMLNodeIterator< YUMFileListDataPtr >.


Member Data Documentation

LibXMLHelper YUM::YUMFileListParser::_helper [private]
 

converts the xml stuff to c++ stuff and filters the right namespaces


The documentation for this class was generated from the following files:
Generated on Mon Sep 12 21:52:15 2005 for yast2-packagemanager by  doxygen 1.4.4