module Telleroo::Request

Handles HTTP requests

Public Instance Methods

delete(path, params = {}, options = {}) click to toggle source
# File lib/telleroo/request.rb, line 14
def delete(path, params = {}, options = {})
  request(:delete, path, params, options)
end
get(path, params = {}, options = {}) click to toggle source
# File lib/telleroo/request.rb, line 6
def get(path, params = {}, options = {})
  request(:get, path, params, options)
end
post(path, params = {}, options = {}) click to toggle source
# File lib/telleroo/request.rb, line 10
def post(path, params = {}, options = {})
  request(:post, path, params, options)
end

Private Instance Methods

load_json(response) click to toggle source
# File lib/telleroo/request.rb, line 36
def load_json(response)
  MultiJson.load(response, symbolize_keys: true)
end
request(method, path, params, _options) click to toggle source

@return [Hash]

# File lib/telleroo/request.rb, line 21
def request(method, path, params, _options)
  response = connection.run_request(method, nil, nil, nil) do |request|
    case method.to_sym
    when :get, :delete
      request.url(path, params)
    when :post
      request.path = path
      request.body = JSON.dump(params) unless params.empty?
    end
  end

  @last_response = response
  load_json(response.body) unless response.body.empty?
end