libzypp 17.37.17
PackageProvider.h
Go to the documentation of this file.
1/*---------------------------------------------------------------------\
2| ____ _ __ __ ___ |
3| |__ / \ / / . \ . \ |
4| / / \ V /| _/ _/ |
5| / /__ | | | | | | |
6| /_____||_| |_| |_| |
7| |
8\---------------------------------------------------------------------*/
12#ifndef ZYPP_REPO_PACKAGEPROVIDER_H
13#define ZYPP_REPO_PACKAGEPROVIDER_H
14
15#include <iosfwd>
16
17#include <zypp/ZYppCallbacks.h>
18#include <zypp/Package.h>
19#include <zypp/ManagedFile.h>
22
24namespace zypp
25{
27 namespace repo
28 {
29
35 {
36 public:
38 typedef function<bool ( const std::string &, const Edition &, const Arch & )> QueryInstalledCB;
39
42 { _queryInstalledCB = queryInstalledCB_r; return *this; }
43
45 bool queryInstalled( const std::string & name_r,
46 const Edition & ed_r,
47 const Arch & arch_r ) const;
48
49 private:
51 };
52
53
61 {
62 public:
66 PackageProvider( RepoMediaAccess & access, const PoolItem & pi_r,
68
72 PackageProvider( RepoMediaAccess & access, const PoolItem & pi_r,
73 DeltaCandidates deltas,
75
78 Package::constPtr package,
79 DeltaCandidates deltas,
81
83
84 public:
89
92
94 bool isCached() const;
95
96 public:
97 struct Impl;
98 private:
100 };
101
102
103 } // namespace repo
105} // namespace zypp
107#endif // ZYPP_SOURCE_PACKAGEPROVIDER_H
Architecture.
Definition Arch.h:37
Edition represents [epoch:]version[-release]
Definition Edition.h:61
TraitsType::constPtrType constPtr
Definition Package.h:39
Combining sat::Solvable and ResStatus.
Definition PoolItem.h:51
Candidate delta and patches for a package.
Policies and options for PackageProvider.
function< bool(const std::string &, const Edition &, const Arch &)> QueryInstalledCB
Get installed Editions callback signature.
PackageProviderPolicy & queryInstalledCB(QueryInstalledCB queryInstalledCB_r)
Set callback.
RW_pointer< Impl > _pimpl
Implementation class.
PackageProvider(RepoMediaAccess &access, const PoolItem &pi_r, PackageProviderPolicy policy_r=PackageProviderPolicy())
Ctor taking the package to provide.
ManagedFile providePackage() const
Provide the package.
bool isCached() const
Whether the package is cached.
ManagedFile providePackageFromCache() const
Provide the package if it is cached.
Provides files from different repos.
Easy-to use interface to the ZYPP dependency resolver.
AutoDispose< const Pathname > ManagedFile
A Pathname plus associated cleanup code to be executed when path is no longer needed.
Definition ManagedFile.h:27
const Arch Arch_armv7hnl Arch_armv7nhl ZYPP_API
Definition Arch.h:247
Wrapper for const correct access via Smart pointer types.
Definition PtrTypes.h:293
PackageProvider implementation interface.