#include <CommitPackageCacheReadAhead.h>
Public Member Functions | |
CommitPackageCacheReadAhead (const Pathname &rootDir_r, const PackageProvider &packageProvider_r) | |
virtual ManagedFile | get (const PoolItem &citem_r) |
Provide the package. | |
Private Types | |
typedef std::map< PoolItem, ManagedFile > | CacheMap |
Private Member Functions | |
bool | onInteractiveMedia (const PoolItem &pi) const |
Return whether pi is located on a CD/DVD. | |
void | cacheLastInteractive (const PoolItem &citem_r) |
Fill the cache. | |
void | doCacheLastInteractive (const PoolItem &citem_r) |
cacheLastInteractive helper . | |
Private Attributes | |
DefaultIntegral< unsigned, 0 > | _dbgChanges |
IMediaKey | _lastInteractive |
Pathname | _rootDir |
shared_ptr< filesystem::TmpDir > | _cacheDir |
CacheMap | _cacheMap |
Definition at line 83 of file CommitPackageCacheReadAhead.h.
typedef std::map<PoolItem,ManagedFile> zypp::target::CommitPackageCacheReadAhead::CacheMap [private] |
Definition at line 85 of file CommitPackageCacheReadAhead.h.
zypp::target::CommitPackageCacheReadAhead::CommitPackageCacheReadAhead | ( | const Pathname & | rootDir_r, | |
const PackageProvider & | packageProvider_r | |||
) |
Definition at line 52 of file CommitPackageCacheReadAhead.cc.
ManagedFile zypp::target::CommitPackageCacheReadAhead::get | ( | const PoolItem & | citem_r | ) | [virtual] |
Provide the package.
Either from Source or from cache.
Reimplemented from zypp::target::CommitPackageCache::Impl.
Definition at line 191 of file CommitPackageCacheReadAhead.cc.
References _cacheMap, _dbgChanges, _lastInteractive, cacheLastInteractive(), DBG, MIL, onInteractiveMedia(), zypp::target::CommitPackageCache::Impl::sourceProvidePackage(), zypp::AutoDispose< _Tp >::value(), and WAR.
bool zypp::target::CommitPackageCacheReadAhead::onInteractiveMedia | ( | const PoolItem & | pi | ) | const [private] |
Return whether pi is located on a CD/DVD.
Definition at line 63 of file CommitPackageCacheReadAhead.cc.
Referenced by get().
void zypp::target::CommitPackageCacheReadAhead::cacheLastInteractive | ( | const PoolItem & | citem_r | ) | [private] |
Fill the cache.
Called before changing from one interactive media to another. Performs the read ahead of packages trying to avoid the necessity of switching back to the current media later.
Definition at line 78 of file CommitPackageCacheReadAhead.cc.
References _lastInteractive, doCacheLastInteractive(), WAR, and ZYPP_CAUGHT.
Referenced by get().
void zypp::target::CommitPackageCacheReadAhead::doCacheLastInteractive | ( | const PoolItem & | citem_r | ) | [private] |
cacheLastInteractive helper .
Definition at line 97 of file CommitPackageCacheReadAhead.cc.
References _cacheDir, _cacheMap, zypp::target::CommitPackageCache::Impl::_commitList, _lastInteractive, _rootDir, zypp::filesystem::copy(), zypp::filesystem::df(), ERR, for_, zypp::str::form(), zypp::ResStatus::isToBeInstalled(), MIL, zypp::PoolItem::resolvable(), zypp::target::CommitPackageCache::Impl::sourceProvidePackage(), zypp::PoolItem::status(), zypp::filesystem::unlink(), zypp::AutoDispose< _Tp >::value(), WAR, and ZYPP_THROW.
Referenced by cacheLastInteractive().
DefaultIntegral<unsigned,0> zypp::target::CommitPackageCacheReadAhead::_dbgChanges [private] |
Definition at line 113 of file CommitPackageCacheReadAhead.h.
Referenced by cacheLastInteractive(), doCacheLastInteractive(), and get().
Pathname zypp::target::CommitPackageCacheReadAhead::_rootDir [private] |
Definition at line 115 of file CommitPackageCacheReadAhead.h.
Referenced by doCacheLastInteractive().
shared_ptr<filesystem::TmpDir> zypp::target::CommitPackageCacheReadAhead::_cacheDir [private] |
Definition at line 116 of file CommitPackageCacheReadAhead.h.
Referenced by doCacheLastInteractive().
Definition at line 117 of file CommitPackageCacheReadAhead.h.
Referenced by doCacheLastInteractive(), and get().