4df459369422b3c5b3bb9b4cd7f242b64c24941d
[platform/upstream/libzypp.git] / zypp / repo / MediaInfoDownloader.cc
1 /*---------------------------------------------------------------------\
2 |                          ____ _   __ __ ___                          |
3 |                         |__  / \ / / . \ . \                         |
4 |                           / / \ V /|  _/  _/                         |
5 |                          / /__ | | | | | |                           |
6 |                         /_____||_| |_| |_|                           |
7 |                                                                      |
8 \---------------------------------------------------------------------*/
9
10 #include <fstream>
11 #include "zypp/base/String.h"
12 #include "zypp/base/Logger.h"
13 #include "zypp/base/Function.h"
14
15 #include "MediaInfoDownloader.h"
16 #include "zypp/base/UserRequestException.h"
17
18 using namespace std;
19
20 namespace zypp
21 {
22 namespace repo
23 {
24
25 void downloadMediaInfo( const Pathname &dest_dir,
26                         MediaSetAccess &media,
27                         const ProgressData::ReceiverFnc & progressrcv )
28 {
29   Fetcher fetcher;
30
31   //hardcode the max filesize to 20MB, to prevent unlimited data downloads but this limit will
32   //never be reached in a sane setup
33   fetcher.enqueue( OnMediaLocation("/media.1/media").setDownloadSize( ByteCount(20, ByteCount::MB ) ) );
34   fetcher.start( dest_dir, media, progressrcv );
35   // ready, go!
36   fetcher.reset();
37 }
38
39 }// ns repo 
40 } // ns zypp
41
42
43