libzypp  17.14.0
zypp::Fetcher::Impl Class Reference

Fetcher implementation. More...

Public Member Functions

 Impl ()
 
 ~Impl ()
 
void setOptions (Fetcher::Options options)
 
Fetcher::Options options () const
 
void addIndex (const OnMediaLocation &resource)
 
void enqueueDir (const OnMediaLocation &resource, bool recursive, const FileChecker &checker=FileChecker())
 
void enqueueDigestedDir (const OnMediaLocation &resource, bool recursive, const FileChecker &checker=FileChecker())
 
void enqueue (const OnMediaLocation &resource, const FileChecker &checker=FileChecker())
 
void enqueueDigested (const OnMediaLocation &resource, const FileChecker &checker=FileChecker(), const Pathname &deltafile=Pathname())
 
void addCachePath (const Pathname &cache_dir)
 
void reset ()
 
void start (const Pathname &dest_dir, MediaSetAccess &media, const ProgressData::ReceiverFnc &progress_receiver)
 

Static Public Member Functions

static shared_ptr< Implnullimpl ()
 Offer default Impl. More...
 

Private Member Functions

void downloadAndReadIndexList (MediaSetAccess &media, const Pathname &dest_dir)
 download the indexes and reads them More...
 
void downloadIndex (MediaSetAccess &media, const OnMediaLocation &resource, const Pathname &dest_dir)
 download the indexes and reads them More...
 
void readIndex (const Pathname &index, const Pathname &basedir)
 reads a downloaded index file and updates internal attributes table More...
 
void readChecksumsIndex (const Pathname &index, const Pathname &basedir)
 specific version of readIndex for CHECKSUMS file More...
 
void readContentFileIndex (const Pathname &index, const Pathname &basedir)
 specific version of readIndex for content file More...
 
void getDirectoryContent (MediaSetAccess &media, const OnMediaLocation &resource, filesystem::DirContent &content)
 reads the content of a directory but keeps a cache More...
 
Pathname locateInCache (const OnMediaLocation &resource_r, const Pathname &destDir_r)
 Tries to locate the file represented by job by looking at the cache (matching checksum is mandatory). More...
 
void validate (const Pathname &localfile_r, const std::list< FileChecker > &checkers_r)
 Validates the provided file against its checkers. More...
 
void addDirJobs (MediaSetAccess &media, const OnMediaLocation &resource, const Pathname &dest_dir, FetcherJob::Flags flags)
 scan the directory and adds the individual jobs More...
 
void autoaddIndexes (const filesystem::DirContent &content, MediaSetAccess &media, const OnMediaLocation &resource, const Pathname &dest_dir)
 auto discovery and reading of indexes More...
 
void provideToDest (MediaSetAccess &media_r, const Pathname &destDir_r, const FetcherJob_Ptr &jobp_r)
 Provide the resource to dest_dir. More...
 
Implclone () const
 clone for RWCOW_pointer More...
 

Private Attributes

std::list< FetcherJob_Ptr_resources
 
std::set< FetcherIndex_Ptr, SameFetcherIndex_indexes
 
std::set< Pathname_caches
 
std::map< std::string, CheckSum_checksums
 
std::map< std::string, filesystem::DirContent_dircontent
 
Fetcher::Options _options
 

Friends

std::ostream & operator<< (std::ostream &str, const Fetcher::Impl &obj)
 
ImplrwcowClone (const Impl *rhs)
 

Related Functions

(Note that these are not member functions.)

std::ostream & operator<< (std::ostream &str, const Fetcher::Impl &obj)
 

Detailed Description

Fetcher implementation.

Definition at line 126 of file Fetcher.cc.

Constructor & Destructor Documentation

◆ Impl()

zypp::Fetcher::Impl::Impl ( )

Definition at line 242 of file Fetcher.cc.

◆ ~Impl()

zypp::Fetcher::Impl::~Impl ( )
inline

Definition at line 133 of file Fetcher.cc.

Member Function Documentation

◆ setOptions()

void zypp::Fetcher::Impl::setOptions ( Fetcher::Options  options)

Definition at line 247 of file Fetcher.cc.

◆ options()

Fetcher::Options zypp::Fetcher::Impl::options ( ) const

Definition at line 250 of file Fetcher.cc.

◆ addIndex()

void zypp::Fetcher::Impl::addIndex ( const OnMediaLocation resource)

Definition at line 294 of file Fetcher.cc.

◆ enqueueDir()

void zypp::Fetcher::Impl::enqueueDir ( const OnMediaLocation resource,
bool  recursive,
const FileChecker checker = FileChecker() 
)

Definition at line 253 of file Fetcher.cc.

◆ enqueueDigestedDir()

void zypp::Fetcher::Impl::enqueueDigestedDir ( const OnMediaLocation resource,
bool  recursive,
const FileChecker checker = FileChecker() 
)

Definition at line 268 of file Fetcher.cc.

◆ enqueue()

void zypp::Fetcher::Impl::enqueue ( const OnMediaLocation resource,
const FileChecker checker = FileChecker() 
)

Definition at line 285 of file Fetcher.cc.

◆ enqueueDigested()

void zypp::Fetcher::Impl::enqueueDigested ( const OnMediaLocation resource,
const FileChecker checker = FileChecker(),
const Pathname deltafile = Pathname() 
)

Definition at line 234 of file Fetcher.cc.

◆ addCachePath()

