Class Aws::Sqs
In: lib/sqs/sqs.rb
Parent: Object

Aws::Sqs — RightScale‘s Amazon SQS interface, API version 2008-01-01 and later. The Aws::Sqs class provides a complete interface to the second generation of Amazon‘s Simple Queue Service. For explanations of the semantics of each call, please refer to Amazon‘s documentation at developer.amazonwebservices.com/connect/kbcategory.jspa?categoryID=31

Aws::Sqs is built atop Aws::SqsInterface, a lower-level procedural API that may be appropriate for certain programs.

Error handling: all operations raise an Aws::AwsError in case of problems. Note that transient errors are automatically retried.

 sqs    = Aws::Sqs.new(aws_access_key_id, aws_secret_access_key)
 queue1 = sqs.queue('my_awesome_queue')
  ...
 queue2 = Aws::Sqs::Queue.create(sqs, 'my_cool_queue', true)
 puts queue2.size
  ...
 message1 = queue2.receive
 message1.visibility = 0
 puts message1
  ...
 queue2.clear(true)
 queue2.send_message('Ola-la!')
 message2 = queue2.pop
  ...

NB: Second-generation SQS has eliminated the entire access grant mechanism present in Gen 1.

Params is a hash:

   {:server       => 'queue.amazonaws.com' # Amazon service host: 'queue.amazonaws.com' (default)
    :port         => 443                   # Amazon service port: 80 or 443 (default)
    :multi_thread => true|false            # Multi-threaded (connection per each thread): true or false (default)
    :signature_version => '0'              # The signature version : '0' or '1'(default)
    :logger       => Logger Object}        # Logger instance: logs to STDOUT if omitted }

Methods

close_connection   new   queue   queues  

Classes and Modules

Class Aws::Sqs::Message
Class Aws::Sqs::Queue

Attributes

interface  [R] 

Public Class methods

Public Instance methods

Returns Queue instance by queue name. If the queue does not exist at Amazon SQS and create is true, the method creates it.

 Aws::Sqs.queue('my_awesome_queue') #=> #<Aws::Sqs::Queue:0xb7b626e4 ... >

Retrieves a list of queues. Returns an array of Queue instances.

 Aws::Sqs.queues #=> array of queues

[Validate]