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.



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

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.



14
15
16
# File 'lib/shoryuken/message.rb', line 14

def client
  @client
end

#dataObject

Returns the value of attribute data.



14
15
16
# File 'lib/shoryuken/message.rb', line 14

def data
  @data
end

#queue_nameObject

Returns the value of attribute queue_name.



14
15
16
# File 'lib/shoryuken/message.rb', line 14

def queue_name
  @queue_name
end

#queue_urlObject

Returns the value of attribute queue_url.



14
15
16
# File 'lib/shoryuken/message.rb', line 14

def queue_url
  @queue_url
end

Instance Method Details

#change_visibility(options) ⇒ Object



30
31
32
33
34
# File 'lib/shoryuken/message.rb', line 30

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

#deleteObject



23
24
25
26
27
28
# File 'lib/shoryuken/message.rb', line 23

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

#visibility_timeout=(timeout) ⇒ Object



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

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