class TQ::Task
Attributes
task[R]
Public Class Methods
new(queue, task)
click to toggle source
# File lib/tq.rb, line 191 def initialize(queue, task) @queue = queue @task = task @clock = Time end
Public Instance Methods
clock!(_)
click to toggle source
# File lib/tq.rb, line 221 def clock!(_) @clock = _; return self end
expires()
click to toggle source
# File lib/tq.rb, line 201 def expires DateTime.rfc3339(self.task.schedule_time).to_time end
extend!(dur)
click to toggle source
# File lib/tq.rb, line 217 def extend!(dur) @queue.extend!(self.task, dur) end
finish!()
click to toggle source
# File lib/tq.rb, line 213 def finish! @queue.finish!(self.task) end
lease_expired?()
click to toggle source
# File lib/tq.rb, line 233 def lease_expired? self.expires < @clock.now end
lease_remaining()
click to toggle source
# File lib/tq.rb, line 229 def lease_remaining self.expires - @clock.now end
name()
click to toggle source
# File lib/tq.rb, line 197 def name self.task.name end
payload()
click to toggle source
# File lib/tq.rb, line 209 def payload decode self.task.pull_message.payload end
reset_clock!()
click to toggle source
# File lib/tq.rb, line 225 def reset_clock! @clock = Time; return self end
tag()
click to toggle source
# File lib/tq.rb, line 205 def tag self.task.tag end
Private Instance Methods
decode(str)
click to toggle source
# File lib/tq.rb, line 239 def decode(str) JSON.load(str) end