You are viewing documentation for version 1 of the AWS SDK for Ruby. Version 2 documentation can be found here.

Class: AWS::SQS

Inherits:
Object
  • Object
show all
Includes:
Core::ServiceInterface
Defined in:
lib/aws/sqs.rb,
lib/aws/sqs/queue.rb,
lib/aws/sqs/client.rb,
lib/aws/sqs/policy.rb,
lib/aws/sqs/errors.rb,
lib/aws/sqs/received_message.rb,
lib/aws/sqs/queue_collection.rb,
lib/aws/sqs/received_sns_message.rb

Overview

Provides an expressive, object-oriented interface to Amazon SQS.

Credentials

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')

Queues and Messages

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 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.

Defined Under Namespace

Modules: Errors Classes: Client, Policy, Queue, QueueCollection, ReceivedMessage, ReceivedSNSMessage

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::ServiceInterface

included, #initialize, #inspect

Instance Attribute Details

#clientClient (readonly)

Returns the low-level SQS client object

Returns:

  • (Client)

    the low-level SQS client object



58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
# File 'lib/aws/sqs.rb', line 58

class SQS

  autoload :Client, 'aws/sqs/client'
  autoload :Errors, 'aws/sqs/errors'
  autoload :Queue, 'aws/sqs/queue'
  autoload :QueueCollection, 'aws/sqs/queue_collection'
  autoload :Policy, 'aws/sqs/policy'
  autoload :ReceivedMessage, 'aws/sqs/received_message'
  autoload :ReceivedSNSMessage, 'aws/sqs/received_sns_message'

  include Core::ServiceInterface

  endpoint_prefix 'sqs'

  # @return [QueueCollection] The collection of all {Queue}
  #   objects in your account.
  def queues
    QueueCollection.new(:config => config)
  end

end

Instance Method Details

#queuesQueueCollection

Returns The collection of all Queue objects in your account.

Returns:



74
75
76
# File 'lib/aws/sqs.rb', line 74

def queues
  QueueCollection.new(:config => config)
end