module Methods

Public Instance Methods

assert_one_of!(options, *keys) click to toggle source
# File lib/online_payment_platform/methods.rb, line 10
def assert_one_of!(options, *keys)
  raise 'Missing one of required keys!' unless (options.keys & keys).any?
end
assert_required_keys!(options, *keys) click to toggle source
# File lib/online_payment_platform/methods.rb, line 4
def assert_required_keys!(options, *keys)
  keys.each do |key|
    raise 'Required key missing!' if options[key].nil?
  end
end
fetch(uri) click to toggle source
# File lib/online_payment_platform/methods.rb, line 33
def fetch(uri)
  config = OnlinePaymentPlatform.configuration

  req = Net::HTTP::Get.new(uri)
  req['Authorization'] = "Bearer #{config.api_key}"

  response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
    http.request req
  end

  JSON.parse response.body
end
generate_uri(*path) click to toggle source
# File lib/online_payment_platform/methods.rb, line 14
def generate_uri(*path)
  encoded_uri = OnlinePaymentPlatform.configuration.base_uri + path.join('/')
  URI.parse encoded_uri
end
post(uri, payload = {}) click to toggle source
# File lib/online_payment_platform/methods.rb, line 19
def post(uri, payload = {})
  config = OnlinePaymentPlatform.configuration

  req = Net::HTTP::Post.new(uri, { 'Content-Type': 'text/json' })
  req['Authorization'] = "Bearer #{config.api_key}"
  req.body = payload.to_json

  response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
    http.request req
  end

  JSON.parse response.body
end