Class: Resque::DataStore::FailedQueueAccess

Inherits:
Object
  • Object
show all
Defined in:
lib/resque/data_store.rb

Instance Method Summary collapse

Constructor Details

#initialize(redis) ⇒ FailedQueueAccess

Returns a new instance of FailedQueueAccess.



169
170
171
# File 'lib/resque/data_store.rb', line 169

def initialize(redis)
  @redis = redis
end

Instance Method Details

#add_failed_queue(failed_queue_name) ⇒ Object



173
174
175
# File 'lib/resque/data_store.rb', line 173

def add_failed_queue(failed_queue_name)
  @redis.sadd(:failed_queues, failed_queue_name)
end

#clear_failed_queue(failed_queue_name = :failed) ⇒ Object



197
198
199
# File 'lib/resque/data_store.rb', line 197

def clear_failed_queue(failed_queue_name=:failed)
  @redis.del(failed_queue_name)
end

#failed_queue_names(find_queue_names_in_key = nil) ⇒ Object



185
186
187
188
189
190
191
# File 'lib/resque/data_store.rb', line 185

def failed_queue_names(find_queue_names_in_key=nil)
  if find_queue_names_in_key.nil?
    [:failed]
  else
    Array(@redis.smembers(find_queue_names_in_key))
  end
end

#num_failed(failed_queue_name = :failed) ⇒ Object



181
182
183
# File 'lib/resque/data_store.rb', line 181

def num_failed(failed_queue_name=:failed)
  @redis.llen(failed_queue_name).to_i
end

#push_to_failed_queue(data, failed_queue_name = :failed) ⇒ Object



193
194
195
# File 'lib/resque/data_store.rb', line 193

def push_to_failed_queue(data,failed_queue_name=:failed)
  @redis.rpush(failed_queue_name,data)
end

#remove_failed_queue(failed_queue_name = :failed) ⇒ Object



177
178
179
# File 'lib/resque/data_store.rb', line 177

def remove_failed_queue(failed_queue_name=:failed)
  @redis.del(failed_queue_name)
end

#remove_from_failed_queue(index_in_failed_queue, failed_queue_name = nil) ⇒ Object



205
206
207
208
209
210
# File 'lib/resque/data_store.rb', line 205

def remove_from_failed_queue(index_in_failed_queue,failed_queue_name=nil)
  failed_queue_name ||= :failed
  hopefully_unique_value_we_can_use_to_delete_job = ""
  @redis.lset(failed_queue_name, index_in_failed_queue, hopefully_unique_value_we_can_use_to_delete_job)
  @redis.lrem(failed_queue_name, 1,                     hopefully_unique_value_we_can_use_to_delete_job)
end

#update_item_in_failed_queue(index_in_failed_queue, new_item_data, failed_queue_name = :failed) ⇒ Object



201
202
203
# File 'lib/resque/data_store.rb', line 201

def update_item_in_failed_queue(index_in_failed_queue,new_item_data,failed_queue_name=:failed)
  @redis.lset(failed_queue_name, index_in_failed_queue, new_item_data)
end