44 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
			
		
		
	
	
			44 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Python
		
	
	
		
			Executable File
		
	
	
| # 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"""
 |