summaryrefslogtreecommitdiff
path: root/apt-pkg/packagemanager.h
diff options
context:
space:
mode:
authorMichael Vogt <mvo@debian.org>2013-10-13 15:05:04 +0200
committerMichael Vogt <mvo@debian.org>2013-10-13 15:05:04 +0200
commite6ad8031b774af9bdd5d460d9983450bb5a03d0d (patch)
treec337e4b089a091770b181c9575ab61eea9cb0074 /apt-pkg/packagemanager.h
parent6c5ae8ed079e01082f606614641b19b7c08893ad (diff)
move the status-fd progress reporting out of the pkgDPkgPM class, at this point, breaks ABI/API, lets see what we can do about this
Diffstat (limited to 'apt-pkg/packagemanager.h')
-rw-r--r--apt-pkg/packagemanager.h18
1 files changed, 15 insertions, 3 deletions
diff --git a/apt-pkg/packagemanager.h b/apt-pkg/packagemanager.h
index 4956e816f..5c15ac0e4 100644
--- a/apt-pkg/packagemanager.h
+++ b/apt-pkg/packagemanager.h
@@ -24,6 +24,7 @@
#define PKGLIB_PACKAGEMANAGER_H
#include <apt-pkg/pkgcache.h>
+#include <apt-pkg/iprogress.h>
#include <string>
#include <iostream>
@@ -40,6 +41,7 @@ class pkgSourceList;
class pkgOrderList;
class pkgRecords;
+
class pkgPackageManager : protected pkgCache::Namespace
{
public:
@@ -84,7 +86,7 @@ class pkgPackageManager : protected pkgCache::Namespace
virtual bool Install(PkgIterator /*Pkg*/,std::string /*File*/) {return false;};
virtual bool Configure(PkgIterator /*Pkg*/) {return false;};
virtual bool Remove(PkgIterator /*Pkg*/,bool /*Purge*/=false) {return false;};
- virtual bool Go(int statusFd=-1) {return true;};
+ virtual bool Go(APT::Progress::PackageManager *progress) {return true;};
virtual void Reset() {};
// the result of the operation
@@ -97,7 +99,17 @@ class pkgPackageManager : protected pkgCache::Namespace
pkgRecords *Recs);
// Do the installation
- OrderResult DoInstall(int statusFd=-1);
+ OrderResult DoInstall(APT::Progress::PackageManager *progress);
+
+ // compat
+ OrderResult DoInstall(int statusFd=-1) {
+ APT::Progress::PackageManager *progress = new
+ APT::Progress::PackageManagerProgressFd(statusFd);
+ OrderResult res = DoInstall(progress);
+ delete progress;
+ return res;
+ }
+
// stuff that needs to be done before the fork() of a library that
// uses apt
@@ -107,7 +119,7 @@ class pkgPackageManager : protected pkgCache::Namespace
};
// stuff that needs to be done after the fork
- OrderResult DoInstallPostFork(int statusFd=-1);
+ OrderResult DoInstallPostFork(APT::Progress::PackageManager *progress);
bool FixMissing();
/** \brief returns all packages dpkg let disappear */