libzypp 17.31.23
zypp::ui::Selectable::Impl Struct Reference

Selectable implementation. More...

#include <ui/SelectableImpl.h>

Public Types

typedef SelectableTraits::AvailableItemSet AvailableItemSet
 
typedef SelectableTraits::available_iterator available_iterator
 
typedef SelectableTraits::available_const_iterator available_const_iterator
 
typedef SelectableTraits::available_size_type available_size_type
 
typedef SelectableTraits::InstalledItemSet InstalledItemSet
 
typedef SelectableTraits::installed_iterator installed_iterator
 
typedef SelectableTraits::installed_const_iterator installed_const_iterator
 
typedef SelectableTraits::installed_size_type installed_size_type
 
typedef SelectableTraits::PickList PickList
 

Public Member Functions

template<class TIterator >
 Impl (const ResKind &kind_r, const std::string &name_r, TIterator begin_r, TIterator end_r)
 
IdString ident () const
 
ResKind kind () const
 
const std::string & name () const
 
Status status () const
 
bool setStatus (Status state_r, ResStatus::TransactByValue causer_r)
 
PoolItem installedObj () const
 Installed object (transacting ot highest version).
 
PoolItem candidateObj () const
 Best among available objects.
 
PoolItem setCandidate (const PoolItem &newCandidate_r, ResStatus::TransactByValue causer_r)
 Set a userCandidate (out of available objects).
 
PoolItem candidateObjFrom (Repository repo_r) const
 The best candidate provided by a specific Repository, if there is one.
 
PoolItem updateCandidateObj () const
 The best candidate for update, if there is one.
 
PoolItem highestAvailableVersionObj () const
 Simply the highest available version, ignoring priorities and policies.
 
bool identIsAutoInstalled () const
 Whether this ident is flagged as AutoInstalled.
 
bool identicalAvailable (const PoolItem &rhs) const
 True if rhs is installed and one with the same content is available.
 
bool identicalInstalled (const PoolItem &rhs) const
 True if rhs has the same content as an installed one.
 
PoolItem identicalAvailableObj (const PoolItem &rhs) const
 Return an available Object with the same content as rhs.
 
PoolItem identicalInstalledObj (const PoolItem &rhs) const
 \Return an installed Object with the same content as rhs.
 
PoolItem theObj () const
 Best among all objects.
 
bool availableEmpty () const
 
available_size_type availableSize () const
 
available_iterator availableBegin () const
 
available_iterator availableEnd () const
 
Iterable< available_iteratoravailable () const
 
bool installedEmpty () const
 
installed_size_type installedSize () const
 
installed_iterator installedBegin () const
 
installed_iterator installedEnd () const
 
Iterable< installed_iteratorinstalled () const
 
const PickListpicklist () const
 
bool picklistEmpty () const
 
picklist_size_type picklistSize () const
 
picklist_iterator picklistBegin () const
 
picklist_iterator picklistEnd () const
 
bool hasBlacklisted () const
 
bool hasBlacklistedInstalled () const
 
bool hasRetracted () const
 
bool hasRetractedInstalled () const
 
bool hasPtf () const
 
bool hasPtfInstalled () const
 
bool isUnmaintained () const
 
bool multiversionInstall () const
 
bool pickInstall (const PoolItem &pi_r, ResStatus::TransactByValue causer_r, bool yesno_r)
 
bool pickDelete (const PoolItem &pi_r, ResStatus::TransactByValue causer_r, bool yesno_r)
 
Status pickStatus (const PoolItem &pi_r) const
 
bool setPickStatus (const PoolItem &pi_r, Status state_r, ResStatus::TransactByValue causer_r)
 
bool isUndetermined () const
 
bool isRelevant () const
 
bool isSatisfied () const
 
bool isBroken () const
 
ResStatus::TransactByValue modifiedBy () const
 Return who caused the modification.
 
bool hasLicenceConfirmed () const
 Return value of LicenceConfirmed bit.
 
void setLicenceConfirmed (bool val_r)
 Set LicenceConfirmed bit.
 
