class Attask::Request

lib/attask/request.rb

Constants

Response

Public Class Methods

new(endpoint, opts = {}) click to toggle source
# File lib/attask/request.rb, line 8
def initialize(endpoint, opts = {})
  @conn = Faraday::Connection.new(endpoint) do |faraday|
    faraday.request :multipart
    faraday.request :url_encoded
    faraday.adapter :patron
    faraday.options.merge!(opts)
  end
end

Public Instance Methods

delete(path, params = {}, headers = {}) click to toggle source
# File lib/attask/request.rb, line 29
def delete(path, params = {}, headers = {})
  make_request(:delete, path, params, headers)
end
get(path, params = {}, headers = {}) click to toggle source
# File lib/attask/request.rb, line 17
def get(path, params = {}, headers = {})
  make_request(:get, path, params, headers)
end
post(path, params = {}, headers = {}) click to toggle source
# File lib/attask/request.rb, line 21
def post(path, params = {}, headers = {})
  make_request(:post, path, params, headers)
end
put(path, params = {}, headers = {}) click to toggle source
# File lib/attask/request.rb, line 25
def put(path, params = {}, headers = {})
  make_request(:put, path, params, headers)
end

Private Instance Methods

make_request(method, path, params = {}, headers = {}) click to toggle source
# File lib/attask/request.rb, line 35
def make_request(method, path, params = {}, headers = {})
  response = @conn.send(method, path, params, headers)
  body = response.body
  return Response.new(body) if response.headers['Content-Type'].nil?
  Response.new(Oj.load(body))
rescue
  Response.new(body)
end