diff --git a/devsupApp/src/devsup/hooks.py b/devsupApp/src/devsup/hooks.py index 4e49ac3..0cc8abb 100644 --- a/devsupApp/src/devsup/hooks.py +++ b/devsupApp/src/devsup/hooks.py @@ -1,6 +1,7 @@ from __future__ import print_function import traceback +from functools import wraps from collections import defaultdict try: @@ -11,6 +12,7 @@ except ImportError: __all__ = [ "hooknames", "addHook", + "initHook", "debugHooks", ] @@ -38,6 +40,18 @@ def addHook(state, func): _hooktable[sid].append(func) +def initHook(state): + """Decorator for initHook functions + + @initHook("AfterIocRunning") + def myfn(): + # do stuff + """ + def _add(fn): + addHook(state, fn) + return fn + return _add + def debugHooks(): """Install debugging print to hooks """