Class: Braintree::VisaCheckoutCard

Inherits:
Object
  • Object
show all
Includes:
BaseModule, Util::TokenEquality
Defined in:
lib/braintree/visa_checkout_card.rb

Overview

DEPRECATED: Visa Checkout is no longer supported for creating new transactions. This class is retained for search functionality and historical transaction data only.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Util::TokenEquality

#==

Methods included from BaseModule

included

Methods included from BaseModule::Methods

#copy_instance_variables_from_object, #return_object_or_raise, #set_instance_variables_from_hash, #singleton_class

Constructor Details

#initialize(gateway, attributes) ⇒ VisaCheckoutCard

Returns a new instance of VisaCheckoutCard.



40
41
42
43
44
45
46
# File 'lib/braintree/visa_checkout_card.rb', line 40

def initialize(gateway, attributes)
  @gateway = gateway
  set_instance_variables_from_hash(attributes)
  @billing_address = attributes[:billing_address] ? Address._new(@gateway, attributes[:billing_address]) : nil
  @subscriptions = (@subscriptions || []).map { |subscription_hash| Subscription._new(@gateway, subscription_hash) }
  @verification = _most_recent_verification(attributes)
end

Instance Attribute Details

#billing_addressObject (readonly)

Returns the value of attribute billing_address.



8
9
10
# File 'lib/braintree/visa_checkout_card.rb', line 8

def billing_address
  @billing_address
end

#binObject (readonly)

Returns the value of attribute bin.



9
10
11
# File 'lib/braintree/visa_checkout_card.rb', line 9

def bin
  @bin
end

#businessObject (readonly)

Returns the value of attribute business.



10
11
12
# File 'lib/braintree/visa_checkout_card.rb', line 10

def business
  @business
end

#call_idObject (readonly)

Returns the value of attribute call_id.



11
12
13
# File 'lib/braintree/visa_checkout_card.rb', line 11

def call_id
  @call_id
end

#card_typeObject (readonly)

Returns the value of attribute card_type.



12
13
14
# File 'lib/braintree/visa_checkout_card.rb', line 12

def card_type
  @card_type
end

#cardholder_nameObject (readonly)

Returns the value of attribute cardholder_name.



13
14
15
# File 'lib/braintree/visa_checkout_card.rb', line 13

def cardholder_name
  @cardholder_name
end

#commercialObject (readonly)

Returns the value of attribute commercial.



14
15
16
# File 'lib/braintree/visa_checkout_card.rb', line 14

def commercial
  @commercial
end

#consumerObject (readonly)

Returns the value of attribute consumer.



15
16
17
# File 'lib/braintree/visa_checkout_card.rb', line 15

def consumer
  @consumer
end

#corporateObject (readonly)

Returns the value of attribute corporate.



16
17
18
# File 'lib/braintree/visa_checkout_card.rb', line 16

def corporate
  @corporate
end

#country_of_issuanceObject (readonly)

Returns the value of attribute country_of_issuance.



17
18
19
# File 'lib/braintree/visa_checkout_card.rb', line 17

def country_of_issuance
  @country_of_issuance
end

#created_atObject (readonly)

Returns the value of attribute created_at.



18
19
20
# File 'lib/braintree/visa_checkout_card.rb', line 18

def created_at
  @created_at
end

#customer_idObject (readonly)

Returns the value of attribute customer_id.



19
20
21
# File 'lib/braintree/visa_checkout_card.rb', line 19

def customer_id
  @customer_id
end

#customer_locationObject (readonly)

Returns the value of attribute customer_location.



20
21
22
# File 'lib/braintree/visa_checkout_card.rb', line 20

def customer_location
  @customer_location
end

#debitObject (readonly)

Returns the value of attribute debit.



21
22
23
# File 'lib/braintree/visa_checkout_card.rb', line 21

def debit
  @debit
end

#durbin_regulatedObject (readonly)

Returns the value of attribute durbin_regulated.



22
23
24
# File 'lib/braintree/visa_checkout_card.rb', line 22

def durbin_regulated
  @durbin_regulated
end

#expiration_monthObject (readonly)

Returns the value of attribute expiration_month.



23
24
25
# File 'lib/braintree/visa_checkout_card.rb', line 23

def expiration_month
  @expiration_month
end

#expiration_yearObject (readonly)

Returns the value of attribute expiration_year.



24
25
26
# File 'lib/braintree/visa_checkout_card.rb', line 24

def expiration_year
  @expiration_year
end

#healthcareObject (readonly)

Returns the value of attribute healthcare.



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

def healthcare
  @healthcare
end

