libzypp 17.37.17
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>
22#include <zypp-core/base/DefaultIntegral>
23
25namespace 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
110
115
118
146 const UpdateNotifications & updateMessages() const;
147
152
153 public:
154
176
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 ); }
183
184
185 public:
187 class Impl;
188 private:
191 };
192
193
195 std::ostream & operator<<( std::ostream & str, const ZYppCommitResult & obj ) ZYPP_API;
196
198} // namespace zypp
200#endif // ZYPP_ZYPPCOMMITRESULT_H
sat::Solvable solvable() const
const Pathname & file() const
UpdateNotificationFile(sat::Solvable solvable_r, Pathname file_r)
Result returned from ZYpp::commit.
bool singleTransactionMode() const
True if the commit was executed in one big rpm transaction.
bool noError() const
Whether an error ocurred (skipped streps are ok).
bool allDone() const
Whether all steps were performed successfully (none skipped or error)
RWCOW_pointer< Impl > _pimpl
Pointer to data.
bool attemptToModify() const
True if at least one attempt to actually install/remove packages was made.
const Pathname & root() const
Remembered root directory of the target.
TransactionStepList & rTransactionStepList()
Manipulate transactionStepList.
const UpdateNotifications & updateMessages() const
List of update messages installed during this commit.
void setSingleTransactionMode(bool yesno_r)
const TransactionStepList & transactionStepList() const
List of sat::Transaction::Step to be executed by commit.
UpdateNotifications & rUpdateMessages()
Manipulate updateMessages \Note Pathnames are relative to the targets root directory.
std::vector< sat::Transaction::Step > TransactionStepList
const sat::Transaction & transaction() const
The full transaction list.
sat::Transaction & rTransaction()
Manipulate transaction.
A Solvable object within the sat Pool.
Definition Solvable.h:54
Libsolv transaction wrapper.
Definition Transaction.h:52
@ STEP_DONE
[OK] success
Definition Transaction.h:74
Definition Arch.h:364
String related utilities and Regular expression matching.
Libsolv interface
Easy-to use interface to the ZYPP dependency resolver.
std::list< UpdateNotificationFile > UpdateNotifications
std::ostream & operator<<(std::ostream &str, const SerialNumber &obj)
const Arch Arch_armv7hnl Arch_armv7nhl ZYPP_API
Definition Arch.h:247
RW_pointer supporting 'copy on write' functionality.
Definition PtrTypes.h:469