Class: Sidekiq::SortedEntry
- Inherits:
-
Job
- Object
- Job
- Sidekiq::SortedEntry
show all
- Defined in:
- lib/sidekiq/api.rb
Instance Attribute Summary collapse
Attributes inherited from Job
#item
Instance Method Summary
collapse
Methods inherited from Job
#[], #args, #jid, #klass, #queue
Constructor Details
#initialize(parent, score, item) ⇒ SortedEntry
Returns a new instance of SortedEntry.
210
211
212
213
214
|
# File 'lib/sidekiq/api.rb', line 210
def initialize(parent, score, item)
super(item)
@score = score
@parent = parent
end
|
Instance Attribute Details
#score ⇒ Object
Returns the value of attribute score.
208
209
210
|
# File 'lib/sidekiq/api.rb', line 208
def score
@score
end
|
Instance Method Details
#at ⇒ Object
216
217
218
|
# File 'lib/sidekiq/api.rb', line 216
def at
Time.at(score)
end
|
#delete ⇒ Object
220
221
222
|
# File 'lib/sidekiq/api.rb', line 220
def delete
@parent.delete(score, jid)
end
|
#reschedule(at) ⇒ Object
224
225
226
227
|
# File 'lib/sidekiq/api.rb', line 224
def reschedule(at)
@parent.delete(score, jid)
@parent.schedule(at, item)
end
|
#retry ⇒ Object
229
230
231
232
233
234
235
236
237
238
239
240
|
# File 'lib/sidekiq/api.rb', line 229
def retry
raise "Retry not available on jobs not in the Retry queue." unless item["failed_at"]
Sidekiq.redis do |conn|
results = conn.zrangebyscore('retry', score, score)
conn.zremrangebyscore('retry', score, score)
results.map do |message|
msg = Sidekiq.load_json(message)
msg['retry_count'] = msg['retry_count'] - 1
conn.lpush("queue:#{msg['queue']}", Sidekiq.dump_json(msg))
end
end
end
|