void zypp::Fetcher::Impl::addCachePath ( const Pathname cache_dir)

Definition at line 309 of file Fetcher.cc.

◆ reset()

void zypp::Fetcher::Impl::reset ( )

Definition at line 301 of file Fetcher.cc.

◆ start()

void zypp::Fetcher::Impl::start ( const Pathname dest_dir,
MediaSetAccess media,
const ProgressData::ReceiverFnc progress_receiver 
)

Definition at line 716 of file Fetcher.cc.

◆ nullimpl()

static shared_ptr<Impl> zypp::Fetcher::Impl::nullimpl ( )
inlinestatic

Offer default Impl.

Definition at line 152 of file Fetcher.cc.

◆ downloadAndReadIndexList()

void zypp::Fetcher::Impl::downloadAndReadIndexList ( MediaSetAccess media,
const Pathname dest_dir 
)
private

download the indexes and reads them

Definition at line 684 of file Fetcher.cc.

◆ downloadIndex()

void zypp::Fetcher::Impl::downloadIndex ( MediaSetAccess media,
const OnMediaLocation resource,
const Pathname dest_dir 
)
private

download the indexes and reads them

Definition at line 629 of file Fetcher.cc.

◆ readIndex()

void zypp::Fetcher::Impl::readIndex ( const Pathname index,
const Pathname basedir 
)
private

reads a downloaded index file and updates internal attributes table

The index lists files relative to a directory, which is normally the same as the index file is located.

Definition at line 576 of file Fetcher.cc.

◆ readChecksumsIndex()

void zypp::Fetcher::Impl::readChecksumsIndex ( const Pathname index,
const Pathname basedir 
)
private

specific version of readIndex for CHECKSUMS file

Definition at line 600 of file Fetcher.cc.

◆ readContentFileIndex()

void zypp::Fetcher::Impl::readContentFileIndex ( const Pathname index,
const Pathname basedir 
)
private

specific version of readIndex for content file

Definition at line 587 of file Fetcher.cc.

◆ getDirectoryContent()

void zypp::Fetcher::Impl::getDirectoryContent ( MediaSetAccess media,
const OnMediaLocation resource,
filesystem::DirContent content 
)
private

reads the content of a directory but keeps a cache

Definition at line 419 of file Fetcher.cc.

◆ locateInCache()

Pathname zypp::Fetcher::Impl::locateInCache ( const OnMediaLocation resource_r,
const Pathname destDir_r 
)
private

Tries to locate the file represented by job by looking at the cache (matching checksum is mandatory).

Returns the location of the cached file or an empty Pathname.

Definition at line 332 of file Fetcher.cc.

◆ validate()

void zypp::Fetcher::Impl::validate ( const Pathname localfile_r,
const std::list< FileChecker > &  checkers_r 
)
private

Validates the provided file against its checkers.

Exceptions
Exception

Definition at line 362 of file Fetcher.cc.

◆ addDirJobs()

void zypp::Fetcher::Impl::addDirJobs ( MediaSetAccess media,
const OnMediaLocation resource,
const Pathname dest_dir,
FetcherJob::Flags  flags 
)
private

scan the directory and adds the individual jobs

Definition at line 442 of file Fetcher.cc.

◆ autoaddIndexes()

void zypp::Fetcher::Impl::autoaddIndexes ( const filesystem::DirContent content,
MediaSetAccess media,
const OnMediaLocation resource,
const Pathname dest_dir 
)
private

auto discovery and reading of indexes

Definition at line 391 of file Fetcher.cc.

◆ provideToDest()

void zypp::Fetcher::Impl::provideToDest ( MediaSetAccess media_r,
const Pathname destDir_r,
const FetcherJob_Ptr jobp_r 
)
private

Provide the resource to dest_dir.

Definition at line 506 of file Fetcher.cc.

◆ clone()

Impl* zypp::Fetcher::Impl::clone ( ) const
inlineprivate

clone for RWCOW_pointer

Definition at line 219 of file Fetcher.cc.

Friends And Related Function Documentation

◆ operator<< [1/2]

std::ostream& operator<< ( std::ostream &  str,
const Fetcher::Impl obj 
)
friend

◆ rwcowClone

Impl* rwcowClone ( const Impl rhs)
friend

◆ operator<<() [2/2]

std::ostream & operator<< ( std::ostream &  str,
const Fetcher::Impl obj 
)
related

Stream output

Definition at line 805 of file Fetcher.cc.

Member Data Documentation

◆ _resources

std::list<FetcherJob_Ptr> zypp::Fetcher::Impl::_resources
private

Definition at line 222 of file Fetcher.cc.

◆ _indexes

std::set<FetcherIndex_Ptr,SameFetcherIndex> zypp::Fetcher::Impl::_indexes
private

Definition at line 223 of file Fetcher.cc.

◆ _caches

std::set<Pathname> zypp::Fetcher::Impl::_caches
private

Definition at line 224 of file Fetcher.cc.

◆ _checksums

std::map<std::string, CheckSum> zypp::Fetcher::Impl::_checksums
private

Definition at line 226 of file Fetcher.cc.

◆ _dircontent

std::map<std::string, filesystem::DirContent> zypp::Fetcher::Impl::_dircontent
private

Definition at line 228 of file Fetcher.cc.

◆ _options

Fetcher::Options zypp::Fetcher::Impl::_options
private

Definition at line 230 of file Fetcher.cc.


The documentation for this class was generated from the following file: