Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 32 additions & 1 deletion edi_queue_oca/models/edi_exchange_record.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,16 @@ def _register_hook(self):
return super()._register_hook()

def action_exchange_send_job_options(self):
return {"priority": 0}
return {"priority": 0, "on_fail_method": self._send_job_failed_hook}

def action_exchange_receive_job_options(self):
return {"on_fail_method": self._receive_job_failed_hook}

def action_exchange_process_job_options(self):
return {"on_fail_method": self._process_job_failed_hook}

def action_exchange_generate_job_options(self):
return {"on_fail_method": self._generate_job_failed_hook}

def _job_delay_params(self):
params = {}
Expand Down Expand Up @@ -102,3 +111,25 @@ def action_exchange_generate_send_chained(self):
# Raise prio to max to send the record out as fast as possible.
job1.on_done(self.delayable(priority=0).action_exchange_send())
job1.delay()

def _generate_job_failed_hook(self, **kw):

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

pls prefix all methods _job_*

return self._job_failed_hook("validate_error", kw=kw)

def _send_job_failed_hook(self, **kw):
return self._job_failed_hook("output_error_on_send", kw=kw)

def _receive_job_failed_hook(self, **kw):
return self._job_failed_hook("input_receive_error", kw=kw)

def _process_job_failed_hook(self, **kw):
return self._job_failed_hook("input_processed_error", kw=kw)

def _job_failed_hook(self, failed_state, **kw):
self.ensure_one()
self.write(
{
"edi_exchange_state": failed_state,
"exchange_error": ": ".join(kw["exc_name"], kw["exc_message"]),
"exchange_error_traceback": kw["exc_info"],
}
)
1 change: 1 addition & 0 deletions test-requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
odoo-addon-queue_job @ git+https://github.com/OCA/queue.git@refs/pull/955/head#subdirectory=queue_job
Loading