00001 /*---------------------------------------------------------------------\ 00002 | ____ _ __ __ ___ | 00003 | |__ / \ / / . \ . \ | 00004 | / / \ V /| _/ _/ | 00005 | / /__ | | | | | | | 00006 | /_____||_| |_| |_| | 00007 | | 00008 \---------------------------------------------------------------------*/ 00012 #ifndef ZYPP_PARSER_YUM_REPOPARSER_H_ 00013 #define ZYPP_PARSER_YUM_REPOPARSER_H_ 00014 00015 #include "zypp/base/PtrTypes.h" 00016 #include "zypp/base/NonCopyable.h" 00017 00018 #include "zypp/data/RecordId.h" 00019 #include "zypp/data/ResolvableDataConsumer.h" 00020 00021 #include "zypp/ProgressData.h" 00022 #include "zypp/parser/yum/RepoParserOpts.h" 00023 00024 00025 namespace zypp 00026 { 00027 namespace parser 00028 { 00029 namespace yum 00030 { 00031 00032 00060 class RepoParser : private base::NonCopyable 00061 { 00062 public: 00063 00071 RepoParser( 00072 const data::RecordId & repository_id, 00073 data::ResolvableDataConsumer & consumer, 00074 const RepoParserOpts & options = RepoParserOpts(), 00075 const ProgressData::ReceiverFnc & progress = ProgressData::ReceiverFnc() 00076 ); 00077 00081 ~RepoParser(); 00082 00091 void parse(const Pathname & path); 00092 00093 private: 00094 class Impl; 00095 RW_pointer<Impl,rw_pointer::Scoped<Impl> > _pimpl; 00096 }; 00097 00098 00099 } // ns yum 00100 } // ns parser 00101 } // ns zypp 00102 00103 #endif /*ZYPP_PARSER_YUM_REPOPARSER_H_*/ 00104 00105 // vim: set ts=2 sts=2 sw=2 et ai:
1.5.3