apt @VERSION@
Classes | Files

Acquire system {{{

The Acquire system is responsible for retrieving files from local or remote URIs and postprocessing them (for instance, verifying their authenticity). The core class in this system is pkgAcquire, which is responsible for managing the download queues during the download. There is at least one download queue for each supported protocol; protocols such as http may provide one queue per host. More...

Classes

class  pkgAcquire::Item
 Represents the process by which a pkgAcquire object should {{{ retrieve a file or a collection of files. More...
struct  DiffInfo
 Information about an index patch (aka diff). More...
class  pkgAcqSubIndex
 An item that is responsible for fetching a SubIndex {{{. More...
class  pkgAcqDiffIndex
 An item that is responsible for fetching an index file of {{{ package list diffs and starting the package list's download. More...
class  pkgAcqIndexDiffs
 An item that is responsible for fetching all the patches {{{ that need to be applied to a given package index file. More...
class  pkgAcqIndex
 An acquire item that is responsible for fetching an index {{{ file (e.g., Packages or Sources). More...
class  pkgAcqIndexTrans
 An acquire item that is responsible for fetching a {{{ translated index file. More...
struct  IndexTarget
 Information about an index file. More...
struct  OptionalIndexTarget
 Information about an optional index file. More...
class  pkgAcqMetaSig
 An acquire item that downloads the detached signature {{{ of a meta-index (Release) file, then queues up the release file itself. More...
class  pkgAcqMetaIndex
 An item that is responsible for downloading the meta-index {{{ file (i.e., Release) itself and verifying its signature. More...
class  pkgAcqMetaClearSig
 An item repsonsible for downloading clearsigned metaindexes {{{. More...
class  pkgAcqArchive
 An item that is responsible for fetching a package file. {{{. More...
class  pkgAcqFile
 Retrieve an arbitrary file to the current directory. {{{. More...
class  pkgAcqMethod
class  pkgAcquire::Worker
 A fetch subprocess. More...
class  pkgAcquire
 The core download scheduler. {{{. More...
struct  pkgAcquire::ItemDesc
 Represents a single download source from which an item should be downloaded. More...
class  pkgAcquire::Queue
 A single download queue in a pkgAcquire object. {{{. More...
class  pkgAcquire::UriIterator
 Iterates over all the URIs being fetched by a pkgAcquire object. {{{. More...
struct  pkgAcquire::MethodConfig
 Information about the properties of a single acquire method. {{{. More...
class  pkgAcquireStatus
 A monitor object for downloads controlled by the pkgAcquire class. {{{. More...

Files

file  acquire-item.h
file  acquire-method.h
file  acquire-worker.h
file  acquire.h

Detailed Description

The Acquire system is responsible for retrieving files from local or remote URIs and postprocessing them (for instance, verifying their authenticity). The core class in this system is pkgAcquire, which is responsible for managing the download queues during the download. There is at least one download queue for each supported protocol; protocols such as http may provide one queue per host.

Each file to download is represented by a subclass of pkgAcquire::Item. The files add themselves to the download queue(s) by providing their URI information to pkgAcquire::Item::QueueURI, which calls pkgAcquire::Enqueue.

Once the system is set up, the Run method will spawn subprocesses to handle the enqueued URIs; the scheduler will then take items from the queues and feed them into the handlers until the queues are empty.

Todo:
Acquire supports inserting an object into several queues at once, but it is not clear what its behavior in this case is, and no subclass of pkgAcquire::Item seems to actually use this capability.