Class: Cliaws::Sqs
- Inherits:
-
Object
- Object
- Cliaws::Sqs
- Defined in:
- lib/cliaws/sqs.rb
Instance Method Summary collapse
-
#create(qname) ⇒ Object
Creates a queue.
-
#delete(qname, force = false) ⇒ Object
Deletes a queue.
-
#fetch(qname, size) ⇒ Object
Fetches a number of messages.
-
#info(qname) ⇒ Object
Retrieves information about a queue.
-
#initialize(access_key_id, secret_access_key) ⇒ Sqs
constructor
A new instance of Sqs.
-
#list(prefix = nil) ⇒ Object
Lists the created queues.
-
#pop(qname) ⇒ Object
Gets and deletes message.
-
#push(qname, data) ⇒ Object
Adds a message in the queue.
-
#receive(qname) ⇒ Object
Gets a message from the queue, but doesn’t delete it.
-
#size(qname) ⇒ Object
Returns the size of the queue.
Constructor Details
#initialize(access_key_id, secret_access_key) ⇒ Sqs
Returns a new instance of Sqs.
5 6 7 |
# File 'lib/cliaws/sqs.rb', line 5 def initialize(access_key_id, secret_access_key) @sqs = RightAws::SqsGen2.new(access_key_id, secret_access_key, :logger => Logger.new("/dev/null")) end |
Instance Method Details
#create(qname) ⇒ Object
Creates a queue
40 41 42 |
# File 'lib/cliaws/sqs.rb', line 40 def create(qname) q(qname, true) end |
#delete(qname, force = false) ⇒ Object
Deletes a queue. force
must be true to delete a queue with pending messages.
45 46 47 |
# File 'lib/cliaws/sqs.rb', line 45 def delete(qname, force=false) q(qname).delete(force) end |
#fetch(qname, size) ⇒ Object
Fetches a number of messages.
25 26 27 |
# File 'lib/cliaws/sqs.rb', line 25 def fetch(qname, size) q(qname).(size) end |
#info(qname) ⇒ Object
Retrieves information about a queue
50 51 52 53 |
# File 'lib/cliaws/sqs.rb', line 50 def info(qname) queue = q(qname) { :visibility_timeout => queue.visibility, :size => queue.size } end |
#list(prefix = nil) ⇒ Object
Lists the created queues.
35 36 37 |
# File 'lib/cliaws/sqs.rb', line 35 def list(prefix=nil) @sqs.queues(prefix) end |
#pop(qname) ⇒ Object
Gets and deletes message.
20 21 22 |
# File 'lib/cliaws/sqs.rb', line 20 def pop(qname) q(qname).pop end |
#push(qname, data) ⇒ Object
Adds a message in the queue.
15 16 17 |
# File 'lib/cliaws/sqs.rb', line 15 def push(qname, data) q(qname).push(data) end |
#receive(qname) ⇒ Object
Gets a message from the queue, but doesn’t delete it.
10 11 12 |
# File 'lib/cliaws/sqs.rb', line 10 def receive(qname) q(qname).receive end |
#size(qname) ⇒ Object
Returns the size of the queue.
30 31 32 |
# File 'lib/cliaws/sqs.rb', line 30 def size(qname) q(qname).size end |