/opt/imh-python/lib/python3.9/site-packages/celery/app
NameSizeModeActions
__pycache__/-0755rm
amqp.py232360644editdlrm
annotations.py14450644editdlrm
autoretry.py25060644editdlrm
backends.py27460644editdlrm
base.py505840644editdlrm
builtins.py66730644editdlrm
control.py291710644editdlrm
defaults.py152660644editdlrm
events.py13260644editdlrm
log.py90670644editdlrm
registry.py20010644editdlrm
routes.py45270644editdlrm
task.py437940644editdlrm
trace.py275510644editdlrm
utils.py131600644editdlrm
__init__.py24300644editdlrm
Edit: /opt/imh-python/lib/python3.9/site-packages/celery/app/registry.py (2001B)
"""Registry of available tasks.""" import inspect from importlib import import_module from celery._state import get_current_app from celery.app.autoretry import add_autoretry_behaviour from celery.exceptions import InvalidTaskError, NotRegistered __all__ = ('TaskRegistry',) class TaskRegistry(dict): """Map of registered tasks.""" NotRegistered = NotRegistered def __missing__(self, key): raise self.NotRegistered(key) def register(self, task): """Register a task in the task registry. The task will be automatically instantiated if not already an instance. Name must be configured prior to registration. """ if task.name is None: raise InvalidTaskError( 'Task class {!r} must specify .name attribute'.format( type(task).__name__)) task = inspect.isclass(task) and task() or task add_autoretry_behaviour(task) self[task.name] = task def unregister(self, name): """Unregister task by name. Arguments: name (str): name of the task to unregister, or a :class:`celery.app.task.Task` with a valid `name` attribute. Raises: celery.exceptions.NotRegistered: if the task is not registered. """ try: self.pop(getattr(name, 'name', name)) except KeyError: raise self.NotRegistered(name) # -- these methods are irrelevant now and will be removed in 4.0 def regular(self): return self.filter_types('regular') def periodic(self): return self.filter_types('periodic') def filter_types(self, type): return {name: task for name, task in self.items() if getattr(task, 'type', 'regular') == type} def _unpickle_task(name): return get_current_app().tasks[name] def _unpickle_task_v2(name, module=None): if module: import_module(module) return get_current_app().tasks[name]