summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuo Jinghua <sunmoon1997@gmail.com>2009-12-27 11:11:30 +0800
committerLuo Jinghua <sunmoon1997@gmail.com>2009-12-27 11:11:30 +0800
commit28d3a6557849713bbe067dfced19282c02574cfc (patch)
tree7d2a90e8e01365f6ffd972d6c9a43328721a90ed
parent8911ca11a8a8794f14c6dbf6928cbbad7f5b6a2d (diff)
totem: code cleanup
-rw-r--r--totem/plugin/ppstream.py82
1 files changed, 34 insertions, 48 deletions
diff --git a/totem/plugin/ppstream.py b/totem/plugin/ppstream.py
index 137decf..65768e5 100644
--- a/totem/plugin/ppstream.py
+++ b/totem/plugin/ppstream.py
@@ -487,59 +487,48 @@ class PPStream (totem.Plugin):
if force:
self.ppslist.reset()
- if self.ppslist.getClasses() == []:
- self.movie_class_path = ()
- self.subclass_index = 0
- self.categories_count += 1
- self.movies_count += 1
- self.clear_ui ()
- self.retrieveimage.cancel_tasks ()
+ if self.ppslist.getClasses() == 0:
+ return
- ### load special classes first
- self.load_special_classes ()
+ self.movie_class_path = ()
+ self.subclass_index = 0
+ self.categories_count += 1
+ self.movies_count += 1
+ self.clear_ui ()
+ self.retrieveimage.cancel_tasks ()
- ### download classes from pps.tv
- thread = ProcessThread (None,
- self.__fetch_classes,
- self.on_classes_fetched,
- self.categories_count)
- thread.start()
+ ### load special classes first
+ self.load_special_classes ()
- gobject.timeout_add (300,
- self.update_categories_progress,
- self.categories_count)
+ ### download classes from pps.tv
+ thread = ProcessThread (None,
+ self.__fetch_classes,
+ self.on_classes_fetched,
+ self.categories_count)
+ thread.start()
- def on_classes_fetched (self, res, count):
- if res:
- ### check if this is a canceled task
- if self.categories_count == count:
- self.parse_class (res)
- else:
- print "Couldn't load ppstream media list"
+ gobject.timeout_add (300,
+ self.update_categories_progress,
+ self.categories_count)
- def on_subclasses_fetched (self, res, *args):
- if not self.classes:
+ def on_classes_fetched (self, res, count):
+ if not res:
+ print "Couldn't load ppstream playlist"
return
- ### parse the xml
- self.parse_subclass (res)
-
- ### fill categories view
- self.fill_categories (self.classes[self.subclass_index].id)
- ### fetch next subclass
- self.fetch_next_subclass (True)
+ ### check if this is a canceled task
+ if self.categories_count == count:
+ self.parse_class (res)
- def threaded_parse_movies (self, res, class_path, page, count):
+ def __parse_movies (self, res, class_path, page, count):
subcls = self.get_movie_class (class_path)
- if not res:
- subcls.parsing_movies = False
- return None
- try:
- result = self.ppslist.parseMovieList(subcls, res, page)
- except Exception, e:
- print "Couldn't parse movie list:", class_path, e
- result = None
+ if res:
+ try:
+ result = self.ppslist.parseMovieList(subcls, res, page)
+ except Exception, e:
+ print "Couldn't parse movie list:", class_path, e
+ result = None
subcls.parsing_movies = False
return result
@@ -551,9 +540,6 @@ class PPStream (totem.Plugin):
### check if the server repeats the last page
subcls = self.get_movie_class (class_path)
- if not hasattr(subcls, 'parsing_movies'):
- subcls.parsing_movies = False
-
if res is None:
subcls.fetching_movies = False
return
@@ -562,14 +548,14 @@ class PPStream (totem.Plugin):
### Blocking the main thread is bad.
if res and len(res) > 1024 * 2:
subcls.parsing_movies = True
- process = ProcessThread (res, self.threaded_parse_movies,
+ process = ProcessThread (res, self.__parse_movies,
self.add_parsed_movies,
class_path, page, count)
process.start ()
self.update_progress_bar ()
return
- result = self.threaded_parse_movies (res, class_path, page, count)
+ result = self.__parse_movies (res, class_path, page, count)
self.add_parsed_movies (result, class_path, page, count)
def add_parsed_movies (self, result, class_path, page, count):