Class: Sqspoller::WorkerTask

Inherits:
Object
  • Object
show all
Defined in:
lib/sqspoller/worker_task.rb

Instance Method Summary collapse

Constructor Details

#initialize(worker_configuration) ⇒ WorkerTask

Returns a new instance of WorkerTask.



10
11
12
13
14
15
# File 'lib/sqspoller/worker_task.rb', line 10

def initialize(worker_configuration)
  @logger = Logger.new(STDOUT)
  @http_method = worker_configuration[:http_method]
  @http_url = worker_configuration[:http_url]
  @uri = URI(@http_url)
end

Instance Method Details

#process(message, message_id) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/sqspoller/worker_task.rb', line 17

def process(message, message_id)
  if @http_method.downcase == "post"
    response = Net::HTTP.post_form(@uri, JSON.parse(message))
  elsif @http_method.downcase == "get"
    uri = URI(@http_url)
    uri.query = URI.encode_www_form(JSON.parse(message))
    response = Net::HTTP.get_response(uri)
  else
    raise "Invalid http_method provided. #{http_method}"
  end
  @logger.info "Got HTTP response as #{response.code}, #{response.body}"
end