libzypp: zypp::ResPoolProxy Class Reference

libzypp 17.25.10

Classes | Public Types | Public Member Functions | Private Types | Friends | Related Functions | List of all members
zypp::ResPoolProxy Class Reference

ResPool::instance().proxy();. More...

`#include <ResPoolProxy.h>`

## Classes
struct | Impl
| ResPoolProxy implementation. More...
class | ScopedSaveState
| Exception safe scoped save/restore state. More...

## Public Types
typedef MapKVIteratorTraits< SelectablePool >::Value_const_iterator | const_iterator
typedef SelectablePool::size_type | size_type
typedef ResPool::repository_iterator | repository_iterator

## Public Member Functions
| ResPoolProxy ()
| Default ctor: no pool Nonempty proxies are provided by ResPool. More...
| ~ResPoolProxy ()
| Dtor. More...
Lookup individual Selectables.
ui::Selectable::Ptr | lookup (const pool::ByIdent &ident_r) const
ui::Selectable::Ptr | lookup (IdString ident_r) const
ui::Selectable::Ptr | lookup (ResKind kind_r, const std::string &name_r) const
ui::Selectable::Ptr | lookup (const sat::Solvable &solv_r) const
ui::Selectable::Ptr | lookup (const ResObject::constPtr &resolvable_r) const
ui::Selectable::Ptr | lookup (const PoolItem &pi_r) const
Iterate through all Selectables of a all kind.
bool | empty () const
size_type | size () const
const_iterator | begin () const
const_iterator | end () const
Iterate through all Selectables of a certain kind.
bool | empty (const ResKind &kind_r) const
| True if there are items of a certain kind. More...
template<class TRes >
bool | empty () const
size_type | size (const ResKind &kind_r) const
| Number of Items of a certain kind. More...
template<class TRes >
size_type | size () const
const_iterator | byKindBegin (const ResKind &kind_r) const
template<class TRes >
const_iterator | byKindBegin () const
const_iterator | byKindEnd (const ResKind &kind_r) const
template<class TRes >
const_iterator | byKindEnd () const
Iterable< const_iterator > | byKind (const ResKind &kind_r) const
template<class TRes >
Iterable< const_iterator > | byKind () const
Iterate through all Repositories that contribute ResObjects.
size_type | knownRepositoriesSize () const
repository_iterator | knownRepositoriesBegin () const
repository_iterator | knownRepositoriesEnd () const
Iterable< repository_iterator > | knownRepositories () const
bool | hasInstalledObj (const ResKind &kind_r) const
| Test whether there is at least one ui::Selectable with an installed object. More...
template<class TRes >
bool | hasInstalledObj () const

## Private Types
typedef std::multimap< ResKind, ui::Selectable::Ptr > | SelectablePool

## Friends
std::ostream & | operator<< (std::ostream &str, const ResPoolProxy &obj)
std::ostream & | dumpOn (std::ostream &str, const ResPoolProxy &obj)

## Related Functions
(Note that these are not member functions.)
std::ostream & | operator<< (std::ostream &str, const ResPoolProxy &obj)
| Stream output. More...
std::ostream & | dumpOn (std::ostream &str, const ResPoolProxy &obj)
| Verbose stream output. More...

## Save and restore state per kind of resolvable.
Simple version, no safety net. So don't restore or diff, if you didn't save before. Diff returns true, if current stat differs from the saved state. Use scopedSaveState for exception safe scoped save/restore
class | pool::PoolImpl
RW_pointer< Impl > | _pimpl
| Pointer to implementation. More...
void | saveState () const
void | saveState (const ResKind &kind_r) const
template<class TRes >
void | saveState () const
void | restoreState () const
void | restoreState (const ResKind &kind_r) const
template<class TRes >
void | restoreState () const
bool | diffState () const
bool | diffState (const ResKind &kind_r) const
template<class TRes >
bool | diffState () const
ScopedSaveState | scopedSaveState () const
ScopedSaveState | scopedSaveState (const ResKind &kind_r) const
template<class TRes >
ScopedSaveState && | scopedSaveState () const
template<class TFilter >
filter_iterator< TFilter, const_iterator > | make_begin (TFilter filter_r, const ResKind &kind_r) const
template<class TFilter >
filter_iterator< TFilter, const_iterator > | make_begin (const ResKind &kind_r) const
template<class TFilter >
filter_iterator< TFilter, const_iterator > | make_end (TFilter filter_r, const ResKind &kind_r) const
template<class TFilter >
filter_iterator< TFilter, const_iterator > | make_end (const ResKind &kind_r) const
| ResPoolProxy (ResPool pool_r, const pool::PoolImpl &poolImpl_r)
| Ctor. More...

