[gpodder] Re: gPodder 3.1.0 "The Discipline of D.E." released

  • From: Joseph Wickremasinghe <jnwickremasinghe@xxxxxxxxx>
  • To: gpodder@xxxxxxxxxxxxx
  • Date: Sun, 6 May 2012 22:11:22 -0700 (PDT)

Hey Thomas,

Thanks for your response. I've been working on the 'Downloads' tab issue and 
wanted to share my progress.

I've updated the code to create a 'SyncTask' class which is derived from 
DownloadTask. When the synchronization process is started, a SyncTask object is 
created, registered with the download status model, and the download list is 
set to update. An entry is created in the downloads tab corresponding to the 
synchronization process, and the progress bar is updated as the process 
completes. Once the sync is finished, the entry is removed.

So in a 'proof of concept' way, it works. However, since the DownloadTask is 
required to have an episode object, it's a bit messy. I use the first episode 
in the episode list, and hence the entry created in the Downloads tab uses that 
episode name and details. I considered creating a 'dummy' episode with details 
that might make more sense for the sync process, but it seems that the better 
approach would be to rework the object model to follow a 'tasks -->downloads' 
and 'tasks -->synchronization' structure (i.e. with a base 'Task' class, and 
'Download' and 'Synchronize' derived from it), which is beyond my current 
abilities :)

Or, (I just realized) we could have each episode being synchronized showing up 
as its own entry in the Downloads tab (rather than one entry for the sync 
process as whole), which might solve some problems, but might be a excessively 
large number of rows....?

What are your priorities with regards to the 'Progress' tab and also rewriting 
this an extension? Which order should I work on them?



Other related posts: