Class: Circuitry::Message

Inherits:
Object
  • Object
show all
Defined in:
lib/circuitry/message.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(sqs_message) ⇒ Message

Returns a new instance of Message.



8
9
10
# File 'lib/circuitry/message.rb', line 8

def initialize(sqs_message)
  @sqs_message = sqs_message
end

Instance Attribute Details

#sqs_messageObject (readonly)

Returns the value of attribute sqs_message.



6
7
8
# File 'lib/circuitry/message.rb', line 6

def sqs_message
  @sqs_message
end

Instance Method Details

#bodyObject



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

def body
  @body ||= JSON.parse(context['Message'], quirks_mode: true)
end

#contextObject



12
13
14
# File 'lib/circuitry/message.rb', line 12

def context
  @context ||= JSON.parse(sqs_message.body)
end

#idObject



24
25
26
# File 'lib/circuitry/message.rb', line 24

def id
  sqs_message.message_id
end

#receipt_handleObject



28
29
30
# File 'lib/circuitry/message.rb', line 28

def receipt_handle
  sqs_message.receipt_handle
end

#topicObject



20
21
22
# File 'lib/circuitry/message.rb', line 20

def topic
  @topic ||= Topic.new(context['TopicArn'])
end