From 546a5940ef30ead3787b9edd749a3d6cae91f15c Mon Sep 17 00:00:00 2001 From: Michael Andres Date: Tue, 11 Sep 2007 13:01:52 +0000 Subject: [PATCH] changes --- devel/devel.ma/Parse.cc | 61 +++++++++++++++++++++++++++++++++++---- package/libzypp.changes | 1 + zypp/DiskUsageCounter.cc | 6 +++- zypp/target/rpm/RpmPackageImpl.cc | 3 +- zypp/target/rpm/RpmPackageImpl.h | 2 +- 5 files changed, 65 insertions(+), 8 deletions(-) diff --git a/devel/devel.ma/Parse.cc b/devel/devel.ma/Parse.cc index c9dcf1a..cf943db 100644 --- a/devel/devel.ma/Parse.cc +++ b/devel/devel.ma/Parse.cc @@ -35,11 +35,12 @@ #include "zypp/RepoInfo.h" #include "zypp/ui/PatchContents.h" +#include "zypp/ResPoolProxy.h" using namespace std; using namespace zypp; using namespace zypp::functor; - +using namespace zypp::ui; using zypp::parser::TagParser; /////////////////////////////////////////////////////////////////// @@ -48,14 +49,44 @@ static const Pathname sysRoot( "/Local/ROOT" ); /////////////////////////////////////////////////////////////////// +template +Selectable::Ptr getSel( const std::string & name_r ) +{ + ResPoolProxy uipool( getZYpp()->poolProxy() ); + for_(it, uipool.byKindBegin<_Res>(), uipool.byKindEnd<_Res>() ) + { + if ( (*it)->name() == name_r ) + return (*it); + } + return 0; +} + +void dbgDu( Selectable::Ptr sel ) +{ + if ( sel->installedPoolItem() ) + { + DBG << "i: " << sel->installedPoolItem() << endl + << sel->installedPoolItem()->diskusage() << endl; + } + if ( sel->candidatePoolItem() ) + { + DBG << "c: " << sel->candidatePoolItem() << endl + << sel->candidatePoolItem()->diskusage() << endl; + } + INT << sel << endl + << getZYpp()->diskUsage() << endl; +} + +/////////////////////////////////////////////////////////////////// + struct Xprint { bool operator()( const PoolItem & obj_r ) { - //handle( asKind( obj_r ) ); - //handle( asKind( obj_r ) ); - handle( asKind( obj_r ) ); - handle( asKind( obj_r ) ); + handle( asKind( obj_r ) ); +// handle( asKind( obj_r ) ); +// handle( asKind( obj_r ) ); +// handle( asKind( obj_r ) ); return true; } @@ -64,6 +95,7 @@ struct Xprint if ( !p ) return; + WAR << p->size() << endl; MIL << p->diskusage() << endl; } @@ -425,6 +457,25 @@ int main( int argc, char * argv[] ) std::for_each( pool.begin(), pool.end(), Xprint() ); + DiskUsageCounter::MountPointSet fakePart; + fakePart.insert( DiskUsageCounter::MountPoint( "/", 1024, 10240, 5120, 0LL, false ) ); + getZYpp()->setPartitions( fakePart ); + + USR << getZYpp()->getPartitions() << endl; + INT << getZYpp()->diskUsage() << endl; + + Selectable::Ptr sel( getSel( "rpm" ) ); + dbgDu( sel ); + + MIL << sel->set_status( ui::S_Del ) << endl; + dbgDu( sel ); + + MIL << sel->set_status( ui::S_Update ) << endl; + dbgDu( sel ); + + MIL << sel->set_status( ui::S_KeepInstalled ) << endl; + dbgDu( sel ); + /////////////////////////////////////////////////////////////////// INT << "===[END]============================================" << endl << endl; zypp::base::LogControl::instance().logNothing(); diff --git a/package/libzypp.changes b/package/libzypp.changes index da27b9d..d84cc26 100644 --- a/package/libzypp.changes +++ b/package/libzypp.changes @@ -4,6 +4,7 @@ Tue Sep 11 14:54:44 CEST 2007 - ma@suse.de - Don't fail if a product is deleted multiple times (e.g. due to obsoletes and an explicit deleted request). (#308746) - version 3.22.7 +- revision 7184 ------------------------------------------------------------------- Tue Sep 11 13:52:47 CEST 2007 - jkupec@suse.cz diff --git a/zypp/DiskUsageCounter.cc b/zypp/DiskUsageCounter.cc index ab8c200..5b54497 100644 --- a/zypp/DiskUsageCounter.cc +++ b/zypp/DiskUsageCounter.cc @@ -305,7 +305,11 @@ namespace zypp std::ostream & operator<<( std::ostream & str, const DiskUsageCounter::MountPoint & obj ) { - str << "dir:[" << obj.dir << "] [ bs: " << obj.block_size << " ts: " << obj.total_size << "]" << std::endl; + str << "dir:[" << obj.dir << "] [ bs: " << obj.block_size + << " ts: " << obj.total_size + << " us: " << obj.used_size + << " +-: " << obj.pkg_size + << "]" << std::endl; return str; } diff --git a/zypp/target/rpm/RpmPackageImpl.cc b/zypp/target/rpm/RpmPackageImpl.cc index bb63c99..c50e7fe 100644 --- a/zypp/target/rpm/RpmPackageImpl.cc +++ b/zypp/target/rpm/RpmPackageImpl.cc @@ -56,6 +56,7 @@ RPMPackageImpl::RPMPackageImpl( // we know we are reading english. _description.setText(data->tag_description(), Locale("en")); data->tag_du(_disk_usage); + SEC << _disk_usage << endl; _location.setDownloadSize(data->tag_archivesize()); } @@ -199,7 +200,7 @@ std::string RPMPackageImpl::type() const } /** */ -const DiskUsage & RPMPackageImpl::diskUsage() const +const DiskUsage & RPMPackageImpl::diskusage() const { return _disk_usage; } diff --git a/zypp/target/rpm/RpmPackageImpl.h b/zypp/target/rpm/RpmPackageImpl.h index 2e27754..cab485a 100644 --- a/zypp/target/rpm/RpmPackageImpl.h +++ b/zypp/target/rpm/RpmPackageImpl.h @@ -85,7 +85,7 @@ public: /** */ virtual std::string type() const; /** */ - virtual const DiskUsage & diskUsage() const; + virtual const DiskUsage & diskusage() const; /** */ virtual Repository repository() const; -- 2.7.4