Move download management from frontends to rss_sqlite.py.
authorNeal H. Walfield <neal@walfield.org>
Sat, 23 Jul 2011 08:38:18 +0000 (10:38 +0200)
committerNeal H. Walfield <neal@gnu.org>
Thu, 28 Jul 2011 21:28:07 +0000 (23:28 +0200)
commit4b02f7be73c2ff0d831c273d6be416ccfe126a33
tree6cf9696af03fd423f7a04b98564476d09989676a
parent97602007973547aa3fd3fb684fe4961db8230b36
Move download management from frontends to rss_sqlite.py.

 - Move download logic to rss_sqlite.py:
  - Move thread management to jobmanager.py.
  - Queue jobs in rss_sqlite.py.
  - Manage per-feed DBus locks in rss_sqlite.py.
  - Get config settings in rss_sqlite.py on demand.

 - Make downloading more robust:
  - Only call non-thread-safe code (in particular, DBus and gconf
    functionality) from the main thread using mainthread.py.
  - Improve responsiveness of the frontend but yielding during CPU
    intense activities and only allowing a single slave to parse
    a feed at a time.
  - When downloads are canceled, do our best to quit cleanly and
    quickly.

 - Update frontends to use the new functionality.
  - Remove redundant code, in particular, download functionality.
  - Rework FeedingIt.py's download bar.
src/FeedingIt-Web.py
src/FeedingIt.py
src/config.py
src/httpprogresshandler.py [new file with mode: 0644]
src/jobmanager.py [new file with mode: 0644]
src/mainthread.py [new file with mode: 0644]
src/rss_sqlite.py
src/update_feeds.py
src/updatedbus.py