## Detailed Description

ResPool::instance().proxy();.

Todo:
  integrate it into ResPool

Definition at line 34 of file ResPoolProxy.h.

## Member Typedef Documentation

## ◆ SelectablePool

typedef std::multimap<ResKind,ui::Selectable::Ptr> zypp::ResPoolProxy::SelectablePool
| private

Definition at line 38 of file ResPoolProxy.h.

## ◆ const_iterator

typedef MapKVIteratorTraits<SelectablePool>::Value_const_iterator zypp::ResPoolProxy::const_iterator

Definition at line 44 of file ResPoolProxy.h.

## ◆ size_type

typedef SelectablePool::size_type zypp::ResPoolProxy::size_type

Definition at line 45 of file ResPoolProxy.h.

## ◆ repository_iterator

typedef ResPool::repository_iterator zypp::ResPoolProxy::repository_iterator

Definition at line 47 of file ResPoolProxy.h.

## Constructor & Destructor Documentation

## ◆ ResPoolProxy() [1/2]

zypp::ResPoolProxy::ResPoolProxy | ( |  | ) |

Default ctor: no pool Nonempty proxies are provided by ResPool.

See also
  ResPool::proxy
  ResPoolProxy p( ResPool::instance().proxy() );
  zypp::ResPoolProxy::ResPoolProxy
  ResPoolProxy()
  Default ctor: no pool Nonempty proxies are provided by ResPool.
  Definition: ResPoolProxy.cc:248
  zypp::ResPool::instance
  static ResPool instance()
  Singleton ctor.
  Definition: ResPool.cc:37

Definition at line 248 of file ResPoolProxy.cc.

## ◆ ~ResPoolProxy()

zypp::ResPoolProxy::~ResPoolProxy | ( |  | ) |

Dtor.

Definition at line 266 of file ResPoolProxy.cc.

## ◆ ResPoolProxy() [2/2]

zypp::ResPoolProxy::ResPoolProxy | ( | ResPool | pool_r,
|  | const pool::PoolImpl & | poolImpl_r
| ) |  |
| private

Ctor.

Definition at line 257 of file ResPoolProxy.cc.

## Member Function Documentation

## ◆ lookup() [1/6]

ui::Selectable::Ptr zypp::ResPoolProxy::lookup | ( | const pool::ByIdent & | ident_r | ) | const

Definition at line 275 of file ResPoolProxy.cc.

## ◆ lookup() [2/6]

ui::Selectable::Ptr zypp::ResPoolProxy::lookup | ( | IdString | ident_r | ) | const
| inline

Definition at line 68 of file ResPoolProxy.h.

## ◆ lookup() [3/6]

ui::Selectable::Ptr zypp::ResPoolProxy::lookup | ( | ResKind | kind_r,
|  | const std::string & | name_r
| ) |  | const
| inline

Definition at line 71 of file ResPoolProxy.h.

## ◆ lookup() [4/6]

ui::Selectable::Ptr zypp::ResPoolProxy::lookup | ( | const sat::Solvable & | solv_r | ) | const
| inline

Definition at line 74 of file ResPoolProxy.h.

## ◆ lookup() [5/6]

ui::Selectable::Ptr zypp::ResPoolProxy::lookup | ( | const ResObject::constPtr & | resolvable_r | ) | const
| inline

Definition at line 77 of file ResPoolProxy.h.

## ◆ lookup() [6/6]

ui::Selectable::Ptr zypp::ResPoolProxy::lookup | ( | const PoolItem & | pi_r | ) | const
| inline

Definition at line 80 of file ResPoolProxy.h.

## ◆ empty() [1/3]

bool zypp::ResPoolProxy::empty | ( |  | ) | const

Definition at line 278 of file ResPoolProxy.cc.

## ◆ size() [1/3]

ResPoolProxy::size_type zypp::ResPoolProxy::size | ( |  | ) | const

Definition at line 281 of file ResPoolProxy.cc.

## ◆ begin()

ResPoolProxy::const_iterator zypp::ResPoolProxy::begin | ( |  | ) | const

Definition at line 284 of file ResPoolProxy.cc.

