r315 - in branches/rewrite: . src

Otavio Salvador partial-mirror-devel@lists.alioth.debian.org
Sun, 14 Nov 2004 09:14:56 -0700


Author: otavio
Date: Sun Nov 14 09:14:56 2004
New Revision: 315

Modified:
   branches/rewrite/   (props changed)
   branches/rewrite/src/Backend.py
   branches/rewrite/src/debpartial-mirror.in
Log:
 r269@nurf:  otavio | 2004-11-14T16:15:25.167673Z
 Process the get_files. Need to add Pool stuff.


Modified: branches/rewrite/src/Backend.py
==============================================================================
--- branches/rewrite/src/Backend.py	(original)
+++ branches/rewrite/src/Backend.py	Sun Nov 14 09:14:56 2004
@@ -17,10 +17,14 @@
 # $Id: DirManagement.py 249 2004-09-25 23:32:39Z zufus $
 
 
+import apt_pkg
+from os.path import basename
+
 from Config import *
 from Dists import *
-from Pool import *
-import pdb
+from PackageList import *
+from Package import *
+#from Pool import *
 
 class Backend:
     """
@@ -37,11 +41,14 @@
         self._cfg = config
         self._name = name
 
+        self.__bin = PackageList()
+        self.__source = PackageList()
+
         if isinstance(self._cfg.getBackend(self._name), ConfigBackendMirror):
             self._dists = RemoteDists(self)
         elif isinstance(self._cfg.getBackend(self._name), ConfigBackendMerge):
             self._dists = LocalDists(self)
-        self._pool = Pool(self)
+        #self._pool = Pool(self)
 
     def __getitem__ (self, key):
         try:
@@ -53,7 +60,23 @@
 
     def update (self):
         self._dists.update()
-                
+
+    def upgrade (self):
+        for f in self._dists.get_index():
+            # Choose object type
+            if basename(f) == 'Packages':
+                pkg = Package
+                list = self.__bin
+            elif basename(f) == 'Sources':
+                pkg = SourcePackage
+                list = self.__source
+
+            parse = apt_pkg.ParseTagFile(open(f, "r"))
+            print "Processing", f
+            while parse.Step() == 1:
+                p = pkg(parse.Section)
+                list.add(p)
+            
     def remove (self):
         """ Remove backend """
         self._pool.remove()

Modified: branches/rewrite/src/debpartial-mirror.in
==============================================================================
--- branches/rewrite/src/debpartial-mirror.in	(original)
+++ branches/rewrite/src/debpartial-mirror.in	Sun Nov 14 09:14:56 2004
@@ -37,7 +37,7 @@
 
 version()
 try:
-    cnf = Config.Config("../etc/debpartial-mirror.conf")
+    cnf = Config("../etc/debpartial-mirror.conf")
 except InvalidOption, msg:
     print("Wrong option [%s] found on [%s] section."
           % (msg.option, msg.section))
@@ -54,4 +54,6 @@
 for b in cnf.getBackends():
     backends.append(Backend(b.section, cnf))
 for b in backends:
-    b.update()
+    #b.update()
+    b.upgrade()
+