class PaymentRails::Configuration

Attributes

environment[R]
privateKey[RW]
proxy[R]
publicKey[RW]

Public Class Methods

new(publicKey, privateKey, environment = 'production', proxy_uri: nil) click to toggle source
# File lib/paymentrails/Configuration.rb, line 5
def initialize(publicKey, privateKey, environment = 'production', proxy_uri: nil)
  raise ArgumentError, 'Both key/secret must be a nonempty string' if publicKey.to_s&.empty? || privateKey.to_s&.empty?

  @publicKey = publicKey
  @privateKey = privateKey
  @environment = environment
  # failfast on a bad proxy
  begin
    @proxy = proxy_uri.nil? ? nil : URI.parse(proxy_uri)
  rescue URI::InvalidURIError
    raise InvalidProxyAddress, "Invalid proxy provided to configuration: #{proxy_uri}"
  end
end

Public Instance Methods

apiBase() click to toggle source
# File lib/paymentrails/Configuration.rb, line 19
def apiBase
  case environment
  when 'production'
    'https://api.paymentrails.com'
  when 'development'
    'https://api.railz.io'
  when 'integration'
    'http://api.local.dev:3000'
  else
    'https://api.paymentrails.com'
  end
end
useSsl?() click to toggle source
# File lib/paymentrails/Configuration.rb, line 32
def useSsl?
  apiBase.start_with? 'https'
end