libzypp 8.13.6
|
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< Impl > | nullimpl () |
Offer default Impl. | |
Private Member Functions | |
void | downloadAndReadIndexList (MediaSetAccess &media, const Pathname &dest_dir) |
download the indexes and reads them | |
void | downloadIndex (MediaSetAccess &media, const OnMediaLocation &resource, const Pathname &dest_dir) |
download the indexes and reads them | |
void | readIndex (const Pathname &index, const Pathname &basedir) |
reads a downloaded index file and updates internal attributes table | |
void | readSha1sumsIndex (const Pathname &index, const Pathname &basedir) |
specific version of readIndex for SHA1SUMS file | |
void | readContentFileIndex (const Pathname &index, const Pathname &basedir) |
specific version of readIndex for SHA1SUMS file | |
void | getDirectoryContent (MediaSetAccess &media, const OnMediaLocation &resource, filesystem::DirContent &content) |
reads the content of a directory but keeps a cache | |
bool | provideFromCache (const OnMediaLocation &resource, const Pathname &dest_dir) |
tries to provide the file represented by job into dest_dir by looking at the cache. | |
void | validate (const OnMediaLocation &resource, const Pathname &dest_dir, const list< FileChecker > &checkers) |
Validates the job against is checkers, by using the file instance on dest_dir. | |
void | addDirJobs (MediaSetAccess &media, const OnMediaLocation &resource, const Pathname &dest_dir, FetcherJob::Flags flags) |
scan the directory and adds the individual jobs | |
void | autoaddIndexes (const filesystem::DirContent &content, MediaSetAccess &media, const OnMediaLocation &resource, const Pathname &dest_dir) |
auto discovery and reading of indexes | |
void | provideToDest (MediaSetAccess &media, const OnMediaLocation &resource, const Pathname &dest_dir, const Pathname &deltafile) |
Provide the resource to dest_dir. | |
Impl * | clone () const |
clone for RWCOW_pointer | |
Private Attributes | |
list< FetcherJob_Ptr > | _resources |
std::set< FetcherIndex_Ptr, SameFetcherIndex > | _indexes |
std::set< Pathname > | _caches |
map< string, CheckSum > | _checksums |
map< string, filesystem::DirContent > | _dircontent |
Fetcher::Options | _options |
Friends | |
std::ostream & | operator<< (std::ostream &str, const Fetcher::Impl &obj) |
Impl * | rwcowClone (const Impl *rhs) |
Fetcher implementation.
Definition at line 128 of file Fetcher.cc.
zypp::Fetcher::Impl::Impl | ( | ) |
Definition at line 245 of file Fetcher.cc.
zypp::Fetcher::Impl::~Impl | ( | ) | [inline] |
Definition at line 135 of file Fetcher.cc.
void zypp::Fetcher::Impl::setOptions | ( | Fetcher::Options | options | ) |
Definition at line 250 of file Fetcher.cc.
References zypp::Fetcher::options().
Fetcher::Options zypp::Fetcher::Impl::options | ( | ) | const |
Definition at line 253 of file Fetcher.cc.
void zypp::Fetcher::Impl::addIndex | ( | const OnMediaLocation & | resource | ) |
Definition at line 297 of file Fetcher.cc.
References MIL.
void zypp::Fetcher::Impl::enqueueDir | ( | const OnMediaLocation & | resource, |
bool | recursive, | ||
const FileChecker & | checker = FileChecker() |
||
) |
Definition at line 256 of file Fetcher.cc.
References zypp::FetcherJob::Directory, and zypp::FetcherJob::Recursive.
void zypp::Fetcher::Impl::enqueueDigestedDir | ( | const OnMediaLocation & | resource, |
bool | recursive, | ||
const FileChecker & | checker = FileChecker() |
||
) |
Definition at line 271 of file Fetcher.cc.
References zypp::FetcherJob::AlwaysVerifyChecksum, zypp::FetcherJob::Directory, and zypp::FetcherJob::Recursive.
void zypp::Fetcher::Impl::enqueue | ( | const OnMediaLocation & | resource, |
const FileChecker & | checker = FileChecker() |
||
) |
Definition at line 288 of file Fetcher.cc.
void zypp::Fetcher::Impl::enqueueDigested | ( | const OnMediaLocation & | resource, |
const FileChecker & | checker = FileChecker() , |
||
const Pathname & | deltafile = Pathname() |
||
) |
Definition at line 237 of file Fetcher.cc.
void zypp::Fetcher::Impl::addCachePath | ( | const Pathname & | cache_dir | ) |
Definition at line 312 of file Fetcher.cc.
void zypp::Fetcher::Impl::reset | ( | ) |
Definition at line 304 of file Fetcher.cc.
void zypp::Fetcher::Impl::start | ( | const Pathname & | dest_dir, |
MediaSetAccess & | media, | ||
const ProgressData::ReceiverFnc & | progress_receiver | ||
) |
Definition at line 742 of file Fetcher.cc.
References zypp::FetcherJob::AlwaysVerifyChecksum, zypp::Fetcher::AutoAddContentFileIndexes, zypp::Fetcher::AutoAddSha1sumsIndexes, zypp::FetcherJob::Directory, MIL, zypp::ProgressData::sendTo(), and ZYPP_THROW.
static shared_ptr<Impl> zypp::Fetcher::Impl::nullimpl | ( | ) | [inline, static] |
Offer default Impl.
Definition at line 154 of file Fetcher.cc.
void zypp::Fetcher::Impl::downloadAndReadIndexList | ( | MediaSetAccess & | media, |
const Pathname & | dest_dir | ||
) | [private] |
download the indexes and reads them
Definition at line 710 of file Fetcher.cc.
void zypp::Fetcher::Impl::downloadIndex | ( | MediaSetAccess & | media, |
const OnMediaLocation & | resource, | ||
const Pathname & | dest_dir | ||
) | [private] |
download the indexes and reads them
Definition at line 655 of file Fetcher.cc.
References zypp::OnMediaLocation::changeFilename(), zypp::Fetcher::enqueue(), zypp::OnMediaLocation::filename(), MIL, zypp::Fetcher::reset(), zypp::OnMediaLocation::setOptional(), zypp::Fetcher::start(), and WAR.
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 610 of file Fetcher.cc.
References WAR.
void zypp::Fetcher::Impl::readSha1sumsIndex | ( | const Pathname & | index, |
const Pathname & | basedir | ||
) | [private] |
specific version of readIndex for SHA1SUMS file
Definition at line 634 of file Fetcher.cc.
References zypp::iostr::getline(), zypp::CheckSum::sha1(), zypp::str::split(), and ZYPP_THROW.
void zypp::Fetcher::Impl::readContentFileIndex | ( | const Pathname & | index, |
const Pathname & | basedir | ||
) | [private] |
specific version of readIndex for SHA1SUMS file
Definition at line 621 of file Fetcher.cc.
References zypp::ContentReaderHelper::_repoindex, zypp::str::asString(), for_, MIL, and zypp::parser::susetags::ContentFileReader::parse().
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 460 of file Fetcher.cc.
References zypp::iostr::copy(), zypp::MediaSetAccess::dirInfo(), zypp::OnMediaLocation::filename(), and zypp::OnMediaLocation::medianr().
bool zypp::Fetcher::Impl::provideFromCache | ( | const OnMediaLocation & | resource, |
const Pathname & | dest_dir | ||
) | [private] |
tries to provide the file represented by job into dest_dir by looking at the cache.
If success, returns true, and the desired file should be available on dest_dir
Definition at line 338 of file Fetcher.cc.
References zypp::filesystem::assert_dir(), zypp::OnMediaLocation::checksum(), DBG, zypp::CheckSum::empty(), ERR, zypp::OnMediaLocation::filename(), for_, zypp::filesystem::hardlinkCopy(), zypp::filesystem::is_checksum(), MIL, and ZYPP_THROW.
void zypp::Fetcher::Impl::validate | ( | const OnMediaLocation & | resource, |
const Pathname & | dest_dir, | ||
const list< FileChecker > & | checkers | ||
) | [private] |
Validates the job against is checkers, by using the file instance on dest_dir.
Exception |
Definition at line 385 of file Fetcher.cc.
References ERR, zypp::OnMediaLocation::filename(), MIL, ZYPP_RETHROW, and ZYPP_THROW.
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 483 of file Fetcher.cc.
References zypp::FetcherJob::AlwaysVerifyChecksum, zypp::OnMediaLocation::checksum(), zypp::Fetcher::enqueue(), zypp::Fetcher::enqueueDigested(), zypp::OnMediaLocation::filename(), zypp::filesystem::FT_DIR, zypp::filesystem::FT_FILE, zypp::filesystem::FT_NOT_AVAIL, zypp::str::hasPrefix(), zypp::OnMediaLocation::medianr(), MIL, zypp::FetcherJob::Recursive, and WAR.
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 423 of file Fetcher.cc.
References zypp::Fetcher::addIndex(), zypp::Fetcher::AutoAddContentFileIndexes, zypp::Fetcher::AutoAddSha1sumsIndexes, zypp::OnMediaLocation::changeFilename(), zypp::OnMediaLocation::filename(), zypp::filesystem::FT_FILE, zypp::filesystem::DirEntry::name, and zypp::filesystem::DirEntry::type.
void zypp::Fetcher::Impl::provideToDest | ( | MediaSetAccess & | media, |
const OnMediaLocation & | resource, | ||
const Pathname & | dest_dir, | ||
const Pathname & | deltafile | ||
) | [private] |
Provide the resource to dest_dir.
Definition at line 539 of file Fetcher.cc.
References zypp::filesystem::assert_dir(), ERR, zypp::OnMediaLocation::filename(), zypp::filesystem::hardlinkCopy(), MIL, zypp::OnMediaLocation::optional(), zypp::MediaSetAccess::PROVIDE_DEFAULT, zypp::MediaSetAccess::PROVIDE_NON_INTERACTIVE, zypp::MediaSetAccess::provideFile(), zypp::MediaSetAccess::releaseFile(), zypp::Exception::remember(), WAR, ZYPP_CAUGHT, ZYPP_RETHROW, and ZYPP_THROW.
Impl* zypp::Fetcher::Impl::clone | ( | ) | const [inline, private] |
clone for RWCOW_pointer
Definition at line 222 of file Fetcher.cc.
std::ostream & operator<< | ( | std::ostream & | str, |
const Fetcher::Impl & | obj | ||
) | [friend] |
Stream output
Definition at line 838 of file Fetcher.cc.
list<FetcherJob_Ptr> zypp::Fetcher::Impl::_resources [private] |
Definition at line 225 of file Fetcher.cc.
std::set<FetcherIndex_Ptr,SameFetcherIndex> zypp::Fetcher::Impl::_indexes [private] |
Definition at line 226 of file Fetcher.cc.
std::set<Pathname> zypp::Fetcher::Impl::_caches [private] |
Definition at line 227 of file Fetcher.cc.
map<string, CheckSum> zypp::Fetcher::Impl::_checksums [private] |
Definition at line 229 of file Fetcher.cc.
map<string, filesystem::DirContent> zypp::Fetcher::Impl::_dircontent [private] |
Definition at line 231 of file Fetcher.cc.
Fetcher::Options zypp::Fetcher::Impl::_options [private] |
Definition at line 233 of file Fetcher.cc.