r366 - in branches/rewrite: . src
Otavio Salvador
partial-mirror-devel@lists.alioth.debian.org
Tue, 23 Nov 2004 16:12:10 -0700
Author: otavio
Date: Tue Nov 23 16:12:09 2004
New Revision: 366
Modified:
branches/rewrite/ (props changed)
branches/rewrite/src/Pool.py
Log:
r373@nurf: otavio | 2004-11-23T01:32:32.366057Z
Start to get packages. Yeah!.
Modified: branches/rewrite/src/Pool.py
==============================================================================
--- branches/rewrite/src/Pool.py (original)
+++ branches/rewrite/src/Pool.py Tue Nov 23 16:12:09 2004
@@ -20,6 +20,7 @@
from FileSystem import *
from PackageList import *
+from Download import *
import Config
import apt_pkg
@@ -35,11 +36,10 @@
self._backend = backend
self._gotFiles = []
self._plist = []
- self._dir = FileSystem(backend["mirror_dir"],
- os.path.join(backend["name"], 'pool'))
+ self._dir = FileSystem(backend["mirror_dir"], backend["name"])
self._server = "%s/" % (self._backend["server"])
- #self._local = "%s/pool/" % (self._backend["mirror_dir"])
- self._local = self._dir._dir
+ self._local = self._dir._dir + '/'
+ print self._local
def upgrade (self):
"""
@@ -60,23 +60,9 @@
self._upgrade ()
-
def _upgrade (self):
- """
- Get from remote (or local) repository new version of packages
- that were previously downloaded.
- """
- for p in self._plist:
- self._dir.create(os.path.dirname(p['Filename']))
- self._get(p)
- self._gotFiles.append(p['Filename'])
-
- def _get (self, p):
- """
- Get the a PackageList
- TODO: Remove the print command.
- """
- print p['Filename']
+ # Get all needed files. This need to be implemented on
+ # subclass.
pass
@@ -87,13 +73,14 @@
def __init__(self, backend):
Pool.__init__(self, backend)
- def _get (self, p):
- """
- Download the Package p in
- """
- f = p['Filename']
- Download (self._server + f,
- self.local + f)
+ def _upgrade (self):
+ for p in self._plist:
+ self._dir.create(self._local + os.path.dirname(p['Filename']))
+ Download().get(self._server + p['Filename'], self._local + p['Filename'])
+ self._gotFiles.append(p['Filename'])
+
+ for d in Download().fetchers:
+ d.join()
class LocalPool (Pool):
"""
@@ -103,13 +90,8 @@
Pool.__init__(self, backend)
self._server = self._server.split ('file://')[1]
- def _get (self, p):
- """
- Link the Package p in the pool
- """
-
- f = p['Filename']
- os.link (self._server + f,
- self._local + f)
-
-
+ def _upgrade (self):
+ for p in self._plist:
+ self._dir.create(os.path.dirname(p['Filename']))
+ os.link (self._server + f, self._local + f)
+ self._gotFiles.append(p['Filename'])