class PaylerAPI::Request

Attributes

method[RW]
params[RW]
response[RW]

Public Class Methods

new(method, params) click to toggle source
# File lib/payler_api/request.rb, line 10
def initialize method, params
  self.class.base_uri "https://#{config.host}.payler.com/mapi"
  @method, @params = [method, params.merge(key: config.access_key)]
  @params.merge!(password: config.password) if protected_method?
end

Public Instance Methods

process() click to toggle source
# File lib/payler_api/request.rb, line 16
def process
  self.response = Response.new \
  self.class.post camel_case_url_path, query: params, headers: headers
end
protected_method?() click to toggle source
# File lib/payler_api/request.rb, line 21
def protected_method?
  [ :refund, :charge, :retrieve ].include? method
end

Private Instance Methods

camel_case_url_path() click to toggle source
# File lib/payler_api/request.rb, line 32
def camel_case_url_path
  '/'+method.to_s.split('_').collect(&:capitalize).join.sub("3ds","3DS")
end
config() click to toggle source
# File lib/payler_api/request.rb, line 26
def config; PaylerAPI.configuration; end
headers() click to toggle source
# File lib/payler_api/request.rb, line 28
def headers
  {'Content-Type' => 'application/x-www-form-urlencoded'}
end