00001 00002 00003 #ifndef YUMGroupParser_h 00004 #define YUMGroupParser_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 00035 class YUMGroupParser : public XMLNodeIterator<YUMGroupDataPtr> 00036 { 00037 public: 00038 YUMGroupParser(std::istream &is, const std::string &baseUrl); 00039 YUMGroupParser(); 00040 YUMGroupParser(YUMGroupDataPtr& entry); 00041 virtual ~YUMGroupParser(); 00042 00043 private: 00044 virtual bool isInterested(const xmlNodePtr nodePtr); 00045 virtual YUMGroupDataPtr process(const xmlTextReaderPtr reader); 00046 void parseGrouplist(YUMGroupDataPtr dataPtr, 00047 xmlNodePtr node); 00048 void parsePackageList(YUMGroupDataPtr dataPtr, 00049 xmlNodePtr node); 00050 00051 LibXMLHelper _helper; 00052 }; 00053 } 00054 00055 #endif
1.4.4