libzypp 17.37.17
zypp::Package Class Reference

Package interface. More...

#include <zypp/Package.h>

Inheritance diagram for zypp::Package:

Public Types

using Self = Package
using TraitsType = ResTraits<Self>
using Ptr = TraitsType::PtrType
using constPtr = TraitsType::constPtrType
using Keywords = sat::ArrayAttr<PackageKeyword, IdString>
using FileList = sat::ArrayAttr<std::string, std::string>
Public Types inherited from zypp::ResObject
using Self = ResObject
using TraitsType = ResTraits<Self>
using Ptr = TraitsType::PtrType
using constPtr = TraitsType::constPtrType
Public Types inherited from zypp::Resolvable
using Self = Resolvable
using TraitsType = ResTraits<Self>
using Kind = TraitsType::KindType
using Ptr = TraitsType::PtrType
using constPtr = TraitsType::constPtrType

Public Member Functions

VendorSupportOption vendorSupport () const
 Returns the level of supportability the vendor gives to this package.
bool maybeUnsupported () const
 True if the vendor support for this package is unknown or explicitly unsupported.
std::vector< std::string > supersededBy () const
 The name(s) of the successor package if vendorSupport is VendorSupportSuperseded.
std::pair< std::vector< IdString >, std::vector< std::string > > supersededByItems () const
 The successor package(s) if vendorSupport is VendorSupportSuperseded.
Changelog changelog () const
 Get the package change log.
std::string buildhost () const
std::string distribution () const
std::string license () const
std::string packager () const
std::string group () const
Keywords keywords () const
std::string url () const
 Don't ship it as class Url, because it might be in fact anything but a legal Url.
ByteCount sourcesize () const
 Size of corresponding the source package.
std::list< std::string > authors () const
FileList filelist () const
 Return the packages filelist (if available).
Public Member Functions inherited from zypp::ResObject
template<class TRes>
ResTraits< TRes >::constPtrType asKind () const
 Convert this into a Ptr of a certain Kind.
template<class TRes>
ResTraits< TRes >::PtrType asKind ()
Vendor vendor () const
 Vendor.
Public Member Functions inherited from zypp::Resolvable
 operator sat::Solvable () const
 This is a sat::SolvableType.
PoolItem poolItem () const
 Access the corresponding PoolItem.
Public Member Functions inherited from zypp::sat::SolvableType< Resolvable >
Solvable satSolvable () const
 Return the corresponding sat::Solvable.
 operator bool () const
IdString ident () const
ResKind kind () const
std::string name () const
Edition edition () const
Arch arch () const
IdString vendor () const
Repository repository () const
RepoInfo repoInfo () const
bool isSystem () const
bool onSystemByUser () const
bool onSystemByAuto () const
bool identIsAutoInstalled () const
bool multiversionInstall () const
bool isNeedreboot () const
bool isBlacklisted () const
bool isRetracted () const
bool isPtf () const
bool isPtfMaster () const
bool isPtfPackage () const
Date buildtime () const
Date installtime () const
std::string asString () const
std::string asUserString () const
Capabilities dep_provides () const
Capabilities dep_requires () const
Capabilities dep_conflicts () const
Capabilities dep_obsoletes () const
Capabilities dep_recommends () const
Capabilities dep_suggests () const
Capabilities dep_enhances () const
Capabilities dep_supplements () const
Capabilities dep_prerequires () const
Capabilities dep (Dep which_r) const
Capabilities operator[] (Dep which_r) const
Capabilities provides () const
Capabilities conflicts () const
Capabilities obsoletes () const
Capabilities recommends () const
Capabilities suggests () const
Capabilities enhances () const
Capabilities supplements () const
Capabilities prerequires () const
CapabilitySet providesNamespace (const std::string &namespace_r) const
CapabilitySet valuesOfNamespace (const std::string &namespace_r) const
bool supportsLocales () const
bool supportsLocale (const Locale &locale_r) const
bool supportsRequestedLocales () const
LocaleSet getSupportedLocales () const
CpeId cpeId () const
unsigned mediaNr () const
ByteCount installSize () const
ByteCount downloadSize () const
std::string distribution () const
std::string summary (const Locale &lang_r=Locale()) const
std::string description (const Locale &lang_r=Locale()) const
std::string insnotify (const Locale &lang_r=Locale()) const
std::string delnotify (const Locale &lang_r=Locale()) const
std::string licenseToConfirm (const Locale &lang_r=Locale()) const
bool needToAcceptLicense () const
std::string lookupStrAttribute (const SolvAttr &attr) const
bool lookupBoolAttribute (const SolvAttr &attr) const
detail::IdType lookupIdAttribute (const SolvAttr &attr) const
unsigned long long lookupNumAttribute (const SolvAttr &attr) const
CheckSum lookupCheckSumAttribute (const SolvAttr &attr) const
OnMediaLocation lookupLocation () const
Solvable::IdType id () const
Public Member Functions inherited from zypp::base::ReferenceCounted
 ReferenceCounted ()
 Default ctor.
 ReferenceCounted (const ReferenceCounted &rhs)
 Copy ctor.
