Class: PayuAPI::Request

Inherits:
Object
  • Object
show all
Defined in:
lib/payu_api/request.rb

Direct Known Subclasses

ApiRequest, AuthRequest

Constant Summary collapse

API_URL =
'https://secure.payu.com/'.freeze
API_SANDBOX_URL =
'https://secure.snd.payu.com/'.freeze

Instance Method Summary collapse

Instance Method Details

#callObject

rubocop:disable Metrics/AbcSize



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/payu_api/request.rb', line 7

def call
  connection = Faraday.new(url: api_url) do |builder|
    builder.response(:detailed_logger, logger) if logger
    builder.adapter Faraday.default_adapter
  end

  connection.public_send(method.to_s.downcase) do |request|
    request.url url
    request.body = body if body
    headers.each do |key, value|
      request.headers[key] = value
    end
  end
rescue Faraday::Error => e
  raise RequestError, e.message
end