This small file, documents how is the current class layout of
debpartial-mirror tool.

Package - store information about a package

SourcePackage - store the extra information needed to deal with source 
                packages using a list of dictionaries

PackageList - just what it sounds like, a listing of packages from a
              single source

(Functionality: provide a list of packages and where to get them from; 
tell what packages depend on other packages; perform filtering on the 
list and provide a subset of packages)


Dists - handle creation of dists dir into the partial-mirror.
  |
  +---------> RemoteDists - download index files (Packages.gz,
  |			    Sources.gz, Release, sum files,...) from
  |			    remote repository
  |
  +---------> LocalDists  - move index files (Packages.gz,
			    Sources.gz, Release, sum files,...) from
			    local repository

Pool - handle creation of "pool"s dir into the partial-mirror.
  |
  +---------> RemotePool - download packages from remote repository
  |
  +---------> LocalPool  - move packages from remote repository

(Functionality: grab packages into a MirrorBackend)

Backend - a locally-stored APT repository that debpartial-mirror
    |      generates
    |
    +-----> MirrorBackend - gets packages from a PackageSource, with
    |                       optional filtering
    |
    +-----> MergeBackend - gets packages from MirrorBackends, with
                           optional additional filtering

(Functionality: figure out which packages need updating; pull updates 
from source)

Config(ConfigParser.ConfigParser) - the debpartial-mirror configuration 
  |                                 database, read from a text file
  |
  +-------> uses several ConfigSection objects (see below)

(Functionality: read the config file, verify that its format is ok, and 
store it in memory.  Allow access to config options.)

ConfigSection - a section of the config file
  |
  +-------> ConfigGlobal - the GLOBAL section of the config file
  |
  +-------> ConfigBackend - a backend section
               |
               +------> ConfigBackendMirror - a mirroring backend (pulls 
               |                              package files from a 
               |                              remote repository)
               |
               +------> ConfigBackendMerge - a merging backend (combines 
                                             several mirroring backends 
                                             into one repository)

(Functionality: read one section of the config file and verify that its 
members are correctly formatted, then give it back to the Config 
object.)

----------------------------------------------------------------------
$Id$
