r237 - branches/rewrite/src

Otavio Salvador partial-mirror-devel@lists.alioth.debian.org
Tue, 21 Sep 2004 21:03:30 -0600


Author: otavio
Date: Tue Sep 21 21:03:30 2004
New Revision: 237

Modified:
   branches/rewrite/src/Download.py   (contents, props changed)
Log:
Changed to use DisplayInfo draft class.

Modified: branches/rewrite/src/Download.py
==============================================================================
--- branches/rewrite/src/Download.py	(original)
+++ branches/rewrite/src/Download.py	Tue Sep 21 21:03:30 2004
@@ -21,17 +21,23 @@
 
 from Queue import Queue
 
+import DisplayInfo
+
 # Need to be removed when test code is removed.
 import sys, string
 import pdb
 
 class DownloadQueue(Queue):
-    """ Implemente a Queue without duplicated items. """
+    """ Implement a Queue without duplicated items. """
     def _put(self, item):
         if item not in self.queue:
             self.queue.append(item)
 
 class DownloadThread(threading.Thread):
+    def __init__(self):
+        self.DisplayInfo = DisplayInfo.ProgressBar()
+        threading.Thread.__init__(self)
+        
     def run(self):
         while 1:
             url, filename = Download.queue.get()
@@ -48,6 +54,8 @@
             curl.setopt(pycurl.TIMEOUT, 300)
 
             self.url = url
+
+            self.DisplayInfo.text = self.url
             
             try:
                 curl.perform()
@@ -61,12 +69,10 @@
             sys.stdout.flush()
 
     def progress(self, download_t, download_d, upload_t, upload_d):
-        self.download_total = download_t
-        self.download_current = download_d
-        if not download_t:
-            return
+        self.DisplayInfo.max = download_t
+        self.DisplayInfo.current = download_d
+        self.DisplayInfo.refresh()
         
-        print "[ %.2f%% %s ]" % ((download_d/download_t)*100, self.url)
 
 class Download:
     """ Download queue """
@@ -91,6 +97,9 @@
     if not url or url[0] == "#":
         continue
     filename = "doc_%d" % (fileno)
+    d = DisplayInfo.DisplayInfo()
     Download(url, filename)
+    for i in Download.fetchers:
+        d.add(i.DisplayInfo)
     fileno = fileno + 1
 del fileno