Provides an expressive, object-oriented interface to Amazon SQS.
You can setup default credentials for all AWS services via AWS.config:
AWS.config( :access_key_id => 'YOUR_ACCESS_KEY_ID', :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
Or you can set them directly on the SQS interface:
sqs = AWS::SQS.new( :access_key_id => 'YOUR_ACCESS_KEY_ID', :secret_access_key => 'YOUR_SECRET_ACCESS_KEY')
Amazon SQS is a distributed queue system that enables web service applications to quickly and reliably queue messages that one component in the application generates to be consumed by another component. A queue is a temporary repository for messages that are awaiting processing.
You can access your queues using the {queues} collection. For example, to create a queue, use {AWS::SQS::QueueCollection#create}:
queue = sqs.queues.create("myqueue")
Or to find out what queues you have in your account:
pp sqs.queues.collect(&:url)
See the {Queue} class for more information on how to send and receive messages.
# File spec/aws/sqs/queue_spec.rb, line 363 def do_poll(*args) catch (:done) do queue.poll(*args) do |msg| throw :done if response_lists.empty? end end end
@return [QueueCollection] The collection of all {Queue}
objects in your account.
# File lib/aws/sqs.rb, line 73 def queues QueueCollection.new(:config => config) end
# File spec/aws/sqs/queue_spec.rb, line 274 def receive_one(*args) catch(:got_msg) do queue.poll(*args) { |msg| throw :got_msg } end end
# File spec/aws/sqs/queue_collection_spec.rb, line 37 def stub_two_members(resp) resp.stub(:queue_urls).and_return(["one", "two"]) end