## ◆ end()

ResPoolProxy::const_iterator zypp::ResPoolProxy::end | ( |  | ) | const

Definition at line 287 of file ResPoolProxy.cc.

## ◆ empty() [2/3]

bool zypp::ResPoolProxy::empty | ( | const ResKind & | kind_r | ) | const

True if there are items of a certain kind.

Definition at line 290 of file ResPoolProxy.cc.

## ◆ empty() [3/3]

template<class TRes >

bool zypp::ResPoolProxy::empty | ( |  | ) | const
| inline

Definition at line 99 of file ResPoolProxy.h.

## ◆ size() [2/3]

ResPoolProxy::size_type zypp::ResPoolProxy::size | ( | const ResKind & | kind_r | ) | const

Number of Items of a certain kind.

Definition at line 293 of file ResPoolProxy.cc.

## ◆ size() [3/3]

template<class TRes >

size_type zypp::ResPoolProxy::size | ( |  | ) | const
| inline

Definition at line 106 of file ResPoolProxy.h.

## ◆ byKindBegin() [1/2]

ResPoolProxy::const_iterator zypp::ResPoolProxy::byKindBegin | ( | const ResKind & | kind_r | ) | const

Definition at line 296 of file ResPoolProxy.cc.

## ◆ byKindBegin() [2/2]

template<class TRes >

const_iterator zypp::ResPoolProxy::byKindBegin | ( |  | ) | const
| inline

Definition at line 112 of file ResPoolProxy.h.

## ◆ byKindEnd() [1/2]

ResPoolProxy::const_iterator zypp::ResPoolProxy::byKindEnd | ( | const ResKind & | kind_r | ) | const

Definition at line 299 of file ResPoolProxy.cc.

## ◆ byKindEnd() [2/2]

template<class TRes >

const_iterator zypp::ResPoolProxy::byKindEnd | ( |  | ) | const
| inline

Definition at line 119 of file ResPoolProxy.h.

## ◆ byKind() [1/2]

Iterable<const_iterator> zypp::ResPoolProxy::byKind | ( | const ResKind & | kind_r | ) | const
| inline

Definition at line 123 of file ResPoolProxy.h.

## ◆ byKind() [2/2]

template<class TRes >

Iterable<const_iterator> zypp::ResPoolProxy::byKind | ( |  | ) | const
| inline

Definition at line 127 of file ResPoolProxy.h.

## ◆ knownRepositoriesSize()

ResPoolProxy::size_type zypp::ResPoolProxy::knownRepositoriesSize | ( |  | ) | const

Definition at line 302 of file ResPoolProxy.cc.

## ◆ knownRepositoriesBegin()

ResPoolProxy::repository_iterator zypp::ResPoolProxy::knownRepositoriesBegin | ( |  | ) | const

Definition at line 305 of file ResPoolProxy.cc.

## ◆ knownRepositoriesEnd()

ResPoolProxy::repository_iterator zypp::ResPoolProxy::knownRepositoriesEnd | ( |  | ) | const

Definition at line 308 of file ResPoolProxy.cc.

## ◆ knownRepositories()

Iterable<repository_iterator> zypp::ResPoolProxy::knownRepositories | ( |  | ) | const
| inline

Definition at line 142 of file ResPoolProxy.h.

## ◆ hasInstalledObj() [1/2]

bool zypp::ResPoolProxy::hasInstalledObj | ( | const ResKind & | kind_r | ) | const
| inline

Test whether there is at least one ui::Selectable with an installed object.

Definition at line 150 of file ResPoolProxy.h.

## ◆ hasInstalledObj() [2/2]

template<class TRes >

bool zypp::ResPoolProxy::hasInstalledObj | ( |  | ) | const
| inline

Definition at line 157 of file ResPoolProxy.h.

## ◆ saveState() [1/3]

void zypp::ResPoolProxy::saveState | ( |  | ) | const

Definition at line 311 of file ResPoolProxy.cc.

## ◆ saveState() [2/3]

void zypp::ResPoolProxy::saveState | ( | const ResKind & | kind_r | ) | const

Definition at line 314 of file ResPoolProxy.cc.

## ◆ saveState() [3/3]

template<class TRes >

void zypp::ResPoolProxy::saveState | ( |  | ) | const
| inline

Definition at line 176 of file ResPoolProxy.h.

## ◆ restoreState() [1/3]

void zypp::ResPoolProxy::restoreState | ( |  | ) | const

