Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members

PMPackageManager Class Reference

#include <PMPackageManager.h>

Inheritance diagram for PMPackageManager:

PMManager List of all members.

Public Types

typedef PkgDuMaster::MountPoint MountPoint

Public Member Functions

void getPackagesToInsDel (std::list< PMPackagePtr > &dellist_r, std::list< PMPackagePtr > &instlist_r, std::list< PMPackagePtr > &srclist_r)
void doUpdate (PMUpdateStats &opt_stats_r)
unsigned updateSize () const
bool updateEmpty () const
PMSelectableVec::const_iterator updateBegin () const
PMSelectableVec::const_iterator updateEnd () const
YRpmGroupsTreerpmGroupsTree () const
YStringTreeItemaddRpmGroup (const std::string &rpmGroup)
std::string rpmGroup (const YStringTreeItem *node)
std::string translatedRpmGroup (const YStringTreeItem *node)
void setMountPoints (const std::set< MountPoint > &mountpoints_r)
const PkgDuMastergetDu ()
const PkgDuMasterupdateDu ()
PkgDuMastercountDuInstalled (PkgDuMaster &dudata) const
PkgDuMastercountDuCandidates (PkgDuMaster &dudata) const
PkgDuMastercountDuSelected (PkgDuMaster &dudata) const

Private Member Functions

PMPackageManageroperator= (const PMPackageManager &)
 PMPackageManager (const PMPackageManager &)
 PMPackageManager ()
virtual ~PMPackageManager ()
virtual PMObjectPtr assertObjectType (const PMObjectPtr &object_r) const
virtual void prePSI ()
virtual void postPSI ()

Private Attributes

PMManager::PMSelectableVec _update_items
YRpmGroupsTree_rpmGroupsTree
PkgDuMaster _du_master

Friends

std::ostream & operator<< (std::ostream &str, const PMPackageManager &obj)

Member Typedef Documentation

typedef PkgDuMaster::MountPoint PMPackageManager::MountPoint
 


Constructor & Destructor Documentation

PMPackageManager::PMPackageManager const PMPackageManager  )  [private]
 

PMPackageManager::PMPackageManager  )  [private]
 

PMPackageManager::~PMPackageManager  )  [private, virtual]
 


Member Function Documentation

YStringTreeItem* PMPackageManager::addRpmGroup const std::string &  rpmGroup  )  [inline]
 

Insert an RPM group into this tree if not already present. Splits the RPM group string ("abc/def/ghi") and creates tree items for each level as required. Returns the tree entry for this RPM group.

PMObjectPtr PMPackageManager::assertObjectType const PMObjectPtr &  object_r  )  const [private, virtual]
 

Make sure the passed PMObjectPtr actually references a PMPackage. If not, report error and return NULL.

Implements PMManager.

PkgDuMaster & PMPackageManager::countDuCandidates PkgDuMaster dudata  )  const
 

Debug: Sum up diskusage of all candidate packages to dudata.

PkgDuMaster & PMPackageManager::countDuInstalled PkgDuMaster dudata  )  const
 

Debug: Sum up diskusage of all installed packages to dudata.

PkgDuMaster & PMPackageManager::countDuSelected PkgDuMaster dudata  )  const
 

Debug: Sum up diskusage of all candidate packages selected for install to dudata.

void PMPackageManager::doUpdate PMUpdateStats opt_stats_r  ) 
 

go through all installed packages and update them.

Any options for update are passed down via opt_stats_r. Remaining fields (statistics and returned lists) will be filled by doUpdate.

const PkgDuMaster & PMPackageManager::getDu  ) 
 

Returns PkgDuMaster, that contains not just the mountpoints set, but overall disk usage info (not spillted to partitions).

This does not update the statistics! It's the info of any previous updateDu().

Note: If the current mountpoint set is empty, we try to get one from InstTarget.

void PMPackageManager::getPackagesToInsDel std::list< PMPackagePtr > &  dellist_r,
std::list< PMPackagePtr > &  instlist_r,
std::list< PMPackagePtr > &  srclist_r
 

Fill in the packages set to be deleted and to be installed. instlist_r is sorted according to PreReqs. srclist_r is the unordered (!) list of all source packages to install

PMPackageManager& PMPackageManager::operator= const PMPackageManager  )  [private]
 

void PMPackageManager::postPSI  )  [private, virtual]
 

Post poolSetInstalled hook

Reimplemented from PMManager.

void PMPackageManager::prePSI  )  [private, virtual]
 

Pre poolSetInstalled hook

Reimplemented from PMManager.

std::string PMPackageManager::rpmGroup const YStringTreeItem node  )  [inline]
 

Returns the complete (untranslated) RPM group tag string for 'node'.

YRpmGroupsTree* PMPackageManager::rpmGroupsTree  )  const [inline]
 

Retrieve the internal RPM groups tree (for cloning tree items in the UI etc.).

void PMPackageManager::setMountPoints const std::set< MountPoint > &  mountpoints_r  )  [inline]
 

Provide 'df' info for disk usage calculation

std::string PMPackageManager::translatedRpmGroup const YStringTreeItem node  )  [inline]
 

Returns the complete translated RPM group tag string for 'node'.

PMSelectableVec::const_iterator PMPackageManager::updateBegin  )  const [inline]
 

Iterator for problematic update items within this Manager.

const PkgDuMaster & PMPackageManager::updateDu  ) 
 

Calculate disk usage based on previously provided 'df' info.

Returns PkgDuMaster, that contains not just the mountpoints set, but overall disk usage info (not spillted to partitions).

Note: If the current mountpoint set is empty, we try to get one from InstTarget.

bool PMPackageManager::updateEmpty  )  const [inline]
 

True if update had problems

PMSelectableVec::const_iterator PMPackageManager::updateEnd  )  const [inline]
 

Iterator for problematic update items within this Manager.

unsigned PMPackageManager::updateSize  )  const [inline]
 

The number of problematic update packges.


Friends And Related Function Documentation

std::ostream& operator<< std::ostream &  str,
const PMPackageManager obj
[friend]
 


Member Data Documentation

PkgDuMaster PMPackageManager::_du_master [private]
 

YRpmGroupsTree* PMPackageManager::_rpmGroupsTree [private]
 

PMManager::PMSelectableVec PMPackageManager::_update_items [private]
 

problematic update items, filled by doUpdate, used by UI


The documentation for this class was generated from the following files:
Generated on Fri Nov 9 14:30:32 2007 for yast2-packagemanager by doxygen 1.3.6