class RocketGate::CreditCard

Attributes

card_hash[RW]
cvv[RW]
exp_month[RW]
exp_year[RW]
number[RW]

Public Class Methods

from_card_hash(card_hash) click to toggle source
# File lib/rocketgate/credit_card.rb, line 22
def self.from_card_hash(card_hash)
  new.tap do |cc|
    cc.card_hash = card_hash
  end
end
new(*args) click to toggle source
# File lib/rocketgate/credit_card.rb, line 16
def initialize(*args)
  @number, @exp_month, @exp_year, @cvv = *args

  clean_number! if @number
end

Public Instance Methods

to_hash() click to toggle source
Calls superclass method
# File lib/rocketgate/credit_card.rb, line 28
def to_hash
  card_hash ? { cardHash: card_hash } : super
end
valid?() click to toggle source
Calls superclass method
# File lib/rocketgate/credit_card.rb, line 32
def valid?
  !card_hash.nil? || super
end

Private Instance Methods

clean_number!() click to toggle source
# File lib/rocketgate/credit_card.rb, line 38
def clean_number!
  @number.delete!("^0-9")
end