Definition at line 317 of file ResPoolProxy.cc.

## ◆ restoreState() [2/3]

void zypp::ResPoolProxy::restoreState | ( | const ResKind & | kind_r | ) | const

Definition at line 320 of file ResPoolProxy.cc.

## ◆ restoreState() [3/3]

template<class TRes >

void zypp::ResPoolProxy::restoreState | ( |  | ) | const
| inline

Definition at line 184 of file ResPoolProxy.h.

## ◆ diffState() [1/3]

bool zypp::ResPoolProxy::diffState | ( |  | ) | const

Definition at line 323 of file ResPoolProxy.cc.

## ◆ diffState() [2/3]

bool zypp::ResPoolProxy::diffState | ( | const ResKind & | kind_r | ) | const

Definition at line 326 of file ResPoolProxy.cc.

## ◆ diffState() [3/3]

template<class TRes >

bool zypp::ResPoolProxy::diffState | ( |  | ) | const
| inline

Definition at line 192 of file ResPoolProxy.h.

## ◆ scopedSaveState() [1/3]

ResPoolProxy::ScopedSaveState zypp::ResPoolProxy::scopedSaveState | ( |  | ) | const
| inline

Definition at line 301 of file ResPoolProxy.h.

## ◆ scopedSaveState() [2/3]

ResPoolProxy::ScopedSaveState zypp::ResPoolProxy::scopedSaveState | ( | const ResKind & | kind_r | ) | const
| inline

Definition at line 304 of file ResPoolProxy.h.

## ◆ scopedSaveState() [3/3]

template<class TRes >

ScopedSaveState&& zypp::ResPoolProxy::scopedSaveState | ( |  | ) | const
| inline

Definition at line 209 of file ResPoolProxy.h.

## ◆ make_begin() [1/2]

template<class TFilter >

filter_iterator<TFilter,const_iterator> zypp::ResPoolProxy::make_begin | ( | TFilter | filter_r,
|  | const ResKind & | kind_r
| ) |  | const
| inlineprivate

Definition at line 217 of file ResPoolProxy.h.

## ◆ make_begin() [2/2]

template<class TFilter >

filter_iterator<TFilter,const_iterator> zypp::ResPoolProxy::make_begin | ( | const ResKind & | kind_r | ) | const
| inlineprivate

Definition at line 225 of file ResPoolProxy.h.

## ◆ make_end() [1/2]

template<class TFilter >

filter_iterator<TFilter,const_iterator> zypp::ResPoolProxy::make_end | ( | TFilter | filter_r,
|  | const ResKind & | kind_r
| ) |  | const
| inlineprivate

Definition at line 233 of file ResPoolProxy.h.

## ◆ make_end() [2/2]

template<class TFilter >

filter_iterator<TFilter,const_iterator> zypp::ResPoolProxy::make_end | ( | const ResKind & | kind_r | ) | const
| inlineprivate

Definition at line 241 of file ResPoolProxy.h.

## Friends And Related Function Documentation

## ◆ pool::PoolImpl

friend class pool::PoolImpl
| friend

Definition at line 247 of file ResPoolProxy.h.

## ◆ operator<< [1/2]

std::ostream& operator<< | ( | std::ostream & | str,
|  | const ResPoolProxy & | obj
| ) |  |
| friend

Definition at line 329 of file ResPoolProxy.cc.

## ◆ dumpOn [1/2]

std::ostream& dumpOn | ( | std::ostream & | str,
|  | const ResPoolProxy & | obj
| ) |  |
| friend

Definition at line 332 of file ResPoolProxy.cc.

## ◆ operator<<() [2/2]

std::ostream & operator<< | ( | std::ostream & | str,
|  | const ResPoolProxy & | obj
| ) |  |
| related

Stream output.

Definition at line 329 of file ResPoolProxy.cc.

## ◆ dumpOn() [2/2]

std::ostream & dumpOn | ( | std::ostream & | str,
|  | const ResPoolProxy & | obj
| ) |  |
| related

Verbose stream output.

Definition at line 332 of file ResPoolProxy.cc.

## Member Data Documentation

## ◆ _pimpl

RW_pointer<Impl> zypp::ResPoolProxy::_pimpl
| private

Pointer to implementation.

Definition at line 251 of file ResPoolProxy.h.

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

- zypp/ResPoolProxy.h
- zypp/ResPoolProxy.cc