From 5b40d83c0c7ca4caf9cf62d6b5c93cbcbbc095d1 Mon Sep 17 00:00:00 2001 From: git_admin Date: Mon, 27 Apr 2026 08:46:08 +0000 Subject: [PATCH] Tower: upload queue_job 16.0.2.12.0 (via marketplace) --- addons/queue_job/exception.py | 43 +++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 addons/queue_job/exception.py diff --git a/addons/queue_job/exception.py b/addons/queue_job/exception.py new file mode 100644 index 0000000..093344e --- /dev/null +++ b/addons/queue_job/exception.py @@ -0,0 +1,43 @@ +# Copyright 2012-2016 Camptocamp +# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl.html) + + +class BaseQueueJobError(Exception): + """Base queue job error""" + + +class JobError(BaseQueueJobError): + """A job had an error""" + + +class NoSuchJobError(JobError): + """The job does not exist.""" + + +class FailedJobError(JobError): + """A job had an error having to be resolved.""" + + +class RetryableJobError(JobError): + """A job had an error but can be retried. + + The job will be retried after the given number of seconds. If seconds is + empty, it will be retried according to the ``retry_pattern`` of the job or + by :const:`odoo.addons.queue_job.job.RETRY_INTERVAL` if nothing is defined. + + If ``ignore_retry`` is True, the retry counter will not be increased. + """ + + def __init__(self, msg, seconds=None, ignore_retry=False): + super().__init__(msg) + self.seconds = seconds + self.ignore_retry = ignore_retry + + +# TODO: remove support of NothingToDo: too dangerous +class NothingToDoJob(JobError): + """The Job has nothing to do.""" + + +class ChannelNotFound(BaseQueueJobError): + """A channel could not be found"""