Class: Shoryuken::Message

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Defined in:
lib/shoryuken/message.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client, queue, data) ⇒ Message

Returns a new instance of Message.



18
19
20
21
22
23
# File 'lib/shoryuken/message.rb', line 18

def initialize(client, queue, data)
  self.client     = client
  self.data       = data
  self.queue_url  = queue.url
  self.queue_name = queue.name
end

Instance Attribute Details

#clientObject

Returns the value of attribute client.



16
17
18
# File 'lib/shoryuken/message.rb', line 16

def client
  @client
end

#dataObject

Returns the value of attribute data.



16
17
18
# File 'lib/shoryuken/message.rb', line 16

def data
  @data
end

#queue_nameObject

Returns the value of attribute queue_name.



16
17
18
# File 'lib/shoryuken/message.rb', line 16

def queue_name
  @queue_name
end

#queue_urlObject

Returns the value of attribute queue_url.



16
17
18
# File 'lib/shoryuken/message.rb', line 16

def queue_url
  @queue_url
end

Instance Method Details

#change_visibility(options) ⇒ Object



32
33
34
35
36
# File 'lib/shoryuken/message.rb', line 32

def change_visibility(options)
  client.change_message_visibility(
    options.merge(queue_url: queue_url, receipt_handle: data.receipt_handle)
  )
end

#deleteObject



25
26
27
28
29
30
# File 'lib/shoryuken/message.rb', line 25

def delete
  client.delete_message(
    queue_url: queue_url,
    receipt_handle: data.receipt_handle
  )
end

#visibility_timeout=(timeout) ⇒ Object



38
39
40
41
42
43
44
# File 'lib/shoryuken/message.rb', line 38

def visibility_timeout=(timeout)
  client.change_message_visibility(
    queue_url: queue_url,
    receipt_handle: data.receipt_handle,
    visibility_timeout: timeout
  )
end