#image_urlObject (readonly)

Returns the value of attribute image_url.



26
27
28
# File 'lib/braintree/visa_checkout_card.rb', line 26

def image_url
  @image_url
end

#issuing_bankObject (readonly)

Returns the value of attribute issuing_bank.



27
28
29
# File 'lib/braintree/visa_checkout_card.rb', line 27

def issuing_bank
  @issuing_bank
end

#last_4Object (readonly)

Returns the value of attribute last_4.



28
29
30
# File 'lib/braintree/visa_checkout_card.rb', line 28

def last_4
  @last_4
end

#payrollObject (readonly)

Returns the value of attribute payroll.



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

def payroll
  @payroll
end

#prepaidObject (readonly)

Returns the value of attribute prepaid.



30
31
32
# File 'lib/braintree/visa_checkout_card.rb', line 30

def prepaid
  @prepaid
end

#prepaid_reloadableObject (readonly)

Returns the value of attribute prepaid_reloadable.



31
32
33
# File 'lib/braintree/visa_checkout_card.rb', line 31

def prepaid_reloadable
  @prepaid_reloadable
end

#product_idObject (readonly)

Returns the value of attribute product_id.



32
33
34
# File 'lib/braintree/visa_checkout_card.rb', line 32

def product_id
  @product_id
end

#purchaseObject (readonly)

Returns the value of attribute purchase.



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

def purchase
  @purchase
end

#subscriptionsObject (readonly)

Returns the value of attribute subscriptions.



34
35
36
# File 'lib/braintree/visa_checkout_card.rb', line 34

def subscriptions
  @subscriptions
end

#tokenObject (readonly)

Returns the value of attribute token.



35
36
37
# File 'lib/braintree/visa_checkout_card.rb', line 35

def token
  @token
end

#unique_number_identifierObject (readonly)

Returns the value of attribute unique_number_identifier.



36
37
38
# File 'lib/braintree/visa_checkout_card.rb', line 36

def unique_number_identifier
  @unique_number_identifier
end

#updated_atObject (readonly)

Returns the value of attribute updated_at.



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

def updated_at
  @updated_at
end

#verificationObject (readonly)

Returns the value of attribute verification.



38
39
40
# File 'lib/braintree/visa_checkout_card.rb', line 38

def verification
  @verification
end

Class Method Details

._attributesObject



83
84
85
86
87
88
89
90
91
# File 'lib/braintree/visa_checkout_card.rb', line 83

def self._attributes
  [
    :bin, :billing_address, :business, :card_type, :cardholder_name, :commercial,
    :consumer, :container_id, :corporate, :country_of_issuance, :created_at, :customer_id,
    :customer_location, :debit, :durbin_regulated, :expiration_month, :expiration_year,
    :healthcare, :image_url, :issuing_bank, :last_4, :payroll, :prepaid, :prepaid_reloadable,
    :product_id, :purchase, :token, :updated_at
  ]
end

._new(*args) ⇒ Object



93
94
95
# File 'lib/braintree/visa_checkout_card.rb', line 93

def self._new(*args)
  self.new(*args)
end

Instance Method Details

#_most_recent_verification(attributes) ⇒ Object



48
49
50
51
# File 'lib/braintree/visa_checkout_card.rb', line 48

def _most_recent_verification(attributes)
  sorted_verifications = (attributes[:verifications] || []).sort_by { |verification| verification[:created_at] }.reverse.first
  CreditCardVerification._new(sorted_verifications) if sorted_verifications
end

#default?Boolean

Returns:

  • (Boolean)


53
54
55
# File 'lib/braintree/visa_checkout_card.rb', line 53

def default?
  @default
end

#expiration_dateObject

Expiration date formatted as MM/YYYY



58
59
60
# File 'lib/braintree/visa_checkout_card.rb', line 58

def expiration_date
  "#{expiration_month}/#{expiration_year}"
end

#expired?Boolean

Returns:

  • (Boolean)


62
63
64
# File 'lib/braintree/visa_checkout_card.rb', line 62

def expired?
  @expired
end

#inspectObject



66
67
68
69
70
71
72
73
# File 'lib/braintree/visa_checkout_card.rb', line 66

def inspect
  first = [:token]
  order = first + (self.class._attributes - first)
  nice_attributes = order.map do |attr|
    "#{attr}: #{send(attr).inspect}"
  end
  "#<#{self.class} #{nice_attributes.join(', ')}>"
end

#masked_numberObject



75
76
77
# File 'lib/braintree/visa_checkout_card.rb', line 75

def masked_number
  "#{bin}******#{last_4}"
end