summaryrefslogtreecommitdiffstats
path: root/module/plugins/hooks/DeleteFinished.py
diff options
context:
space:
mode:
authorGravatar lazlev <lazlev@yopmail.com> 2015-08-09 00:50:54 +0200
committerGravatar lazlev <lazlev@yopmail.com> 2015-08-09 00:50:54 +0200
commitb0ef3f1673e1930916604bb1264ca3a38414bc8d (patch)
treec97936e4d2a4cd6eb1072c65c8a08a7d18816b18 /module/plugins/hooks/DeleteFinished.py
parent[XFileSharingPro][XFileSharingProFolder] Added default __pattern__ (diff)
parentFix https://github.com/pyload/pyload/issues/1707 (diff)
downloadpyload-b0ef3f1673e1930916604bb1264ca3a38414bc8d.tar.xz
Merge pull request #1 from pyload/stable
sync with stable
Diffstat (limited to 'module/plugins/hooks/DeleteFinished.py')
-rw-r--r--module/plugins/hooks/DeleteFinished.py54
1 files changed, 28 insertions, 26 deletions
diff --git a/module/plugins/hooks/DeleteFinished.py b/module/plugins/hooks/DeleteFinished.py
index be17c3c0f..75a282808 100644
--- a/module/plugins/hooks/DeleteFinished.py
+++ b/module/plugins/hooks/DeleteFinished.py
@@ -1,13 +1,14 @@
# -*- coding: utf-8 -*-
from module.database import style
-from module.plugins.Hook import Hook
+from module.plugins.internal.Addon import Addon
-class DeleteFinished(Hook):
+class DeleteFinished(Addon):
__name__ = "DeleteFinished"
__type__ = "hook"
- __version__ = "1.12"
+ __version__ = "1.14"
+ __status__ = "testing"
__config__ = [("interval" , "int" , "Check interval in hours" , 72 ),
("deloffline", "bool", "Delete package with offline links", False)]
@@ -21,59 +22,60 @@ class DeleteFinished(Hook):
## overwritten methods ##
- def setup(self):
- self.info = {} #@TODO: Remove in 0.4.10
- # self.event_list = ["pluginConfigChanged"]
+ def init(self):
+ # self.event_map = {'pluginConfigChanged': "plugin_config_changed"}
self.interval = self.MIN_CHECK_INTERVAL
def periodical(self):
if not self.info['sleep']:
- deloffline = self.getConfig('deloffline')
- mode = '0,1,4' if deloffline else '0,4'
+ deloffline = self.get_config('deloffline')
+ mode = "0,1,4" if deloffline else "0,4"
msg = _('delete all finished packages in queue list (%s packages with offline links)')
- self.logInfo(msg % (_('including') if deloffline else _('excluding')))
- self.deleteFinished(mode)
+ self.log_info(msg % (_('including') if deloffline else _('excluding')))
+ self.delete_finished(mode)
self.info['sleep'] = True
- self.addEvent('packageFinished', self.wakeup)
+ self.add_event('package_finished', self.wakeup)
- # def pluginConfigChanged(self, plugin, name, value):
- # if name == "interval" and value != self.interval:
+ # def plugin_config_changed(self, plugin, name, value):
+ # if name == "interval" and value is not self.interval:
# self.interval = value * 3600
- # self.initPeriodical()
+ # self.init_periodical()
- def unload(self):
- self.manager.removeEvent('packageFinished', self.wakeup)
+ def deactivate(self):
+ self.manager.removeEvent('package_finished', self.wakeup)
- def coreReady(self):
+ def activate(self):
self.info['sleep'] = True
- # interval = self.getConfig('interval')
- # self.pluginConfigChanged(self.__name__, 'interval', interval)
- self.interval = max(self.MIN_CHECK_INTERVAL, self.getConfig('interval') * 60 * 60)
- self.addEvent('packageFinished', self.wakeup)
+ # interval = self.get_config('interval')
+ # self.plugin_config_changed(self.__name__, 'interval', interval)
+ self.interval = max(self.MIN_CHECK_INTERVAL, self.get_config('interval') * 60 * 60)
+ self.add_event('package_finished', self.wakeup)
## own methods ##
@style.queue
- def deleteFinished(self, mode):
+ def delete_finished(self, mode):
self.c.execute('DELETE FROM packages WHERE NOT EXISTS(SELECT 1 FROM links WHERE package=packages.id AND status NOT IN (%s))' % mode)
self.c.execute('DELETE FROM links WHERE NOT EXISTS(SELECT 1 FROM packages WHERE id=links.package)')
def wakeup(self, pypack):
- self.manager.removeEvent('packageFinished', self.wakeup)
+ self.manager.removeEvent('package_finished', self.wakeup)
self.info['sleep'] = False
## event managing ##
- def addEvent(self, event, func):
- """Adds an event listener for event name"""
+ def add_event(self, event, func):
+ """
+ Adds an event listener for event name
+ """
if event in self.manager.events:
if func in self.manager.events[event]:
- self.logDebug("Function already registered", func)
+ self.log_debug("Function already registered", func)
else:
self.manager.events[event].append(func)
else: