Class: Tasker::Orchestration::TaskFinalizer::ReenqueueManager
- Inherits:
-
Object
- Object
- Tasker::Orchestration::TaskFinalizer::ReenqueueManager
- Defined in:
- lib/tasker/orchestration/task_finalizer.rb
Overview
Service class to manage task reenqueuing Reduces complexity by organizing reenqueue logic
Class Method Summary collapse
-
.reenqueue_with_context(task, context, reason) ⇒ Object
Re-enqueue task with context intelligence.
Class Method Details
.reenqueue_with_context(task, context, reason) ⇒ Object
Re-enqueue task with context intelligence
414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 |
# File 'lib/tasker/orchestration/task_finalizer.rb', line 414 def reenqueue_with_context(task, context, reason) delay_seconds = DelayCalculator.calculate_reenqueue_delay(context) reason ||= ReasonDeterminer.determine_reenqueue_reason(context) task_reenqueuer = Tasker::Orchestration::TaskReenqueuer.new if delay_seconds.positive? task_reenqueuer.reenqueue_task_delayed( task, delay_seconds: delay_seconds, reason: reason ) else task_reenqueuer.reenqueue_task(task, reason: reason) end Rails.logger.info("TaskFinalizer: Task #{task.task_id} re-enqueued - #{reason} (delay: #{delay_seconds}s, ready_steps: #{context&.ready_steps})") end |