Class: Commerce::FaradayClient

Inherits:
HttpClient show all
Defined in:
lib/commerce/http/faraday_client.rb

Instance Method Summary collapse

Methods inherited from HttpClient

#DELETE, #GET, #PATCH, #POST, #PUT

Constructor Details

#initialize(timeout) ⇒ FaradayClient

The constructor.



6
7
8
9
10
11
12
13
14
# File 'lib/commerce/http/faraday_client.rb', line 6

def initialize(timeout)
  @connection = Faraday.new do |faraday|
    faraday.request :multipart
    faraday.request :url_encoded
    faraday.ssl[:ca_file] = Certifi.where
    faraday.adapter Faraday.default_adapter
    faraday.options[:open_timeout] = timeout
  end
end

Instance Method Details

#convert_response(response) ⇒ Object

Method overridden from HttpClient.



37
38
39
# File 'lib/commerce/http/faraday_client.rb', line 37

def convert_response(response)
  return HttpResponse.new(response.status, response.headers, response.body)
end

#execute_as_binary(http_request) ⇒ Object

Method overridden from HttpClient.



27
28
29
30
31
32
33
34
# File 'lib/commerce/http/faraday_client.rb', line 27

def execute_as_binary(http_request)
  response = @connection.send(http_request.http_method.downcase, http_request.query_url) do |request| 
    request.headers = http_request.headers
    request.body = http_request.parameters
  end

  return convert_response(response)
end

#execute_as_string(http_request) ⇒ Object

Method overridden from HttpClient.



17
18
19
20
21
22
23
24
# File 'lib/commerce/http/faraday_client.rb', line 17

def execute_as_string(http_request)
  response = @connection.send(http_request.http_method.downcase, http_request.query_url) do |request| 
    request.headers = http_request.headers
    request.body = http_request.parameters
  end

  return convert_response(response)
end