Module: Pay::Braintree

Extended by:
Braintree
Includes:
Env
Included in:
Braintree
Defined in:
lib/pay/braintree.rb,
lib/pay/braintree/charge.rb,
lib/pay/braintree/billable.rb,
lib/pay/braintree/subscription.rb

Defined Under Namespace

Modules: Billable, Charge, Subscription

Instance Method Summary collapse

Instance Method Details

#environmentObject



37
38
39
# File 'lib/pay/braintree.rb', line 37

def environment
  find_value_by_name(:braintree, :environment) || "sandbox"
end

#merchant_idObject



33
34
35
# File 'lib/pay/braintree.rb', line 33

def merchant_id
  find_value_by_name(:braintree, :merchant_id)
end

#private_keyObject



29
30
31
# File 'lib/pay/braintree.rb', line 29

def private_key
  find_value_by_name(:braintree, :private_key)
end

#public_keyObject



25
26
27
# File 'lib/pay/braintree.rb', line 25

def public_key
  find_value_by_name(:braintree, :public_key)
end

#setupObject



12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/pay/braintree.rb', line 12

def setup
  Pay.braintree_gateway = ::Braintree::Gateway.new(
    environment: environment.to_sym,
    merchant_id: merchant_id,
    public_key: public_key,
    private_key: private_key
  )

  Pay.charge_model.include Pay::Braintree::Charge
  Pay.subscription_model.include Pay::Braintree::Subscription
  Pay.billable_models.each { |model| model.include Pay::Braintree::Billable }
end