zypp::target::rpm::RpmHeader Class Reference

#include <RpmHeader.h>

Inheritance diagram for zypp::target::rpm::RpmHeader:
[legend]

List of all members.

Public Types

enum  VERIFICATION { VERIFY = 0x0000, NODIGEST = (1<<0), NOSIGNATURE = (1<<1), NOVERIFY = 0xffff }
 Digest and signature verification flags. More...
typedef
intrusive_ptr
< RpmHeader
Ptr
typedef
intrusive_ptr< const
RpmHeader
constPtr

Public Member Functions

 RpmHeader (Header h_r=0)
 RpmHeader (BinHeader::Ptr &rhs)
 Dangerous!<> This one takes the header out of rhs and leaves rhs empty.
virtual ~RpmHeader ()
bool isSrc () const
std::string tag_name () const
std::string tag_epoch () const
std::string tag_version () const
std::string tag_release () const
std::string tag_arch () const
Edition tag_edition () const
 return complete edition (from tag_epoch, tag_version, tag_release) returns Edition::noedition if an error occurs
Date tag_installtime () const
Date tag_buildtime () const
capability::CapabilityImplPtrSet tag_provides (std::set< std::string > *freq_r=0) const
 If freq_r is not NULL, file dependencies found are inserted.
capability::CapabilityImplPtrSet tag_requires (std::set< std::string > *freq_r=0) const
 
See also:
tag_provides

capability::CapabilityImplPtrSet tag_prerequires (std::set< std::string > *freq_r=0) const
 
See also:
tag_provides

capability::CapabilityImplPtrSet tag_conflicts (std::set< std::string > *freq_r=0) const
 
See also:
tag_provides

capability::CapabilityImplPtrSet tag_obsoletes (std::set< std::string > *freq_r=0) const
 
See also:
tag_provides

capability::CapabilityImplPtrSet tag_enhances (std::set< std::string > *freq_r=0) const
 
See also:
tag_provides

capability::CapabilityImplPtrSet tag_supplements (std::set< std::string > *freq_r=0) const
 
See also:
tag_provides

ByteCount tag_size () const
ByteCount tag_archivesize () const
std::string tag_summary () const
std::string tag_description () const
std::string tag_group () const
std::string tag_vendor () const
std::string tag_distribution () const
std::string tag_license () const
std::string tag_buildhost () const
std::string tag_packager () const
std::string tag_url () const
std::string tag_os () const
std::string tag_prein () const
std::string tag_postin () const
std::string tag_preun () const
std::string tag_postun () const
std::string tag_sourcerpm () const
std::list< std::string > tag_filenames () const
 just the list of names
std::list< FileInfotag_fileinfos () const
 complete information about the files (extended version of tag_filenames())
Changelog tag_changelog () const
DiskUsagetag_du (DiskUsage &dudata_r) const
 Returns reference to arg dudata_r.
virtual std::ostream & dumpOn (std::ostream &str) const
 Overload to realize std::ostream & operator<<.

Static Public Member Functions

static
RpmHeader::constPtr 
readPackage (const Pathname &path, VERIFICATION verification=VERIFY)
 Get an accessible packages data from disk.

Private Member Functions

capability::CapabilityImplPtrSet PkgRelList_val (tag tag_r, bool pre, std::set< std::string > *freq_r=0) const


Detailed Description

Wrapper class for rpm header struct.

RpmHeader provides methods to query the content of a rpm header struct retrieved from the RPM database or by reading the rpm header of a package on disk.

The rpm header contains all data associated with a package. So you probabely do not want to permanently store too many of them.

NEVER create RpmHeader from a NULL Header!

Definition at line 65 of file RpmHeader.h.


Member Typedef Documentation

typedef intrusive_ptr<RpmHeader> zypp::target::rpm::RpmHeader::Ptr

Reimplemented from zypp::target::rpm::BinHeader.

Definition at line 68 of file RpmHeader.h.

