BDaemonClient: Add support for creating activation transactions

* BActivationTransaction:
  - Remove non-trivial constructor.
  - Remove package list parameters from SetTo().
  - Add AddPackageTo{Dea,A}ctivate().
* BDaemonClient:
  - Add CreateTransaction(). It creates a transaction directory and
    initializes a BActivationTransaction. Packages to de-/activate have
    to be added afterwards.
  - Add BCommitTransactionResult::FullErrorMessage().
This commit is contained in:
Ingo Weinhold
2013-04-20 21:40:11 +02:00
parent 69a53ac5b4
commit 6a1430716c
4 changed files with 142 additions and 41 deletions
+10
View File
@@ -16,6 +16,9 @@
#include <package/DaemonDefs.h>
class BDirectory;
namespace BPackageKit {
@@ -44,6 +47,11 @@ public:
const BActivationTransaction& transaction,
BCommitTransactionResult& _result);
status_t CreateTransaction(
BPackageInstallationLocation location,
BActivationTransaction& _transaction,
BDirectory& _transactionDirectory);
private:
status_t _InitMessenger();
status_t _ExtractPackageInfoSet(const BMessage& message,
@@ -81,6 +89,8 @@ public:
const BString& ErrorPackage() const;
// may be empty, even on error
BString FullErrorMessage() const;
const BString& OldStateDirectory() const;
private: