Class: Rage::Deferred::DeadTasks

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/rage/deferred/dead_tasks.rb

Overview

Provides access to deferred tasks that Rage no longer retries.

dead_tasks returns this collection.

Instance Method Summary collapse

Instance Method Details

#each {|dead_task| ... } ⇒ Enumerator, self

Yield each dead task from oldest to newest.

Without a block, the method returns a new Enumerator.

Yield Parameters:

Returns:

  • (Enumerator, self) —

    a new Enumerator without a block, or this collection with a block



21
22
23
24
25
26
27
28
29
# File 'lib/rage/deferred/dead_tasks.rb', line 21

def each
  return enum_for(__method__) unless block_given?

  @backend.each_dead_task do |record|
    yield Rage::Deferred::DeadTask.send(:new, record)
  end

  self
end

#find_by_id(id) ⇒ Rage::Deferred::DeadTask?

Return the dead task with the exact persisted ID.

The ID must be a String. The method does not convert other values to a String.

Parameters:

  • id (String) —

    the exact persisted task ID

Returns:

Raises:

  • (TypeError) —

    when the ID is not a String



38
39
40
41
42
43
# File 'lib/rage/deferred/dead_tasks.rb', line 38

def find_by_id(id)
  raise TypeError, "dead task id must be a String" unless id.is_a?(String)

  record = @backend.find_dead_task(id)
  Rage::Deferred::DeadTask.send(:new, record) if record
end