libzypp  17.34.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 <utility>
17 #include <vector>
18 #include <list>
19 
20 #include <zypp/PoolItem.h>
21 #include <zypp/sat/Transaction.h>
22 #include <zypp-core/base/DefaultIntegral>
23 
25 namespace zypp
26 {
27 
28  namespace sat
29  {
30  class Transaction;
31  }
32 
35  {
36  public:
38  : _solvable( solvable_r ), _file(std::move( file_r ))
39  {}
40  public:
41  sat::Solvable solvable() const { return _solvable; }
42  const Pathname & file() const { return _file; }
43  private:
46  };
47 
48  using UpdateNotifications = std::list<UpdateNotificationFile>;
49 
51  //
52  // CLASS NAME : ZYppCommitResult
53  //
64  {
65  public:
66  using TransactionStepList = std::vector<sat::Transaction::Step>;
67 
68  public:
70  ZYppCommitResult( const ZYppCommitResult & lhs_r );
71  ZYppCommitResult( const Pathname & root_r );
73 
74  public:
79  const Pathname & root() const;
80 
86  bool attemptToModify() const;
87 
89  void attemptToModify( bool yesno_r );
90 
96  bool singleTransactionMode() const;
97  void setSingleTransactionMode( bool yesno_r );
98 
106  const sat::Transaction & transaction() const;
107 
109  sat::Transaction & rTransaction();
110 
114  const TransactionStepList & transactionStepList() const;
115 
117  TransactionStepList & rTransactionStepList();
118 
146  const UpdateNotifications & updateMessages() const;
147 
151  UpdateNotifications & rUpdateMessages();
152 
153  public:
154 
177  bool allDone() const
178  { return transaction().actionEmpty( ~sat::Transaction::STEP_DONE ); }
179 
181  bool noError() const
182  { return transaction().actionEmpty( sat::Transaction::STEP_ERROR ); }
184 
185  public:
187  class Impl;
188  private:
191  };
193 
195  std::ostream & operator<<( std::ostream & str, const ZYppCommitResult & obj ) ZYPP_API;
196 
198 } // namespace zypp
200 #endif // ZYPP_ZYPPCOMMITRESULT_H
A Solvable object within the sat Pool.
Definition: Solvable.h:53
Result returned from ZYpp::commit.
String related utilities and Regular expression matching.
UpdateNotificationFile(sat::Solvable solvable_r, Pathname file_r)
std::ostream & operator<<(std::ostream &str, const SerialNumber &obj)
Definition: SerialNumber.cc:52
Definition: Arch.h:363
Libsolv transaction wrapper.
Definition: Transaction.h:51
std::list< UpdateNotificationFile > UpdateNotifications
bool noError() const
Whether an error ocurred (skipped streps are ok).
const Arch Arch_armv7hnl Arch_armv7nhl ZYPP_API
Definition: ResTraits.h:93
RWCOW_pointer< Impl > _pimpl
Pointer to data.
bool allDone() const
Whether all steps were performed successfully (none skipped or error)
const Pathname & file() const
std::vector< sat::Transaction::Step > TransactionStepList
sat::Solvable solvable() const
Easy-to use interface to the ZYPP dependency resolver.
Definition: Application.cc:19
Pair of sat::Solvable and Pathname.