class PaymentRecipes::PayPal::REST::Authorization
Attributes
create_time[R]
currency[R]
expanded[R]
id[R]
payment[R]
payment_id[R]
payment_mode[R]
protection_eligibility[R]
protection_eligibility_type[R]
state[R]
subtotal[R]
total[R]
update_time[R]
valid_until[R]
Public Class Methods
find(id)
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 131 def find(id) paypal_authorization = find_raw(id) if paypal_authorization new(paypal_authorization, payment: nil, expanded: true) else nil end end
find_raw(id)
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 141 def find_raw(id) begin ::PayPal::SDK::REST::Authorization.find(id) rescue ::PayPal::SDK::Core::Exceptions::ResourceNotFound nil end end
new(paypal_authorization, payment: nil, expanded: false)
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 26 def initialize(paypal_authorization, payment: nil, expanded: false) unless paypal_authorization.is_a?(::PayPal::SDK::REST::DataTypes::Authorization) raise Exception, "#{ self.class.name } must be initialized with a PayPal Authorization" end if payment unless payment.is_a?(::PaymentRecipes::PayPal::REST::Payment) raise Exception, "Parameter payment must be a PaymentRecipes::PayPal::Payment" end @payment = payment @payment_id = payment.id end extract_and_store(paypal_authorization) @expanded = expanded end
Public Instance Methods
can_be_captured?()
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 118 def can_be_captured? authorized? || partially_captured? end
capture()
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 86 def capture captures.first end
captured?()
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 106 def captured? @state == :captured end
captures()
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 82 def captures payment.captures end
expired?()
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 110 def expired? @state == :expired end
inspect()
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 90 def inspect to_str end
partially_captured?()
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 102 def partially_captured? @state == :partially_captured end
pending?()
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 94 def pending? @state == :pending end
reload!()
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 44 def reload! paypal_authorization = self.class.find_raw(@id) extract_and_store(paypal_authorization) @expanded = true self end
reload_payment!()
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 52 def reload_payment! @payment = ::PaymentRecipes::PayPal::REST::Payment.find(@payment_id) @payment end
to_s()
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 122 def to_s to_str end
to_str()
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 126 def to_str "<#{ self.class.name } total=#{ @total.format } state=#{ @state } id=#{ @id }>" end
voided?()
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 114 def voided? @state == :voided end
Private Instance Methods
extract_and_store(paypal_authorization)
click to toggle source
# File lib/payment_recipes/paypal/rest/authorization.rb, line 153 def extract_and_store(paypal_authorization) @id = convert_to_string(paypal_authorization.id) @currency = convert_to_string(paypal_authorization.amount.currency) @total = convert_to_money(amount: paypal_authorization.amount.total, currency: @currency) @subtotal = convert_to_money(amount: paypal_authorization.amount.details.subtotal, currency: @currency) @create_time = convert_to_time(paypal_authorization.create_time) @update_time = convert_to_time(paypal_authorization.update_time) @valid_until = convert_to_time(paypal_authorization.valid_until) @payment_id = convert_to_string(paypal_authorization.parent_payment) @state = convert_to_symbol(paypal_authorization.state) @raw_authorization = paypal_authorization @payment_mode = convert_to_string(paypal_authorization.payment_mode) @protection_eligibility = convert_to_string(paypal_authorization.protection_eligibility) @protection_eligibility_type = convert_to_string(paypal_authorization.protection_eligibility_type) end