#plugs.load(plugin) try: handler = self.handlers[taskname] except KeyError: logging.debug('tasks - no handler for %s found' % taskname) return logging.warn("dispatching task %s - %s" % (taskname, str(handler))) return handler(*args, **kwargs) ## global task manager taskmanager = TaskManager() def handle_task(bot, event): try: """ this is where the task gets dispatched. """ path = self.request.path if path.endswith('/'): path = path[:-1] taskname = path.split('/')[-1].strip() logging.warn("using taskname: %s" % taskname) inputdict = {} for name, value in self.request.environ.iteritems(): if not 'wsgi' in name: inputdict[name] = value apirunner.put(5, taskname, taskmanager.dispatch, taskname, inputdict, self.request, self.response) except Exception as ex: handle_exception() self.response.set_status(500) get_hooks.register("task", handle_task)
def init(): get_hooks.register("/api/hubbub", hubbub_get) post_hooks.register("/api/hubbub", hubbub_post)