typedef intrusive_ptr<const RpmHeader> zypp::target::rpm::RpmHeader::constPtr

Reimplemented from zypp::target::rpm::BinHeader.

Definition at line 69 of file RpmHeader.h.


Member Enumeration Documentation

enum zypp::target::rpm::RpmHeader::VERIFICATION

Digest and signature verification flags.

Enumerator:
VERIFY 
NODIGEST 
NOSIGNATURE 
NOVERIFY 

Definition at line 182 of file RpmHeader.h.


Constructor & Destructor Documentation

zypp::target::rpm::RpmHeader::RpmHeader ( Header  h_r = 0  ) 

Definition at line 49 of file RpmHeader.cc.

Referenced by readPackage().

zypp::target::rpm::RpmHeader::RpmHeader ( BinHeader::Ptr rhs  ) 

Dangerous!<> This one takes the header out of rhs and leaves rhs empty.

Definition at line 59 of file RpmHeader.cc.

zypp::target::rpm::RpmHeader::~RpmHeader (  )  [virtual]

Definition at line 71 of file RpmHeader.cc.


Member Function Documentation

capability::CapabilityImplPtrSet zypp::target::rpm::RpmHeader::PkgRelList_val ( tag  tag_r,
bool  pre,
std::set< std::string > *  freq_r = 0 
) const [private]

bool zypp::target::rpm::RpmHeader::isSrc (  )  const

Definition at line 151 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::has_tag().

string zypp::target::rpm::RpmHeader::tag_name (  )  const

Definition at line 164 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

Referenced by tag_edition().

string zypp::target::rpm::RpmHeader::tag_epoch (  )  const

Definition at line 177 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

Referenced by tag_edition().

string zypp::target::rpm::RpmHeader::tag_version (  )  const

Definition at line 190 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

Referenced by tag_edition().

string zypp::target::rpm::RpmHeader::tag_release (  )  const

Definition at line 203 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

Referenced by tag_edition().

string zypp::target::rpm::RpmHeader::tag_arch (  )  const

Definition at line 238 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

Edition zypp::target::rpm::RpmHeader::tag_edition (  )  const

return complete edition (from tag_epoch, tag_version, tag_release) returns Edition::noedition if an error occurs

Definition at line 216 of file RpmHeader.cc.

References tag_epoch(), tag_name(), tag_release(), tag_version(), WAR, and ZYPP_CAUGHT.

Date zypp::target::rpm::RpmHeader::tag_installtime (  )  const

Definition at line 251 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::int_val().

Date zypp::target::rpm::RpmHeader::tag_buildtime (  )  const

Definition at line 264 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::int_val().

capability::CapabilityImplPtrSet zypp::target::rpm::RpmHeader::tag_provides ( std::set< std::string > *  freq_r = 0  )  const

If freq_r is not NULL, file dependencies found are inserted.

capability::CapabilityImplPtrSet zypp::target::rpm::RpmHeader::tag_requires ( std::set< std::string > *  freq_r = 0  )  const

See also:
tag_provides

capability::CapabilityImplPtrSet zypp::target::rpm::RpmHeader::tag_prerequires ( std::set< std::string > *  freq_r = 0  )  const

See also:
tag_provides

capability::CapabilityImplPtrSet zypp::target::rpm::RpmHeader::tag_conflicts ( std::set< std::string > *  freq_r = 0  )  const

See also:
tag_provides

capability::CapabilityImplPtrSet zypp::target::rpm::RpmHeader::tag_obsoletes ( std::set< std::string > *  freq_r = 0  )  const

See also:
tag_provides

capability::CapabilityImplPtrSet zypp::target::rpm::RpmHeader::tag_enhances ( std::set< std::string > *  freq_r = 0  )  const

See also:
tag_provides

capability::CapabilityImplPtrSet zypp::target::rpm::RpmHeader::tag_supplements ( std::set< std::string > *  freq_r = 0  )  const

See also:
tag_provides