bool hasLocks () const
 True if it includes locked items (don't mix this with the locked status).
 

Private Member Functions

PoolItem transactingInstalled () const
 
PoolItem transactingCandidate () const
 
PoolItem defaultCandidate () const
 
bool allCandidatesLocked () const
 
bool allInstalledLocked () const
 

Private Attributes

const IdString _ident
 
const ResKind _kind
 
const std::string _name
 
InstalledItemSet _installedItems
 
AvailableItemSet _availableItems
 
PoolItem _candidate
 The object selected by setCandidateObj() method.
 
scoped_ptr< PickList_picklistPtr
 lazy initialized picklist
 

Related Functions

(Note that these are not member functions.)

std::ostream & operator<< (std::ostream &str, const Selectable::Impl &obj)
 Stream output.
 
std::ostream & dumpOn (std::ostream &str, const Selectable::Impl &obj)
 Stream output.
 

Detailed Description

Selectable implementation.

Note
Implementation is based in PoolItem, just the Selectable inteface restricts them to ResObject::constPtr.

Definition at line 42 of file SelectableImpl.h.

Member Typedef Documentation

◆ AvailableItemSet

◆ available_iterator

◆ available_const_iterator

◆ available_size_type

◆ InstalledItemSet

◆ installed_iterator

◆ installed_const_iterator

◆ installed_size_type

◆ PickList

Constructor & Destructor Documentation

◆ Impl()

template<class TIterator >
zypp::ui::Selectable::Impl::Impl ( const ResKind kind_r,
const std::string &  name_r,
TIterator  begin_r,
TIterator  end_r 
)
inline

Definition at line 60 of file SelectableImpl.h.

Member Function Documentation

◆ ident()

IdString zypp::ui::Selectable::Impl::ident ( ) const
inline

Definition at line 79 of file SelectableImpl.h.

◆ kind()

ResKind zypp::ui::Selectable::Impl::kind ( ) const
inline

Definition at line 83 of file SelectableImpl.h.

◆ name()

const std::string & zypp::ui::Selectable::Impl::name ( ) const
inline

Definition at line 87 of file SelectableImpl.h.

◆ status()

Status zypp::ui::Selectable::Impl::status ( ) const

Definition at line 322 of file SelectableImpl.cc.

◆ setStatus()

bool zypp::ui::Selectable::Impl::setStatus ( Status  state_r,
ResStatus::TransactByValue  causer_r 
)

Definition at line 355 of file SelectableImpl.cc.

◆ installedObj()

PoolItem zypp::ui::Selectable::Impl::installedObj ( ) const
inline

Installed object (transacting ot highest version).

Definition at line 97 of file SelectableImpl.h.

◆ candidateObj()

PoolItem zypp::ui::Selectable::Impl::candidateObj ( ) const
inline

Best among available objects.

The transacting candidate or the one scheduled to receive the transact bit.

Definition at line 109 of file SelectableImpl.h.

◆ setCandidate()

PoolItem zypp::ui::Selectable::Impl::setCandidate ( const PoolItem newCandidate_r,
ResStatus::TransactByValue  causer_r 
)

Set a userCandidate (out of available objects).

Returns
The new userCandidate or NULL if choice was invalid (not among availableObjs).

Definition at line 396 of file SelectableImpl.cc.

◆ candidateObjFrom()

PoolItem zypp::ui::Selectable::Impl::candidateObjFrom ( Repository  repo_r) const
inline

The best candidate provided by a specific Repository, if there is one.

In contrary to candidateObj, this may return no item even if there are available objects. This simply means the Repository does not provide this object.

Definition at line 128 of file SelectableImpl.h.

◆ updateCandidateObj()

PoolItem zypp::ui::Selectable::Impl::updateCandidateObj ( ) const
inline

The best candidate for update, if there is one.

In contrary to candidateObj, this may return no item even if there are available objects. This simply means the best object is already installed, and all available objects violate at least one update policy.

Definition at line 146 of file SelectableImpl.h.

◆ highestAvailableVersionObj()

PoolItem zypp::ui::Selectable::Impl::highestAvailableVersionObj ( ) const
inline

Simply the highest available version, ignoring priorities and policies.

It's doubtful whether solely looking at the version makes a good candidate, but apps ask for it. Beware that different vendors may use different (uncomparable) version schemata.

Note
Avoids to return blacklisted items.

Definition at line 180 of file SelectableImpl.h.

◆ identIsAutoInstalled()

bool zypp::ui::Selectable::Impl::identIsAutoInstalled ( ) const
inline

Whether this ident is flagged as AutoInstalled.

Definition at line 199 of file SelectableImpl.h.

◆ identicalAvailable()

bool zypp::ui::Selectable::Impl::identicalAvailable ( const PoolItem rhs) const
inline

True if rhs is installed and one with the same content is available.

Basically the same name, edition, arch, vendor and buildtime.

See also
sat::Solvable::identical

Definition at line 203 of file SelectableImpl.h.

◆ identicalInstalled()

bool zypp::ui::Selectable::Impl::identicalInstalled ( const PoolItem rhs) const
inline

True if rhs has the same content as an installed one.

Basically the same name, edition, arch, vendor and buildtime.

See also
sat::Solvable::identical

Definition at line 207 of file SelectableImpl.h.

◆ identicalAvailableObj()

PoolItem zypp::ui::Selectable::Impl::identicalAvailableObj ( const PoolItem rhs) const
inline

Return an available Object with the same content as rhs.

Basically the same name, edition, arch, vendor and buildtime.

See also
sat::Solvable::identical

Definition at line 211 of file SelectableImpl.h.

◆ identicalInstalledObj()

PoolItem zypp::ui::Selectable::Impl::identicalInstalledObj ( const PoolItem rhs) const
inline

\Return an installed Object with the same content as rhs.

Basically the same name, edition, arch, vendor and buildtime.

See also
sat::Solvable::identical

Definition at line 225 of file SelectableImpl.h.

◆ theObj()

PoolItem zypp::ui::Selectable::Impl::theObj ( ) const
inline

Best among all objects.

Definition at line 239 of file SelectableImpl.h.

◆ availableEmpty()

bool zypp::ui::Selectable::Impl::availableEmpty ( ) const
inline

Definition at line 249 of file SelectableImpl.h.

◆ availableSize()

available_size_type zypp::ui::Selectable::Impl::availableSize ( ) const
inline

Definition at line 252 of file SelectableImpl.h.

◆ availableBegin()

available_iterator zypp::ui::Selectable::Impl::availableBegin ( ) const
inline

Definition at line 255 of file SelectableImpl.h.

◆ availableEnd()

available_iterator zypp::ui::Selectable::Impl::availableEnd ( ) const
inline

Definition at line 258 of file SelectableImpl.h.

◆ available()

Iterable< available_iterator > zypp::ui::Selectable::Impl::available ( ) const
inline

Definition at line 261 of file SelectableImpl.h.

◆ installedEmpty()

bool zypp::ui::Selectable::Impl::installedEmpty ( ) const
inline

Definition at line 266 of file SelectableImpl.h.

◆ installedSize()

installed_size_type zypp::ui::Selectable::Impl::installedSize ( ) const
inline

Definition at line 269 of file SelectableImpl.h.

◆ installedBegin()

installed_iterator zypp::ui::Selectable::Impl::installedBegin ( ) const
inline

Definition at line 272 of file SelectableImpl.h.

◆ installedEnd()

installed_iterator zypp::ui::Selectable::Impl::installedEnd ( ) const
inline

Definition at line 275 of file SelectableImpl.h.

◆ installed()

Iterable< installed_iterator > zypp::ui::Selectable::Impl::installed ( ) const
inline

Definition at line 278 of file SelectableImpl.h.

◆ picklist()

const PickList & zypp::ui::Selectable::Impl::picklist ( ) const
inline

Definition at line 283 of file SelectableImpl.h.

◆ picklistEmpty()

bool zypp::ui::Selectable::Impl::picklistEmpty ( ) const
inline

Definition at line 299 of file SelectableImpl.h.

◆ picklistSize()

picklist_size_type zypp::ui::Selectable::Impl::picklistSize ( ) const
inline

Definition at line 302 of file SelectableImpl.h.

◆ picklistBegin()

picklist_iterator zypp::ui::Selectable::Impl::picklistBegin ( ) const
inline

Definition at line 305 of file SelectableImpl.h.

◆ picklistEnd()

picklist_iterator zypp::ui::Selectable::Impl::picklistEnd ( ) const
inline

Definition at line 308 of file SelectableImpl.h.

◆ hasBlacklisted()

bool zypp::ui::Selectable::Impl::hasBlacklisted ( ) const
inline

Definition at line 312 of file SelectableImpl.h.

◆ hasBlacklistedInstalled()

bool zypp::ui::Selectable::Impl::hasBlacklistedInstalled ( ) const
inline

Definition at line 317 of file SelectableImpl.h.

◆ hasRetracted()

bool zypp::ui::Selectable::Impl::hasRetracted ( ) const
inline

Definition at line 326 of file SelectableImpl.h.

◆ hasRetractedInstalled()

bool zypp::ui::Selectable::Impl::hasRetractedInstalled ( ) const
inline

Definition at line 337 of file SelectableImpl.h.

◆ hasPtf()

bool zypp::ui::Selectable::Impl::hasPtf ( ) const
inline

Definition at line 346 of file SelectableImpl.h.

◆ hasPtfInstalled()

bool zypp::ui::Selectable::Impl::hasPtfInstalled ( ) const
inline

Definition at line 357 of file SelectableImpl.h.

◆ isUnmaintained()

bool zypp::ui::Selectable::Impl::isUnmaintained ( ) const
inline

Definition at line 367 of file SelectableImpl.h.

◆ multiversionInstall()

bool zypp::ui::Selectable::Impl::multiversionInstall ( ) const
inline

Definition at line 370 of file SelectableImpl.h.

◆ pickInstall()

bool zypp::ui::Selectable::Impl::pickInstall ( const PoolItem pi_r,
ResStatus::TransactByValue  causer_r,
bool  yesno_r 
)

Definition at line 438 of file SelectableImpl.cc.

◆ pickDelete()

bool zypp::ui::Selectable::Impl::pickDelete ( const PoolItem pi_r,
ResStatus::TransactByValue  causer_r,
bool  yesno_r 
)

Definition at line 445 of file SelectableImpl.cc.

◆ pickStatus()

Status zypp::ui::Selectable::Impl::pickStatus ( const PoolItem pi_r) const

Definition at line 573 of file SelectableImpl.cc.

◆ setPickStatus()

bool zypp::ui::Selectable::Impl::setPickStatus ( const PoolItem pi_r,
Status  state_r,
ResStatus::TransactByValue  causer_r 
)

Definition at line 450 of file SelectableImpl.cc.

◆ isUndetermined()

bool zypp::ui::Selectable::Impl::isUndetermined ( ) const
inline

Definition at line 390 of file SelectableImpl.h.

◆ isRelevant()

bool zypp::ui::Selectable::Impl::isRelevant ( ) const
inline

Definition at line 395 of file SelectableImpl.h.

◆ isSatisfied()

bool zypp::ui::Selectable::Impl::isSatisfied ( ) const
inline

Definition at line 400 of file SelectableImpl.h.

◆ isBroken()

bool zypp::ui::Selectable::Impl::isBroken ( ) const
inline

Definition at line 405 of file SelectableImpl.h.

◆ modifiedBy()

ResStatus::TransactByValue zypp::ui::Selectable::Impl::modifiedBy ( ) const

Return who caused the modification.

Definition at line 642 of file SelectableImpl.cc.

◆ hasLicenceConfirmed()

bool zypp::ui::Selectable::Impl::hasLicenceConfirmed ( ) const
inline

Return value of LicenceConfirmed bit.

Definition at line 415 of file SelectableImpl.h.

◆ setLicenceConfirmed()

void zypp::ui::Selectable::Impl::setLicenceConfirmed ( bool  val_r)
inline

Set LicenceConfirmed bit.

Definition at line 419 of file SelectableImpl.h.

◆ hasLocks()

bool zypp::ui::Selectable::Impl::hasLocks ( ) const
inline

True if it includes locked items (don't mix this with the locked status).

This is also true for partially locked items, where only specific versions are locked.

See also
locked

Definition at line 423 of file SelectableImpl.h.

◆ transactingInstalled()

PoolItem zypp::ui::Selectable::Impl::transactingInstalled ( ) const
inlineprivate

Definition at line 439 of file SelectableImpl.h.

◆ transactingCandidate()

PoolItem zypp::ui::Selectable::Impl::transactingCandidate ( ) const
inlineprivate

Definition at line 449 of file SelectableImpl.h.

◆ defaultCandidate()

PoolItem zypp::ui::Selectable::Impl::defaultCandidate ( ) const
inlineprivate

Definition at line 459 of file SelectableImpl.h.

◆ allCandidatesLocked()

bool zypp::ui::Selectable::Impl::allCandidatesLocked ( ) const
inlineprivate

Definition at line 494 of file SelectableImpl.h.

◆ allInstalledLocked()

bool zypp::ui::Selectable::Impl::allInstalledLocked ( ) const
inlineprivate

Definition at line 504 of file SelectableImpl.h.

Friends And Related Function Documentation

◆ operator<<()

std::ostream & operator<< ( std::ostream &  str,
const Selectable::Impl obj 
)
related

Stream output.

Definition at line 529 of file SelectableImpl.h.

◆ dumpOn()

std::ostream & dumpOn ( std::ostream &  str,
const Selectable::Impl obj 
)
related

Stream output.

Definition at line 538 of file SelectableImpl.h.

Member Data Documentation

◆ _ident

const IdString zypp::ui::Selectable::Impl::_ident
private

Definition at line 516 of file SelectableImpl.h.

◆ _kind

const ResKind zypp::ui::Selectable::Impl::_kind
private

Definition at line 517 of file SelectableImpl.h.

◆ _name

const std::string zypp::ui::Selectable::Impl::_name
private

Definition at line 518 of file SelectableImpl.h.

◆ _installedItems

InstalledItemSet zypp::ui::Selectable::Impl::_installedItems
private

Definition at line 519 of file SelectableImpl.h.

◆ _availableItems

AvailableItemSet zypp::ui::Selectable::Impl::_availableItems
private

Definition at line 520 of file SelectableImpl.h.

◆ _candidate

PoolItem zypp::ui::Selectable::Impl::_candidate
private

The object selected by setCandidateObj() method.

Definition at line 522 of file SelectableImpl.h.

◆ _picklistPtr

scoped_ptr<PickList> zypp::ui::Selectable::Impl::_picklistPtr
mutableprivate

lazy initialized picklist

Definition at line 524 of file SelectableImpl.h.


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