Module: Backburner::Queue::ClassMethods

Defined in:
lib/backburner/queue.rb

Instance Method Summary collapse

Instance Method Details

#queue(name = nil) ⇒ Object

Returns or assigns queue name for this job.

Examples:

queue "some.task.name"
@klass.queue # => "some.task.name"


21
22
23
24
25
26
27
# File 'lib/backburner/queue.rb', line 21

def queue(name=nil)
  if name
    @queue_name = name
  else # accessor
    (@queue_name.is_a?(Proc) ? @queue_name.call(self) : @queue_name) || Backburner.configuration.primary_queue
  end
end

#queue_garbage_limit(limit = nil) ⇒ Object

Returns or assigns queue jobs garbage limit (only ThreadsOnFork Worker)

Examples:

queue_garbage_limit 1000
@klass.queue_garbage_limit # => 1000


77
78
79
80
81
82
83
# File 'lib/backburner/queue.rb', line 77

def queue_garbage_limit(limit=nil)
  if limit
    @queue_garbage_limit = limit
  else #accessor
    @queue_garbage_limit
  end
end

#queue_jobs_limit(limit = nil) ⇒ Object

Returns or assigns queue parallel active jobs limit (only ThreadsOnFork and Threading workers)

Examples:

queue_jobs_limit 5
@klass.queue_jobs_limit # => 5


63
64
65
66
67
68
69
# File 'lib/backburner/queue.rb', line 63

def queue_jobs_limit(limit=nil)
  if limit
    @queue_jobs_limit = limit
  else #accessor
    @queue_jobs_limit
  end
end

#queue_priority(pri = nil) ⇒ Object

Returns or assigns queue priority for this job

Examples:

queue_priority 120
@klass.queue_priority # => 120


35
36
37
38
39
40
41
# File 'lib/backburner/queue.rb', line 35

def queue_priority(pri=nil)
  if pri
    @queue_priority = pri
  else # accessor
    @queue_priority
  end
end

#queue_respond_timeout(ttr = nil) ⇒ Object

Returns or assigns queue respond_timeout for this job

Examples:

queue_respond_timeout 120
@klass.queue_respond_timeout # => 120


49
50
51
52
53
54
55
# File 'lib/backburner/queue.rb', line 49

def queue_respond_timeout(ttr=nil)
  if ttr
    @queue_respond_timeout = ttr
  else # accessor
    @queue_respond_timeout
  end
end

#queue_retry_limit(limit = nil) ⇒ Object

Returns or assigns queue retry limit (only ThreadsOnFork worker)

Examples:

queue_retry_limit 6
@klass.queue_retry_limit # => 6


91
92
93
94
95
96
97
# File 'lib/backburner/queue.rb', line 91

def queue_retry_limit(limit=nil)
  if limit
    @queue_retry_limit = limit
  else #accessor
    @queue_retry_limit
  end
end