virtual ~ReferenceCounted ()
 Dtor.
ReferenceCountedoperator= (const ReferenceCounted &)
 Assignment.
unsigned refCount () const
 Return reference counter value.
void ref () const
 Add a reference.
void unref () const
 Release a reference.

Source package handling

std::string sourcePkgName () const
 Name of the source rpm this package was built from.
Edition sourcePkgEdition () const
 Edition of the source rpm this package was built from.
std::string sourcePkgType () const
 The type of the source rpm ("src" or "nosrc").
std::string sourcePkgLongName () const
 The source rpms "name-version-release.type".
CheckSum checksum () const
 Checksum the source says this package should have.
OnMediaLocation location () const
 Location of the resolvable in the repository.
Pathname cachedLocation () const
 Location of the downloaded package in cache or an empty path.
bool isCached () const
 Whether the package is cached.
Ptr make (const sat::Solvable &solvable_r)
 Directly create a certain kind of ResObject from sat::Solvable.
 Package (const sat::Solvable &solvable_r)
 Ctor.
 ~Package () override
 Dtor.

Additional Inherited Members

Static Public Member Functions inherited from zypp::base::ReferenceCounted
static void add_ref (const ReferenceCounted *ptr_r)
 Called by zypp::intrusive_ptr to add a reference.
static void release (const ReferenceCounted *ptr_r)
 Called by zypp::intrusive_ptr to add a reference.
Public Attributes inherited from zypp::sat::SolvableType< Resolvable >
Capabilities const
Protected Member Functions inherited from zypp::ResObject
 ResObject (const sat::Solvable &solvable_r)
 Ctor.
 ~ResObject () override
 Dtor.
std::ostream & dumpOn (std::ostream &str) const override
 Helper for stream output.
 operator sat::Solvable () const
 This is a sat::SolvableType (allow implicit conversion in derived classes).
Protected Member Functions inherited from zypp::Resolvable
 Resolvable (const sat::Solvable &solvable_r)
 Ctor.
 ~Resolvable () override
 Dtor.
std::ostream & dumpOn (std::ostream &str) const override
 Helper for stream output.
Protected Member Functions inherited from zypp::sat::SolvableType< Resolvable >
 SolvableType ()
SolvableTypeoperator= (const SolvableType &)=default
 ~SolvableType ()
Protected Member Functions inherited from zypp::base::ReferenceCounted
virtual void ref_to (unsigned) const
 Trigger derived classes after refCount was increased.
virtual void unref_to (unsigned) const
 Trigger derived classes after refCount was decreased.

Detailed Description

Package interface.

Definition at line 33 of file Package.h.

Member Typedef Documentation

◆ Self

Definition at line 36 of file Package.h.

◆ TraitsType

Definition at line 37 of file Package.h.

◆ Ptr

Definition at line 38 of file Package.h.

◆ constPtr

Definition at line 39 of file Package.h.

◆ Keywords

◆ FileList

using zypp::Package::FileList = sat::ArrayAttr<std::string, std::string>

Definition at line 43 of file Package.h.

Constructor & Destructor Documentation

◆ Package()

zypp::Package::Package ( const sat::Solvable & solvable_r)
protected

Ctor.

Definition at line 139 of file Package.cc.

◆ ~Package()

zypp::Package::~Package ( )
overrideprotected

Dtor.

Definition at line 148 of file Package.cc.

Member Function Documentation

◆ vendorSupport()

VendorSupportOption zypp::Package::vendorSupport ( ) const

Returns the level of supportability the vendor gives to this package.

If the identical package happens to appear in multiple repos with different support levels, the maximum level is returned.

This is one value from VendorSupportOption.

Definition at line 151 of file Package.cc.

◆ maybeUnsupported()

bool zypp::Package::maybeUnsupported ( ) const

True if the vendor support for this package is unknown or explicitly unsupported.

Definition at line 154 of file Package.cc.

◆ supersededBy()

std::vector< std::string > zypp::Package::supersededBy ( ) const

The name(s) of the successor package if vendorSupport is VendorSupportSuperseded.

Ideally only one name, but it might be that different repos provide different successor names. These are the pure metadata values.

