00001 /*---------------------------------------------------------------------\ 00002 | ____ _ __ __ ___ | 00003 | |__ / \ / / . \ . \ | 00004 | / / \ V /| _/ _/ | 00005 | / /__ | | | | | | | 00006 | /_____||_| |_| |_| | 00007 | | 00008 \---------------------------------------------------------------------*/ 00012 #ifndef ZYPP_ZYPPCOMMITRESULT_H 00013 #define ZYPP_ZYPPCOMMITRESULT_H 00014 00015 #include <iosfwd> 00016 #include <list> 00017 00018 #include "zypp/PoolItem.h" 00019 00021 namespace zypp 00022 { 00023 00025 class UpdateNotificationFile 00026 { 00027 public: 00028 UpdateNotificationFile( sat::Solvable solvable_r, const Pathname & file_r ) 00029 : _solvable( solvable_r ), _file( file_r ) 00030 {} 00031 public: 00032 sat::Solvable solvable() const { return _solvable; } 00033 const Pathname & file() const { return _file; } 00034 private: 00035 sat::Solvable _solvable; 00036 Pathname _file; 00037 }; 00038 00039 typedef std::list<UpdateNotificationFile> UpdateNotifications; 00040 00042 // 00043 // CLASS NAME : ZYppCommitResult 00044 // 00050 class ZYppCommitResult 00051 { 00052 public: 00053 ZYppCommitResult(); 00054 ZYppCommitResult( const Pathname & root_r ); 00055 00056 public: 00061 const Pathname & root() const; 00062 00090 const UpdateNotifications & updateMessages() const; 00091 00095 UpdateNotifications & setUpdateMessages(); 00096 00097 public: 00101 typedef std::list<PoolItem> PoolItemList; 00105 int _result; 00109 PoolItemList _errors; 00113 PoolItemList _remaining; 00117 PoolItemList _srcremaining; 00119 00120 public: 00122 class Impl; 00123 private: 00125 RWCOW_pointer<Impl> _pimpl; 00126 }; 00128 00130 std::ostream & operator<<( std::ostream & str, const ZYppCommitResult & obj ); 00131 00133 } // namespace zypp 00135 #endif // ZYPP_ZYPPCOMMITRESULT_H