-
Notifications
You must be signed in to change notification settings - Fork 1
/
exception.py
48 lines (29 loc) · 1.29 KB
/
exception.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# -*- coding: utf-8 -*-
# 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 NotReadableJobError(JobError):
""" The job cannot be read from the storage. """
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(RetryableJobError, self).__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 """