pkgDPkgPM Class Reference
Inheritance diagram for pkgDPkgPM:
[legend]
Collaboration diagram for pkgDPkgPM:
[legend]

## Classes

struct | DpkgState
struct | Item

## Public Member Functions

| pkgDPkgPM (pkgDepCache *Cache)
Public Member Functions inherited from pkgPackageManager
bool | GetArchives (pkgAcquire *Owner, pkgSourceList *Sources, pkgRecords *Recs)
OrderResult | DoInstall (APT::Progress::PackageManager *progress)
OrderResult | DoInstallPreFork ()
OrderResult | DoInstallPostFork (APT::Progress::PackageManager *progress)
bool | FixMissing ()
std::set< std::string > | GetDisappearedPackages ()
| returns all packages dpkg let disappear
| pkgPackageManager (pkgDepCache *Cache)

## Static Public Member Functions

static APT_HIDDEN bool | ExpandPendingCalls (std::vector< Item > &List, pkgDepCache &Cache)

## Protected Member Functions

bool | RunScriptsWithPkgs (const char *Cnf)
bool | SendPkgsInfo (FILE *const F, unsigned int const &Version)
void | WriteHistoryTag (std::string const &tag, std::string value)
std::string | ExpandShortPackageName (pkgDepCache &Cache, const std::string &short_pkgname)
void | SendTerminalProgress (float percentage)
void | WriteApportReport (const char *pkgpath, const char *errormsg)
bool | OpenLog ()
bool | CloseLog ()
void | BuildPackagesProgressMap ()
void | StartPtyMagic ()
void | SetupSlavePtyMagic ()
void | StopPtyMagic ()
void | DoStdin (int master)
void | DoTerminalPty (int master)
void | DoDpkgStatusFd (int statusfd)
void | ProcessDpkgStatusLine (char *line)
bool | Install (PkgIterator Pkg, std::string File) override
bool | Configure (PkgIterator Pkg) override
bool | Remove (PkgIterator Pkg, bool Purge=false) override
bool | Go (APT::Progress::PackageManager *progress) override
void | Reset () override
Protected Member Functions inherited from pkgPackageManager
void | ImmediateAdd (PkgIterator P, bool UseInstallVer, unsigned const int &Depth=0)
virtual OrderResult | OrderInstall ()
bool | CheckRConflicts (PkgIterator Pkg, DepIterator Dep, const char *Ver)
bool | CheckRBreaks (PkgIterator const &Pkg, DepIterator Dep, const char *const Ver)
bool | CreateOrderList ()
bool | DepAlwaysTrue (DepIterator D) APT_PURE
bool | ConfigureAll ()
bool | SmartConfigure (PkgIterator Pkg, int Depth)
bool | SmartUnPack (PkgIterator Pkg, bool Immediate=true, int Depth=0)
bool | SmartRemove (PkgIterator Pkg)
bool | EarlyRemove (PkgIterator Pkg, DepIterator const *Dep)

## Protected Attributes

int | pkgFailures
std::map< std::string, std::vector< struct DpkgState > > | PackageOps
std::map< std::string, unsigned int > | PackageOpsDone
unsigned int | PackagesDone
unsigned int | PackagesTotal
std::vector< Item > | List
Protected Attributes inherited from pkgPackageManager
std::unique_ptr< std::string[]> | FileNames
pkgDepCache & | Cache
std::unique_ptr< pkgOrderList > | List
bool | Debug
bool | NoImmConfigure
bool | ImmConfigureAll
std::set< std::string > | disappearedPkgs
| saves packages dpkg let disappear
OrderResult | Res

## Additional Inherited Members

Public Types inherited from pkgPackageManager
enum | OrderResult { Completed , Failed , Incomplete }
Static Public Attributes inherited from pkgPackageManager
static bool | SigINTStop = false
Protected Types inherited from pkgCache::Namespace
typedef pkgCache::GrpIterator | GrpIterator
typedef pkgCache::PkgIterator | PkgIterator
typedef pkgCache::VerIterator | VerIterator
typedef pkgCache::SrcVerIterator | SrcVerIterator
typedef pkgCache::DescIterator | DescIterator
typedef pkgCache::DepIterator | DepIterator
typedef pkgCache::PrvIterator | PrvIterator
typedef pkgCache::RlsFileIterator | RlsFileIterator
typedef pkgCache::PkgFileIterator | PkgFileIterator
typedef pkgCache::VerFileIterator | VerFileIterator
typedef pkgCache::Version | Version
typedef pkgCache::Description | Description
typedef pkgCache::Package | Package
typedef pkgCache::Header | Header
typedef pkgCache::Dep | Dep
typedef pkgCache::Flag | Flag

## Member Function Documentation

## Configure()

bool Configure | ( | PkgIterator | Pkg | ) |

override protected virtual

Reimplemented from pkgPackageManager.

## Go()

bool Go | ( | APT::Progress::PackageManager * | progress | ) |

override protected virtual

Todo
  workaround for dpkg bug, see our ./test-bug-740843-versioned-up-down-breaks test

Reimplemented from pkgPackageManager.

References pkgPackageManager::disappearedPkgs, pkgCache::Package::ID, OpenLog(), pkgCache::Version::Same, and StateChanges::Save().

## Install()

bool Install | ( | PkgIterator | Pkg,
|  | std::string | File )

override protected virtual

Reimplemented from pkgPackageManager.

## OpenLog()

bool OpenLog | ( |  | ) |

protected

Todo
  use a better string after freeze

Referenced by Go().

## ProcessDpkgStatusLine()

void ProcessDpkgStatusLine | ( | char * | line | ) |

protected

Todo
  this needs a muliarch testcase

Todo

Todo
  2: is "pkgname" here reliable with dpkg only sending us

## Remove()

bool Remove | ( | PkgIterator | Pkg,
|  | bool | Purge = false )

override protected virtual

Reimplemented from pkgPackageManager.

## Reset()

void Reset | ( |  | ) |

override protected virtual

Reimplemented from pkgPackageManager.

The documentation for this class was generated from the following files:

- apt-pkg/deb/dpkgpm.h
- apt-pkg/deb/dpkgpm.cc