Module: Cassieq::Client::Messages

Included in:
Cassieq::Client
Defined in:
lib/cassieq/client/messages.rb

Instance Method Summary collapse

Instance Method Details

#ack_message(queue_name, pop_receipt) ⇒ Object



22
23
24
25
# File 'lib/cassieq/client/messages.rb', line 22

def ack_message(queue_name, pop_receipt)
  params = { popReceipt: pop_receipt }
  request(:delete, "queues/#{queue_name}/messages", nil, params)
end

#edit_message(queue_name, pop_receipt, options) ⇒ Object



16
17
18
19
20
# File 'lib/cassieq/client/messages.rb', line 16

def edit_message(queue_name, pop_receipt, options)
  body = Cassieq::Utils.camelize_and_stringify_keys(options).to_json
  params = { popReceipt: pop_receipt }
  request(:put, "queues/#{queue_name}/messages", body, params)
end

#next_message(queue_name, initial_invis_seconds = nil) ⇒ Object



11
12
13
14
# File 'lib/cassieq/client/messages.rb', line 11

def next_message(queue_name, initial_invis_seconds = nil)
  query = { initialInvisibilitySeconds: initial_invis_seconds } unless initial_invis_seconds.nil?
  request(:get, "queues/#{queue_name}/messages/next", nil, query)
end

#publish_message(queue_name, message, initial_invis_seconds = nil) ⇒ Object



6
7
8
9
# File 'lib/cassieq/client/messages.rb', line 6

def publish_message(queue_name, message, initial_invis_seconds = nil)
  query = { initialInvisibilitySeconds: initial_invis_seconds } unless initial_invis_seconds.nil?
  request(:post, "queues/#{queue_name}/messages", message, query)
end