|
libzypp
14.29.1
|
PackageProvider implementation. More...

Public Member Functions | |
| Impl (RepoMediaAccess &access_r, const Package::constPtr &package_r, const DeltaCandidates &deltas_r, const PackageProviderPolicy &policy_r) | |
| Ctor taking the Package to provide. More... | |
| virtual | ~Impl () |
| ManagedFile | providePackage () const |
| Provide the package. More... | |
| ManagedFile | providePackageFromCache () const |
| Provide the package if it is cached. More... | |
| bool | isCached () const |
| Whether the package is cached. More... | |
Static Public Member Functions | |
| static Impl * | factoryMake (RepoMediaAccess &access_r, const Package::constPtr &package_r, const DeltaCandidates &deltas_r, const PackageProviderPolicy &policy_r) |
| Factory method providing the appropriate implementation. More... | |
Protected Types | |
| typedef PackageProvider::Impl | Base |
| typedef callback::SendReport < repo::DownloadResolvableReport > | Report |
Protected Member Functions | |
| virtual ManagedFile | doProvidePackageFromCache () const =0 |
| Lookup the final rpm in cache. More... | |
| virtual ManagedFile | doProvidePackage () const =0 |
| Actually provide the final rpm. More... | |
| Report & | report () const |
| Access to the DownloadResolvableReport. More... | |
| bool | progressPackageDownload (int value) const |
| Redirect ProvideFilePolicy package download progress to this. More... | |
| bool | failOnChecksumError () const |
| Redirect ProvideFilePolicy failOnChecksumError to this if needed. More... | |
Protected Attributes | |
| PackageProviderPolicy | _policy |
| Package::constPtr | _package |
| DeltaCandidates | _deltas |
| RepoMediaAccess & | _access |
Private Types | |
| typedef shared_ptr< void > | ScopedGuard |
Private Member Functions | |
| ScopedGuard | newReport () const |
Private Attributes | |
| bool | _retry |
| shared_ptr< Report > | _report |
PackageProvider implementation.
Definition at line 55 of file PackageProvider.cc.
|
protected |
Definition at line 102 of file PackageProvider.cc.
|
protected |
Definition at line 103 of file PackageProvider.cc.
|
private |
Definition at line 175 of file PackageProvider.cc.
|
inline |
Ctor taking the Package to provide.
Definition at line 59 of file PackageProvider.cc.
|
inlinevirtual |
Definition at line 70 of file PackageProvider.cc.
|
static |
Factory method providing the appropriate implementation.
Called by PackageProvider ctor. Returned pointer should be immediately wrapped into a smartpointer.
Definition at line 470 of file PackageProvider.cc.
| ManagedFile zypp::repo::PackageProvider::Impl::providePackage | ( | ) | const |
Provide the package.
The basic workflow.
| Exception. |
Definition at line 211 of file PackageProvider.cc.
|
inline |
Provide the package if it is cached.
Definition at line 89 of file PackageProvider.cc.
|
inline |
Whether the package is cached.
Definition at line 98 of file PackageProvider.cc.
|
protectedpure virtual |
Lookup the final rpm in cache.
Default implementation (cache miss).
A non empty ManagedFile will be returned to the caller.
Implemented in zypp::repo::RpmPackageProvider.
Definition at line 194 of file PackageProvider.cc.
|
protectedpure virtual |
Actually provide the final rpm.
Default implementation (provide full package)
Report start/problem/finish and retry loop are hadled by providePackage. Here you trigger just progress and delta/plugin callbacks as needed.
Proxy methods for progressPackageDownload and failOnChecksum are provided here. Create similar proxies for other progress callbacks in derived classes and link it to ProvideFilePolicy for download:
Implemented in zypp::repo::RpmPackageProvider.
Definition at line 198 of file PackageProvider.cc.
|
inlineprotected |
Access to the DownloadResolvableReport.
Definition at line 138 of file PackageProvider.cc.
|
inlineprotected |
Redirect ProvideFilePolicy package download progress to this.
Definition at line 142 of file PackageProvider.cc.
|
inlineprotected |
Redirect ProvideFilePolicy failOnChecksumError to this if needed.
Definition at line 146 of file PackageProvider.cc.
|
inlineprivate |
Definition at line 177 of file PackageProvider.cc.
|
protected |
Definition at line 169 of file PackageProvider.cc.
|
protected |
Definition at line 170 of file PackageProvider.cc.
|
protected |
Definition at line 171 of file PackageProvider.cc.
|
protected |
Definition at line 172 of file PackageProvider.cc.
|
mutableprivate |
Definition at line 188 of file PackageProvider.cc.
|
mutableprivate |
Definition at line 189 of file PackageProvider.cc.