ByteCount zypp::target::rpm::RpmHeader::tag_size (  )  const

Definition at line 504 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::int_val().

ByteCount zypp::target::rpm::RpmHeader::tag_archivesize (  )  const

Definition at line 517 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::int_val().

std::string zypp::target::rpm::RpmHeader::tag_summary (  )  const

Definition at line 530 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

std::string zypp::target::rpm::RpmHeader::tag_description (  )  const

Definition at line 543 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

std::string zypp::target::rpm::RpmHeader::tag_group (  )  const

Definition at line 556 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

std::string zypp::target::rpm::RpmHeader::tag_vendor (  )  const

Definition at line 569 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

std::string zypp::target::rpm::RpmHeader::tag_distribution (  )  const

Definition at line 582 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

std::string zypp::target::rpm::RpmHeader::tag_license (  )  const

Definition at line 595 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

std::string zypp::target::rpm::RpmHeader::tag_buildhost (  )  const

Definition at line 608 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

std::string zypp::target::rpm::RpmHeader::tag_packager (  )  const

Definition at line 621 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

std::string zypp::target::rpm::RpmHeader::tag_url (  )  const

Definition at line 634 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

std::string zypp::target::rpm::RpmHeader::tag_os (  )  const

Definition at line 647 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

std::string zypp::target::rpm::RpmHeader::tag_prein (  )  const

Definition at line 660 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

std::string zypp::target::rpm::RpmHeader::tag_postin (  )  const

Definition at line 673 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

std::string zypp::target::rpm::RpmHeader::tag_preun (  )  const

Definition at line 686 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

std::string zypp::target::rpm::RpmHeader::tag_postun (  )  const

Definition at line 699 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

std::string zypp::target::rpm::RpmHeader::tag_sourcerpm (  )  const

Definition at line 712 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::string_val().

std::list< std::string > zypp::target::rpm::RpmHeader::tag_filenames (  )  const

just the list of names

Definition at line 725 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::int_list(), and zypp::target::rpm::BinHeader::string_list().

std::list< FileInfo > zypp::target::rpm::RpmHeader::tag_fileinfos (  )  const

complete information about the files (extended version of tag_filenames())

Definition at line 753 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::int_list(), and zypp::target::rpm::BinHeader::string_list().

Changelog zypp::target::rpm::RpmHeader::tag_changelog (  )  const

Definition at line 834 of file RpmHeader.cc.

References zypp::target::rpm::BinHeader::int_list(), and zypp::target::rpm::BinHeader::string_list().

DiskUsage & zypp::target::rpm::RpmHeader::tag_du ( DiskUsage dudata_r  )  const

Returns reference to arg dudata_r.

Definition at line 862 of file RpmHeader.cc.

References zypp::DiskUsage::add(), zypp::DiskUsage::begin(), zypp::DiskUsage::clear(), zypp::DiskUsage::end(), for_, zypp::filesystem::DevInoCache::insert(), zypp::target::rpm::BinHeader::int_list(), zypp::filesystem::StatMode::isFile(), zypp::ByteCount::K, zypp::DiskUsage::Entry::path, and zypp::target::rpm::BinHeader::string_list().

virtual std::ostream& zypp::target::rpm::RpmHeader::dumpOn ( std::ostream &  str  )  const [virtual]

Overload to realize std::ostream & operator<<.

Reimplemented from zypp::target::rpm::BinHeader.

RpmHeader::constPtr zypp::target::rpm::RpmHeader::readPackage ( const Pathname &  path,
VERIFICATION  verification = VERIFY 
) [static]

Get an accessible packages data from disk.

Returns NULL on any error.

Definition at line 80 of file RpmHeader.cc.

References ERR, MIL, NODIGEST, NOSIGNATURE, RpmHeader(), and WAR.

Referenced by zypp::target::rpm::RpmDb::backupPackage().


The documentation for this class was generated from the following files:
Generated on Tue Sep 25 19:23:29 2007 for libzypp by  doxygen 1.5.3