Sha256: 72c4eb107fa52bfba3ad20440b7f9edfed45eab22d1d6a5117a317e6b17a5adf

Contents?: true

Size: 1.16 KB

Versions: 48

Compression:

Stored size: 1.16 KB

Contents

module Shoryuken
  class Message
    attr_accessor :client, :queue_url, :queue_name, :data

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

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

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

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

    def message_id
      data.message_id
    end

    def receipt_handle
      data.receipt_handle
    end

    def md5_of_body
      data.md5_of_body
    end

    def body
      data.body
    end

    def attributes
      data.attributes
    end

    def md5_of_message_attributes
      data.md5_of_message_attributes
    end

    def message_attributes
      data.message_attributes
    end
  end
end

Version data entries

48 entries across 48 versions & 1 rubygems

Version Path
shoryuken-5.2.3 lib/shoryuken/message.rb
shoryuken-5.2.2 lib/shoryuken/message.rb
shoryuken-5.2.1 lib/shoryuken/message.rb
shoryuken-5.2.0 lib/shoryuken/message.rb
shoryuken-5.1.1 lib/shoryuken/message.rb
shoryuken-5.1.0 lib/shoryuken/message.rb
shoryuken-5.0.6 lib/shoryuken/message.rb
shoryuken-5.0.5 lib/shoryuken/message.rb
shoryuken-5.0.4 lib/shoryuken/message.rb
shoryuken-5.0.3 lib/shoryuken/message.rb
shoryuken-5.0.2 lib/shoryuken/message.rb
shoryuken-5.0.1 lib/shoryuken/message.rb
shoryuken-5.0.0 lib/shoryuken/message.rb
shoryuken-4.0.3 lib/shoryuken/message.rb
shoryuken-4.0.2 lib/shoryuken/message.rb
shoryuken-4.0.1 lib/shoryuken/message.rb
shoryuken-4.0.0 lib/shoryuken/message.rb
shoryuken-3.3.1 lib/shoryuken/message.rb
shoryuken-3.3.0 lib/shoryuken/message.rb
shoryuken-3.2.3 lib/shoryuken/message.rb