Skip to content

Commit

Permalink
Add manager.shutdown event.
Browse files Browse the repository at this point in the history
Change deluge plugin twisted reactor stop to happen at manager.shutdown, instead of process_end. May fix problems with ReactorNotRestartable error when feeds are aborted and in webui. refs Flexget#1175

git-svn-id: http://svn.flexget.com/trunk@2681 3942dd89-8c5d-46d7-aeed-044bccf3e60c
  • Loading branch information
gazpachoking committed Jan 19, 2012
1 parent 91e9dfe commit 23cd873
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 8 deletions.
5 changes: 5 additions & 0 deletions flexget/manager.py
Expand Up @@ -75,6 +75,10 @@ class Manager(object):
* manager.execute.completed
After manager has executed all Feeds
* manager.shutdown
When the manager is exiting
"""

unit_test = False
Expand Down Expand Up @@ -598,6 +602,7 @@ def db_cleanup(self):
def shutdown(self):
""" Application is being exited
"""
fire_event('manager.shutdown', self)
if not self.unit_test: # don't scroll "nosetests" summary results when logging is enabled
log.debug('Shutting down')
self.engine.dispose()
Expand Down
15 changes: 7 additions & 8 deletions flexget/plugins/plugin_deluge.py
Expand Up @@ -4,6 +4,7 @@
import base64
import re
import sys
from flexget.event import event
from flexget.entry import Entry
from flexget.utils.tools import make_valid_path
from flexget.plugin import register_plugin, PluginError, priority, get_plugin_by_name, DependencyError
Expand Down Expand Up @@ -181,14 +182,12 @@ def connect(self, feed, config):
raise result
return result

def on_process_end(self, feed, config):
"""Shut down the twisted reactor after all feeds have run."""
if not reactor._stopped:
log.debug('Stopping twisted reactor.')
reactor.stop()

def on_feed_abort(self, feed, config):
self.on_process_end(feed, config)
@event('manager.shutdown')
def stop_reactor(manager):
"""Shut down the twisted reactor after all feeds have run."""
if not reactor._stopped:
log.debug('Stopping twisted reactor.')
reactor.stop()

except ImportError:
pass
Expand Down

0 comments on commit 23cd873

Please sign in to comment.