libzypp 17.35.11
|
Subclass to retrieve rpm database content. More...
#include <zypp/target/rpm/librpmDb.h>
Classes | |
class | D |
Public Member Functions | |
db_const_iterator () ZYPP_DEPRECATED | |
Open the default rpmdb below the host system (at /). | |
db_const_iterator (const Pathname &root_r) | |
Open the default rpmdb below the system at root_r. | |
db_const_iterator (const Pathname &root_r, const Pathname &dbPath_r) | |
Open a specific rpmdb below the system at root_r. | |
db_const_iterator (std::nullptr_t) | |
A null iterator. | |
~db_const_iterator () | |
Destructor. | |
bool | hasDB () const |
Whether an underlying rpmdb exists. | |
void | operator++ () |
Advance to next RpmHeader::constPtr. | |
unsigned | dbHdrNum () const |
Returns the current headers index in database, 0 if no header. | |
const RpmHeader::constPtr & | operator* () const |
Returns the current RpmHeader::constPtr or NULL, if no more entries available. | |
const RpmHeader::constPtr & | operator-> () const |
Forwards to the current RpmHeader::constPtr. | |
bool | findAll () |
Reset to iterate all packages. | |
bool | findByFile (const std::string &file_r) |
Reset to iterate all packages that own a certain file. | |
bool | findByProvides (const std::string &tag_r) |
Reset to iterate all packages that provide a certain tag. | |
bool | findByRequiredBy (const std::string &tag_r) |
Reset to iterate all packages that require a certain tag. | |
bool | findByConflicts (const std::string &tag_r) |
Reset to iterate all packages that conflict with a certain tag. | |
bool | findByName (const std::string &name_r) |
Reset to iterate all packages with a certain name. | |
bool | findPackage (const std::string &name_r) |
Find package by name. | |
bool | findPackage (const std::string &name_r, const Edition &ed_r) |
Find package by name and edition. | |
bool | findPackage (const Package::constPtr &which_r) |
Abbr. | |
Private Member Functions | |
db_const_iterator & | operator= (const db_const_iterator &) |
db_const_iterator (const db_const_iterator &) | |
Private Attributes | |
D & | _d |
Friends | |
class | librpmDb |
std::ostream & | operator<< (std::ostream &str, const db_const_iterator &obj) |
Related Symbols | |
(Note that these are not member symbols.) | |
std::ostream & | operator<< (std::ostream &str, const librpmDb::db_const_iterator &obj) ZYPP_API |
stream output | |
Subclass to retrieve rpm database content.
If the specified rpm database was opened successfully, the iterator is initialized to findAll. Otherwise the iterator is an empty null iterator.
Definition at line 197 of file librpmDb.h.
|
private |
zypp::target::rpm::librpmDb::db_const_iterator::db_const_iterator | ( | ) |
Open the default rpmdb below the host system (at /).
Definition at line 380 of file librpmDb.cc.
|
explicit |
Open the default rpmdb below the system at root_r.
Definition at line 384 of file librpmDb.cc.
zypp::target::rpm::librpmDb::db_const_iterator::db_const_iterator | ( | const Pathname & | root_r, |
const Pathname & | dbPath_r ) |
Open a specific rpmdb below the system at root_r.
Definition at line 388 of file librpmDb.cc.
zypp::target::rpm::librpmDb::db_const_iterator::db_const_iterator | ( | std::nullptr_t | ) |
A null iterator.
What you get if the database does not exist.
Definition at line 392 of file librpmDb.cc.
zypp::target::rpm::librpmDb::db_const_iterator::~db_const_iterator | ( | ) |
Destructor.
Definition at line 396 of file librpmDb.cc.
|
private |
bool zypp::target::rpm::librpmDb::db_const_iterator::hasDB | ( | ) | const |
Whether an underlying rpmdb exists.
Definition at line 399 of file librpmDb.cc.
void zypp::target::rpm::librpmDb::db_const_iterator::operator++ | ( | ) |
Advance to next RpmHeader::constPtr.
Definition at line 402 of file librpmDb.cc.
unsigned zypp::target::rpm::librpmDb::db_const_iterator::dbHdrNum | ( | ) | const |
Returns the current headers index in database, 0 if no header.
Definition at line 405 of file librpmDb.cc.
const RpmHeader::constPtr & zypp::target::rpm::librpmDb::db_const_iterator::operator* | ( | ) | const |
Returns the current RpmHeader::constPtr or NULL, if no more entries available.
Definition at line 408 of file librpmDb.cc.
|
inline |
Forwards to the current RpmHeader::constPtr.
Definition at line 270 of file librpmDb.h.
bool zypp::target::rpm::librpmDb::db_const_iterator::findAll | ( | ) |
Reset to iterate all packages.
Returns true if iterator contains at least one entry.
Definition at line 414 of file librpmDb.cc.
bool zypp::target::rpm::librpmDb::db_const_iterator::findByFile | ( | const std::string & | file_r | ) |
Reset to iterate all packages that own a certain file.
Definition at line 417 of file librpmDb.cc.
bool zypp::target::rpm::librpmDb::db_const_iterator::findByProvides | ( | const std::string & | tag_r | ) |
Reset to iterate all packages that provide a certain tag.
Definition at line 420 of file librpmDb.cc.
bool zypp::target::rpm::librpmDb::db_const_iterator::findByRequiredBy | ( | const std::string & | tag_r | ) |
Reset to iterate all packages that require a certain tag.
Definition at line 423 of file librpmDb.cc.
bool zypp::target::rpm::librpmDb::db_const_iterator::findByConflicts | ( | const std::string & | tag_r | ) |
Reset to iterate all packages that conflict with a certain tag.
Definition at line 426 of file librpmDb.cc.
bool zypp::target::rpm::librpmDb::db_const_iterator::findByName | ( | const std::string & | name_r | ) |
Reset to iterate all packages with a certain name.
NOTE: Multiple entries for one package installed in different versions are possible but not desired. Usually you'll want to use findPackage instead.
findByName is needed to retrieve pseudo packages like 'gpg-pubkey', which in fact exist in multiple instances.
Definition at line 429 of file librpmDb.cc.
bool zypp::target::rpm::librpmDb::db_const_iterator::findPackage | ( | const std::string & | name_r | ) |
Find package by name.
Multiple entries for one package installed in different versions are possible but not desired. If so, the last package installed is returned.
Definition at line 432 of file librpmDb.cc.
bool zypp::target::rpm::librpmDb::db_const_iterator::findPackage | ( | const std::string & | name_r, |
const Edition & | ed_r ) |
Find package by name and edition.
Commonly used by PMRpmPackageDataProvider.
Definition at line 455 of file librpmDb.cc.
bool zypp::target::rpm::librpmDb::db_const_iterator::findPackage | ( | const Package::constPtr & | which_r | ) |
Abbr.
for findPackage( which_r->name(), which_r->edition() );
Definition at line 472 of file librpmDb.cc.
|
friend |
Definition at line 202 of file librpmDb.h.
|
friend |
Definition at line 411 of file librpmDb.cc.
|
related |
stream output
Definition at line 411 of file librpmDb.cc.
|
private |
Definition at line 210 of file librpmDb.h.