summaryrefslogtreecommitdiffstats
path: root/pyload/plugins/base/Hook.py
diff options
context:
space:
mode:
Diffstat (limited to 'pyload/plugins/base/Hook.py')
-rw-r--r--pyload/plugins/base/Hook.py30
1 files changed, 23 insertions, 7 deletions
diff --git a/pyload/plugins/base/Hook.py b/pyload/plugins/base/Hook.py
index 718802ad8..5cd528b7e 100644
--- a/pyload/plugins/base/Hook.py
+++ b/pyload/plugins/base/Hook.py
@@ -24,15 +24,16 @@ class Hook(Base):
"""
Base class for hook plugins.
"""
- __name__ = "Hook"
- __type__ = "hook"
- __version__ = "0.2"
+ __name__ = "Hook"
+ __type__ = "hook"
+ __version__ = "0.03"
- __config__ = [("name", "type", "desc", "default")]
+ __config__ = [] #: [("name", "type", "desc", "default")]
__description__ = """Interface for hook"""
- __authors__ = [("mkaay", "mkaay@mkaay.de"),
- ("RaNaN", "RaNaN@pyload.org")]
+ __license__ = "GPLv3"
+ __authors__ = [("mkaay", "mkaay@mkaay.de"),
+ ("RaNaN", "RaNaN@pyload.org")]
#: automatically register event listeners for functions, attribute will be deleted dont use it yourself
@@ -50,7 +51,7 @@ class Hook(Base):
Base.__init__(self, core)
#: Provide information in dict here, usable by API `getInfo`
- self.info = None
+ self.info = {}
#: Callback of periodical job task, used by AddonManager
self.cb = None
@@ -84,6 +85,7 @@ class Hook(Base):
if self.interval >=1:
self.cb = self.core.scheduler.addJob(0, self._periodical, threaded=False)
+
def _periodical(self):
try:
if self.isActivated(): self.periodical()
@@ -98,14 +100,17 @@ class Hook(Base):
def __repr__(self):
return "<Hook %s>" % self.__name__
+
def setup(self):
""" more init stuff if needed """
pass
+
def unload(self):
""" called when hook was deactivated """
pass
+
def isActivated(self):
""" checks if hook is activated"""
return self.config.getPlugin(self.__name__, "activated")
@@ -115,36 +120,47 @@ class Hook(Base):
def coreReady(self):
pass
+
def coreExiting(self):
pass
+
def downloadPreparing(self, pyfile):
pass
+
def downloadFinished(self, pyfile):
pass
+
def downloadFailed(self, pyfile):
pass
+
def packageFinished(self, pypack):
pass
+
def beforeReconnecting(self, ip):
pass
+
def afterReconnecting(self, ip):
pass
+
def periodical(self):
pass
+
def newCaptchaTask(self, task):
""" new captcha task for the plugin, it MUST set the handler and timeout or will be ignored """
pass
+
def captchaCorrect(self, task):
pass
+
def captchaInvalid(self, task):
pass