Offload all downloading logic to updatefeed.py.
- Change Woodchuck initialization to only process upcalls if started
from updatefeed.
- Add org.marcoz.feedingit.UpdateProgress.
- In rss_sqlite.py, detect if we are running as updatefeed.py:
- If so:
- Perform downloads directly, and
- Make the appropriate progress calls.
- Otherwise:
- Don't update feeds directly, instead, make the appropriate dbus
calls to updatefeed.py (starting it as necessary).
- updatedbus.py:
- Remove get_lock and release_lock, which is no longer needed as
updating is now centralized.
- Add dbus methods Update and UpdateProgress.
- Make methods UpdateAll and StopUpdate abstract.
- Add function update_server_object to retrieve any UpdateServerObject
- Ensure that there is only a single instance of UpdateServerObject.
- update_feeds.py:
- Move system idle detection from FeedingIt.py to here.
- Add a '--daemon' option, which does not update all feeds on start.
- Implement Update, UpdateAll and StopUpdate
- Make update notifications as appropriate.
- Update locking mechanism: grab the bus name without queueing.
- FeedingIt.py:
- Adapt progress logic appropriately.
- Don't detect when the program is started only for an update (it
isn't anymore)
- FeedingIt:
- Start updatefeeds.py with the --daemon option.