make getting coverart asyncron
authorRico Schulte <ricoschulte@users.schwerkraft.elitedvb.net>
Sun, 8 Apr 2007 15:07:54 +0000 (15:07 +0000)
committerRico Schulte <ricoschulte@users.schwerkraft.elitedvb.net>
Sun, 8 Apr 2007 15:07:54 +0000 (15:07 +0000)
lastfm/src/plugin.py

index 2040aed..699c633 100755 (executable)
@@ -21,7 +21,7 @@ from Plugins.Plugin import PluginDescriptor
 from StreamPlayer import StreamPlayer\r
 from LastFMConfig import LastFMConfigScreen\r
 from LastFM import LastFM\r
-\r
+import httpclient\r
 import os\r
 import urllib\r
 ###############################################################################        \r
@@ -402,19 +402,15 @@ class ImageConverter:
     def convert(self,sourceURL):\r
         if self.lastURL != sourceURL:\r
             extension = sourceURL.split(".")[-1]\r
-            tmpfile = self.targetfile+"."+extension\r
-            \r
-            fpurl = urllib.urlopen(sourceURL)\r
-            raw = fpurl.read()\r
-            fpurl.close()\r
-            \r
-            fp = open(tmpfile,"w")\r
-            fp.write(raw)\r
-            fp.close()\r
-            \r
-            self.currPic = loadPic(tmpfile, 116, 116, 0,0, 0,1)\r
-            \r
-            os.remove(tmpfile)\r
-            \r
+            self.tmpfile = self.targetfile+"."+extension\r
+            host = sourceURL.split("/")[2]\r
+            path = "/"+"/".join(sourceURL.split("/")[3:])\r
+            print host,path\r
+            httpclient.getFile(self.tmpfile,host,80,path,callback=self.onImageLoaded)\r
+            self.lastURL = sourceURL\r
+\r
+    def onImageLoaded(self):\r
+            self.currPic = loadPic(self.tmpfile, 116, 116, 0,0, 0,1)\r
+            os.remove(self.tmpfile)\r
             self.callBack(pixmap=self.currPic)\r
-            self.lastURL = sourceURL
\ No newline at end of file
+            
\ No newline at end of file