class FakeSQS::Queues
Attributes
database[R]
queue_factory[R]
Public Class Methods
new(options = {})
click to toggle source
# File lib/fake_sqs/queues.rb, line 9 def initialize(options = {}) @queue_factory = options.fetch(:queue_factory) @database = options.fetch(:database) @database.load end
Public Instance Methods
create(name, options = {})
click to toggle source
# File lib/fake_sqs/queues.rb, line 15 def create(name, options = {}) return database[name] if database[name] queue = queue_factory.new(options) database[name] = queue end
delete(name, options = {})
click to toggle source
# File lib/fake_sqs/queues.rb, line 21 def delete(name, options = {}) if database[name] database.delete(name) else fail NonExistentQueue, name end end
expire()
click to toggle source
# File lib/fake_sqs/queues.rb, line 65 def expire transaction do database.each { |name, queue| queue.expire } end end
get(name, options = {})
click to toggle source
# File lib/fake_sqs/queues.rb, line 37 def get(name, options = {}) if (db = database[name]) db else fail NonExistentQueue, name end end
list(options = {})
click to toggle source
# File lib/fake_sqs/queues.rb, line 29 def list(options = {}) if (prefix = options["QueueNamePrefix"]) database.select { |name, queue| name.start_with?(prefix) }.values else database.values end end
reset()
click to toggle source
# File lib/fake_sqs/queues.rb, line 55 def reset database.reset end
save(queue)
click to toggle source
# File lib/fake_sqs/queues.rb, line 51 def save(queue) database[queue.name] = queue end
timeout_messages!()
click to toggle source
# File lib/fake_sqs/queues.rb, line 59 def timeout_messages! transaction do database.each { |name,queue| queue.timeout_messages! } end end
transaction() { || ... }
click to toggle source
# File lib/fake_sqs/queues.rb, line 45 def transaction database.transaction do yield end end