Class: SimpleMessaging::MessageQueue::SQS
Instance Attribute Summary collapse
Instance Method Summary
collapse
driver_name, driver_name=, instance, unregister_queue
Constructor Details
#initialize(name) ⇒ SQS
Returns a new instance of SQS.
9
10
11
12
13
|
# File 'lib/simple_messaging/message_queue/sqs.rb', line 9
def initialize(name)
@sqs = AWS::SQS.new
@queue = @sqs.queues.create(queue_name(name))
@name = name
end
|
Instance Attribute Details
#name ⇒ Object
Returns the value of attribute name.
7
8
9
|
# File 'lib/simple_messaging/message_queue/sqs.rb', line 7
def name
@name
end
|
Instance Method Details
#delete ⇒ Object
31
32
33
34
|
# File 'lib/simple_messaging/message_queue/sqs.rb', line 31
def delete
MessageQueue.unregister_queue(name)
@queue.delete
end
|
#enqueue(message) ⇒ Object
15
16
17
|
# File 'lib/simple_messaging/message_queue/sqs.rb', line 15
def enqueue(message)
@queue.send_message(message)
end
|
#poll(&block) ⇒ Object
25
26
27
28
29
|
# File 'lib/simple_messaging/message_queue/sqs.rb', line 25
def poll(&block)
@queue.poll do |message|
yield message.body
end
end
|
#pop(&block) ⇒ Object
19
20
21
22
23
|
# File 'lib/simple_messaging/message_queue/sqs.rb', line 19
def pop(&block)
@queue.receive_message do |message|
yield message.body
end
end
|