libzypp  17.1.1
ZYppCommitResult.h
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | ____ _ __ __ ___ |
3 | |__ / \ / / . \ . \ |
4 | / / \ V /| _/ _/ |
5 | / /__ | | | | | | |
6 | /_____||_| |_| |_| |
7 | |
8 \---------------------------------------------------------------------*/
12 #ifndef ZYPP_ZYPPCOMMITRESULT_H
13 #define ZYPP_ZYPPCOMMITRESULT_H
14 
15 #include <iosfwd>
16 #include <vector>
17 #include <list>
18 
19 #include "zypp/PoolItem.h"
20 #include "zypp/sat/Transaction.h"
22 
24 namespace zypp
25 {
26 
27  namespace sat
28  {
29  class Transaction;
30  }
31 
34  {
35  public:
36  UpdateNotificationFile( sat::Solvable solvable_r, const Pathname & file_r )
37  : _solvable( solvable_r ), _file( file_r )
38  {}
39  public:
40  sat::Solvable solvable() const { return _solvable; }
41  const Pathname & file() const { return _file; }
42  private:
45  };
46 
47  typedef std::list<UpdateNotificationFile> UpdateNotifications;
48 
50  //
51  // CLASS NAME : ZYppCommitResult
52  //
63  {
64  public:
65  typedef std::vector<sat::Transaction::Step> TransactionStepList;
66 
67  public:
69  ZYppCommitResult( const ZYppCommitResult & lhs_r );
70  ZYppCommitResult( const Pathname & root_r );
72 
73  public:
78  const Pathname & root() const;
79 
85  bool attemptToModify() const;
86 
88  void attemptToModify( bool yesno_r );
89 
97  const sat::Transaction & transaction() const;
98 
100  sat::Transaction & rTransaction();
101 
105  const TransactionStepList & transactionStepList() const;
106 
108  TransactionStepList & rTransactionStepList();
109 
137  const UpdateNotifications & updateMessages() const;
138 
142  UpdateNotifications & rUpdateMessages();
143 
144  public:
145 
168  bool allDone() const
169  { return transaction().actionEmpty( ~sat::Transaction::STEP_DONE ); }
170 
172  bool noError() const
173  { return transaction().actionEmpty( sat::Transaction::STEP_ERROR ); }
175 
176  public:
178  class Impl;
179  private:
182  };
184 
186  std::ostream & operator<<( std::ostream & str, const ZYppCommitResult & obj );
187 
189 } // namespace zypp
191 #endif // ZYPP_ZYPPCOMMITRESULT_H
A Solvable object within the sat Pool.
Definition: Solvable.h:53
std::vector< sat::Transaction::Step > TransactionStepList
Result returned from ZYpp::commit.
std::ostream & operator<<(std::ostream &str, const FileConflicts &obj)
String related utilities and Regular expression matching.
Libsolv transaction wrapper.
Definition: Transaction.h:51
bool noError() const
Whether an error ocurred (skipped streps are ok).
RWCOW_pointer< Impl > _pimpl
Pointer to data.
UpdateNotificationFile(sat::Solvable solvable_r, const Pathname &file_r)
bool allDone() const
Whether all steps were performed successfully (none skipped or error)
std::list< UpdateNotificationFile > UpdateNotifications
const Pathname & file() const
sat::Solvable solvable() const
Pathname _file
Definition: SystemCheck.cc:34
Easy-to use interface to the ZYPP dependency resolver.
Definition: CodePitfalls.doc:1
Pair of sat::Solvable and Pathname.