1 /*---------------------------------------------------------------------\
3 | |__ / \ / / . \ . \ |
8 \---------------------------------------------------------------------*/
9 /** \file zypp/ZYppCommitResult.cc
14 #include "zypp/base/LogTools.h"
16 #include "zypp/ZYppCommitResult.h"
18 ///////////////////////////////////////////////////////////////////
20 { /////////////////////////////////////////////////////////////////
22 ///////////////////////////////////////////////////////////////////
24 // CLASS NAME : ZYppCommitResult::Impl
26 ///////////////////////////////////////////////////////////////////
28 class ZYppCommitResult::Impl
36 FalseBool _attemptToModify;
37 sat::Transaction _transaction;
38 TransactionStepList _transactionStepList;
39 UpdateNotifications _updateMessages;
42 friend Impl * rwcowClone<Impl>( const Impl * rhs );
43 /** clone for RWCOW_pointer */
44 Impl * clone() const { return new Impl( *this ); }
47 ///////////////////////////////////////////////////////////////////
49 // CLASS NAME : ZYppCommitResult
51 ///////////////////////////////////////////////////////////////////
53 ZYppCommitResult::ZYppCommitResult()
57 ZYppCommitResult::ZYppCommitResult( const ZYppCommitResult & lhs_r )
58 : _pimpl( lhs_r._pimpl )
61 ZYppCommitResult::ZYppCommitResult( const Pathname & root_r )
63 { _pimpl->_root = root_r; }
65 ZYppCommitResult::~ZYppCommitResult()
68 const Pathname & ZYppCommitResult::root() const
69 { return _pimpl->_root; }
71 bool ZYppCommitResult::attemptToModify() const
72 { return _pimpl->_attemptToModify; }
74 void ZYppCommitResult::attemptToModify( bool yesno_r )
75 { _pimpl->_attemptToModify = yesno_r; }
77 const sat::Transaction & ZYppCommitResult::transaction() const
78 { return _pimpl->_transaction; }
80 sat::Transaction & ZYppCommitResult::rTransaction()
81 { return _pimpl->_transaction; }
83 const ZYppCommitResult::TransactionStepList & ZYppCommitResult::transactionStepList() const
84 { return _pimpl->_transactionStepList; }
86 ZYppCommitResult::TransactionStepList & ZYppCommitResult::rTransactionStepList()
87 { return _pimpl->_transactionStepList; }
89 const UpdateNotifications & ZYppCommitResult::updateMessages() const
90 { return _pimpl->_updateMessages; }
92 UpdateNotifications & ZYppCommitResult::rUpdateMessages()
93 { return _pimpl->_updateMessages; }
95 ///////////////////////////////////////////////////////////////////
97 std::ostream & operator<<( std::ostream & str, const ZYppCommitResult & obj )
99 DefaultIntegral<unsigned,0> result[4];
100 for_( it, obj.transaction().actionBegin(), obj.transaction().actionEnd() )
103 switch ( it->stepStage() )
105 case sat::Transaction::STEP_DONE : ++result[1]; break;
106 case sat::Transaction::STEP_ERROR : ++result[2]; break;
107 case sat::Transaction::STEP_TODO : ++result[3]; break;
110 str << "CommitResult "
111 << " (total " << result[0]
112 << ", done " << result[1]
113 << ", error " << result[2]
114 << ", skipped " << result[3]
115 << ", updateMessages " << obj.updateMessages().size()
120 /////////////////////////////////////////////////////////////////
122 ///////////////////////////////////////////////////////////////////