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

YUMPrimaryParser.h

Go to the documentation of this file.
00001 
00002 
00003 #ifndef YUMPrimaryParser_h
00004 #define YUMPrimaryParser_h
00005 
00006 #include <y2pm/YUMParserData.h>
00007 #include <y2util/XMLNodeIterator.h>
00008 #include <y2util/LibXMLHelper.h>
00009 #include <list>
00010 
00011 namespace YUM {
00012 
00033   class YUMPrimaryParser : public XMLNodeIterator<YUMPrimaryDataPtr>
00034   {
00035   public:
00036     YUMPrimaryParser(std::istream &is, const std::string &baseUrl);
00037     YUMPrimaryParser();
00038     YUMPrimaryParser(YUMPrimaryDataPtr& entry);
00039     virtual ~YUMPrimaryParser();
00040 
00041   private:
00042     virtual bool isInterested(const xmlNodePtr nodePtr);
00043     virtual YUMPrimaryDataPtr process(const xmlTextReaderPtr reader);
00044     void parseFormatNode(YUMPrimaryDataPtr dataPtr,
00045                          xmlNodePtr formatNode);
00046     void parseDependencyEntries(std::list<YUMDependency> *depList, 
00047                                 xmlNodePtr depNode);
00048     void parseAuthorEntries(std::list<std::string> *authors,
00049                             xmlNodePtr node);
00050     void parseKeywordEntries(std::list<std::string> *keywords,
00051                              xmlNodePtr node);
00052     void parseDirsizeEntries(std::list<YUMDirSize> *sizes,
00053                              xmlNodePtr node);
00054 
00055     LibXMLHelper _helper;
00056   };
00057 }
00058 
00059 #endif

Generated on Mon Sep 12 21:52:13 2005 for yast2-packagemanager by  doxygen 1.4.4