See also
supersededByItems and ui::Selectable::supersededBy

Definition at line 172 of file Package.cc.

◆ supersededByItems()

std::pair< std::vector< IdString >, std::vector< std::string > > zypp::Package::supersededByItems ( ) const

The successor package(s) if vendorSupport is VendorSupportSuperseded.

Each name returned by supersededBy is resolved into the Solvable::ident of an Item in the pool (collapsing chains of superseeded packages).

The std::pair returned contains the IdString idents of superseeding packages and any std::strings which could not be resolved into a package name.

Ideally you get back one IdString and no unresolved names. Multiple IdStrings express a choice. Unresolved names hint to broken repo metadata, as superseeding packages should be available in the repo.

Definition at line 185 of file Package.cc.

◆ changelog()

Changelog zypp::Package::changelog ( ) const

Get the package change log.

Definition at line 220 of file Package.cc.

◆ buildhost()

std::string zypp::Package::buildhost ( ) const

Definition at line 239 of file Package.cc.

◆ distribution()

std::string zypp::Package::distribution ( ) const

Definition at line 242 of file Package.cc.

◆ license()

std::string zypp::Package::license ( ) const

Definition at line 245 of file Package.cc.

◆ packager()

std::string zypp::Package::packager ( ) const

Definition at line 248 of file Package.cc.

◆ group()

std::string zypp::Package::group ( ) const

Definition at line 251 of file Package.cc.

◆ keywords()

Package::Keywords zypp::Package::keywords ( ) const

Definition at line 254 of file Package.cc.

◆ url()

std::string zypp::Package::url ( ) const

Don't ship it as class Url, because it might be in fact anything but a legal Url.

Definition at line 257 of file Package.cc.

◆ sourcesize()

ByteCount zypp::Package::sourcesize ( ) const

Size of corresponding the source package.

Definition at line 260 of file Package.cc.

◆ authors()

std::list< std::string > zypp::Package::authors ( ) const

Definition at line 263 of file Package.cc.

◆ filelist()

Package::FileList zypp::Package::filelist ( ) const

Return the packages filelist (if available).

The returned FileList appears to be a container of std::string. In fact it is a query, so it does not consume much memory.

Definition at line 270 of file Package.cc.

◆ sourcePkgName()

std::string zypp::Package::sourcePkgName ( ) const

Name of the source rpm this package was built from.

Definition at line 282 of file Package.cc.

◆ sourcePkgEdition()

Edition zypp::Package::sourcePkgEdition ( ) const

Edition of the source rpm this package was built from.

Definition at line 289 of file Package.cc.

◆ sourcePkgType()

std::string zypp::Package::sourcePkgType ( ) const

The type of the source rpm ("src" or "nosrc").

Definition at line 296 of file Package.cc.

◆ sourcePkgLongName()

std::string zypp::Package::sourcePkgLongName ( ) const

The source rpms "name-version-release.type".

Definition at line 299 of file Package.cc.

◆ checksum()

CheckSum zypp::Package::checksum ( ) const

Checksum the source says this package should have.

See also
location

Definition at line 273 of file Package.cc.

◆ location()

OnMediaLocation zypp::Package::location ( ) const

Location of the resolvable in the repository.

OnMediaLocation conatins all information required to retrieve the packge (url, checksum, etc.).

Definition at line 276 of file Package.cc.

◆ cachedLocation()

Pathname zypp::Package::cachedLocation ( ) const

Location of the downloaded package in cache or an empty path.

Definition at line 279 of file Package.cc.

◆ isCached()

bool zypp::Package::isCached ( ) const
inline

Whether the package is cached.

Definition at line 151 of file Package.h.

◆ make

Ptr make ( const sat::Solvable & solvable_r)
friend

Directly create a certain kind of ResObject from sat::Solvable.

If the sat::Solvables kind is not appropriate, a NULL pointer is returned.

friend Ptr make(const sat::Solvable &solvable_r)
Directly create a certain kind of ResObject from sat::Solvable.
Definition ResObject.h:118
TraitsType::PtrType Ptr
Definition Package.h:38
friend ResObject::Ptr makeResObject(const sat::Solvable &solvable_r)
Create ResObject from sat::Solvable.
Definition ResObject.cc:43
TraitsType::PtrType Ptr
Definition ResObject.h:42
A Solvable object within the sat Pool.
Definition Solvable.h:54
Todo
make<> was a poor choice (AFAIR because gcc had some trouble with asKind<>(sat::Solvable)). Remove it in favour of asKind<>(sat::Solvable)

Definition at line 118 of file ResObject.h.


The documentation for this class was generated from the following files: