libzypp 17.31.23
zypp::ResObject Class Reference

Base for resolvable objects. More...

#include <ResObject.h>

Inheritance diagram for zypp::ResObject:

Public Types

typedef ResObject Self
 
typedef ResTraits< SelfTraitsType
 
typedef TraitsType::PtrType Ptr
 
typedef TraitsType::constPtrType constPtr
 
- Public Types inherited from zypp::Resolvable
typedef Resolvable Self
 
typedef ResTraits< SelfTraitsType
 
typedef TraitsType::KindType Kind
 
typedef TraitsType::PtrType Ptr
 
typedef TraitsType::constPtrType constPtr
 

Public Member Functions

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
 
bool isKind (const ResKind &kind_r) const
 
bool isKind () const
 
bool isKind (TIterator begin, TIterator end) 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
 
bool identical (const Solvable &rhs) const
 
bool identical (const SolvableType< RDerived > &rhs) const
 
bool sameNVRA (const Solvable &rhs) const
 
bool sameNVRA (const SolvableType< RDerived > &rhs) 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
 
Capabilities dep (Dep which_r) const
 
Capabilities operator[] (Dep which_r) 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 supportsLocale (const LocaleSet &locales_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
 
std::string lookupStrAttribute (const SolvAttr &attr, const Locale &lang_r) const
 
bool lookupBoolAttribute (const SolvAttr &attr) const
 
detail::IdType lookupIdAttribute (const SolvAttr &attr) const
 
unsigned long long lookupNumAttribute (const SolvAttr &attr) const
 
unsigned long long lookupNumAttribute (const SolvAttr &attr, unsigned long long notfound_r) 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.
 

Protected Member Functions

 ResObject (const sat::Solvable &solvable_r)
 Ctor.
 
virtual ~ResObject ()
 Dtor.
 
virtual std::ostream & dumpOn (std::ostream &str) const
 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.
 
virtual ~Resolvable ()
 Dtor.
 
virtual std::ostream & dumpOn (std::ostream &str) const
 Helper for stream output.
 
- Protected Member Functions inherited from zypp::sat::SolvableType< Resolvable >
 SolvableType ()
 
 SolvableType (const SolvableType &)
 
 SolvableType (SolvableType &&)
 
void operator= (const SolvableType &)
 
void operator= (SolvableType &&)
 
 ~SolvableType ()
 
- Protected Member Functions inherited from zypp::base::ReferenceCounted
virtual std::ostream & dumpOn (std::ostream &str) const
 Overload to realize std::ostream & operator<<.
 
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.
 

Friends

ResObject::Ptr makeResObject (const sat::Solvable &solvable_r)
 Create ResObject from sat::Solvable.
 

Related Functions

(Note that these are not member functions.)

template<class TRes >
ResTraits< TRes >::PtrType asKind (const ResObject::Ptr &p)
 Convert ResObject::Ptr into Ptr of a certain Kind.
 

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
 

Detailed Description

Base for resolvable objects.

Note
Resolvable is a SolvableType, which provides direct access to many of the underlying sat::Solvables properties. Don't add common properties here, but in sat::Solvable and extend sat::SolvableType.
See also
makeResObject for how to construct ResObjects.
Todo:
Merge with Resolvable

Definition at line 37 of file ResObject.h.

Member Typedef Documentation

◆ Self

Definition at line 40 of file ResObject.h.

◆ TraitsType

Definition at line 41 of file ResObject.h.

◆ Ptr

Definition at line 42 of file ResObject.h.

◆ constPtr

Constructor & Destructor Documentation

◆ ResObject()

zypp::ResObject::ResObject ( const sat::Solvable solvable_r)
protected

Ctor.

Definition at line 23 of file ResObject.cc.

◆ ~ResObject()

zypp::ResObject::~ResObject ( )
protectedvirtual

Dtor.

Definition at line 27 of file ResObject.cc.

Member Function Documentation

◆ asKind() [1/2]

template<class TRes >
ResTraits< TRes >::constPtrType zypp::ResObject::asKind
inline

Convert this into a Ptr of a certain Kind.

This is a convenience to access type specific attributes.

Returns
NULL if this is not of the specified kind.
Package::constPtr pkg = pi->asKind<Package>();
if ( pi->isKind<Package>() )
DBG << pi->asKind<Package>()->keywords() << endl;
Package interface.
Definition: Package.h:33
Keywords keywords() const
Definition: Package.cc:178
TraitsType::constPtrType constPtr
Definition: Package.h:38
Combining sat::Solvable and ResStatus.
Definition: PoolItem.h:51
bool isKind(const ResKind &kind_r) const
Definition: SolvableType.h:64
#define DBG
Definition: Logger.h:95

Definition at line 147 of file ResObject.h.

◆ asKind() [2/2]

template<class TRes >
ResTraits< TRes >::PtrType zypp::ResObject::asKind
inline

Definition at line 151 of file ResObject.h.

◆ vendor()

Vendor zypp::ResObject::vendor ( ) const
inline

Vendor.

Deprecated:
Though typedef'ed to std::string, Vendor is actually an IdString.

Definition at line 69 of file ResObject.h.

◆ dumpOn()

std::ostream & zypp::ResObject::dumpOn ( std::ostream &  str) const
protectedvirtual

Helper for stream output.

Reimplemented from zypp::Resolvable.

Definition at line 30 of file ResObject.cc.

◆ operator sat::Solvable()

zypp::ResObject::operator sat::Solvable ( ) const
inlineprotected

This is a sat::SolvableType (allow implicit conversion in derived classes).

Definition at line 81 of file ResObject.h.

Friends And Related Function Documentation

◆ makeResObject

ResObject::Ptr makeResObject ( const sat::Solvable solvable_r)
friend

Create ResObject from sat::Solvable.

This function creates the apropriate kind of ResObject depending on the sat::Solvables kind, and returns a smart pointer to it.

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

Package::Ptr pkg( make<Package>( s ) );
TraitsType::PtrType Ptr
Definition: Package.h:37
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
ResObject::Ptr make< ResObject >(const sat::Solvable &solvable_r)
Definition: ResObject.h:122

Definition at line 43 of file ResObject.cc.

◆ asKind()

template<class TRes >
ResTraits< TRes >::PtrType asKind ( const ResObject::Ptr p)
related

Convert ResObject::Ptr into Ptr of a certain Kind.

Returns
NULL iff p is NULL or points to a Resolvable not of the specified Kind.
asKind<Package>(resPtr);

Definition at line 139 of file ResObject.h.


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