Sha256: f5a844dc12cee19e1e7ee429fb822ed6c41441431e0c51dfe655405db6101f21

Contents?: true

Size: 1.29 KB

Versions: 3

Compression:

Stored size: 1.29 KB

Contents

require_relative 'petra_sdk/version'
require_relative 'petra_sdk/modules/base'
require_relative 'petra_sdk/modules/transaction'
require_relative 'petra_sdk/modules/customer'
require_relative 'petra_sdk/modules/page'
require_relative 'petra_sdk/modules/invoice'
require_relative 'petra_sdk/error'

class Petra
  attr_accessor  :secret_key, :production, :url

  def initialize(secret_key = nil)
    @secret_key = secret_key
    petra_base_url = BASE_ENDPOINTS::PETRA_BASE_URL
    @url = petra_base_url

    def base_url
      url
    end

    @secret_key = if secret_key.nil?
                    ENV['PETRA_SECRET_KEY']
                  else
                    secret_key
                  end
    warn 'Warning: To ensure your petra_sdk account api keys are safe, It is best to always set your keys in the environment variable'



    # raise this error if no secret key is passed
    if @secret_key.nil?
      raise PetraBadKeyError,
            "No secret key supplied and couldn't find any in environment variables. Make sure to set secret key as an environment variable PETRA_SECRET_KEY"
    end
    # raise this error if invalid secret key is passed
    # unless @secret_key[0..7] == 'sk_live' || @secret_key[0..7] == 'sk_test'
    #   raise PetraBadKeyError, "Invalid secret key #{@secret_key}"
    # end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
petra_sdk-0.1.4 lib/petra_sdk.rb
petra_sdk-0.1.3 lib/petra_sdk.rb
petra_sdk-0.1.2 lib/petra_sdk.rb