libzypp  10.5.0
Downloader.h
Go to the documentation of this file.
00001 /*---------------------------------------------------------------------\
00002 |                          ____ _   __ __ ___                          |
00003 |                         |__  / \ / / . \ . \                         |
00004 |                           / / \ V /|  _/  _/                         |
00005 |                          / /__ | | | | | |                           |
00006 |                         /_____||_| |_| |_|                           |
00007 |                                                                      |
00008 \---------------------------------------------------------------------*/
00009 
00010 #ifndef ZYPP_SOURCE_SUSETAGS_DOWNLOADER
00011 #define ZYPP_SOURCE_SUSETAGS_DOWNLOADER
00012 
00013 #include "zypp/Url.h"
00014 #include "zypp/Pathname.h"
00015 #include "zypp/ProgressData.h"
00016 #include "zypp/RepoInfo.h"
00017 #include "zypp/RepoStatus.h"
00018 #include "zypp/MediaSetAccess.h"
00019 #include "zypp/repo/Downloader.h"
00020 #include "zypp/parser/susetags/ContentFileReader.h"
00021 
00022 namespace zypp
00023 {
00024   namespace repo
00025   {
00026     namespace susetags
00027     {
00028   
00034       class Downloader : public repo::Downloader
00035       {
00036       public:
00045         Downloader( const RepoInfo &info, const Pathname &delta_dir = Pathname() );
00046 
00054         void download( MediaSetAccess &media,
00055                        const Pathname &dest_dir,
00056                        const ProgressData::ReceiverFnc & progress = ProgressData::ReceiverFnc() );
00060         RepoStatus status( MediaSetAccess &media );
00061         
00065         void consumeIndex( const parser::susetags::RepoIndex_Ptr & data_r );
00066 
00067       private:
00068         parser::susetags::RepoIndex_Ptr _repoindex;
00069         Pathname _delta_dir;
00070       };
00071 
00072     } // ns susetags
00073   } // ns source
00074 } // ns zypp
00075 
00076 #endif