Class: MpApi::Token
- Inherits:
-
Object
- Object
- MpApi::Token
- Defined in:
- lib/mp_api/token.rb
Instance Attribute Summary collapse
-
#card_number ⇒ Object
readonly
Returns the value of attribute card_number.
-
#cardholder_name ⇒ Object
readonly
Returns the value of attribute cardholder_name.
-
#errors ⇒ Object
readonly
Returns the value of attribute errors.
-
#expiration_month ⇒ Object
readonly
Returns the value of attribute expiration_month.
-
#expiration_year ⇒ Object
readonly
Returns the value of attribute expiration_year.
-
#id ⇒ Object
readonly
Returns the value of attribute id.
-
#security_code ⇒ Object
readonly
Returns the value of attribute security_code.
Class Method Summary collapse
Instance Method Summary collapse
- #build_json ⇒ Object
- #create ⇒ Object
-
#initialize(card_number:, expiration_year:, expiration_month:, security_code:, cardholder_name:, id: nil, errors: nil) ⇒ Token
constructor
A new instance of Token.
Constructor Details
#initialize(card_number:, expiration_year:, expiration_month:, security_code:, cardholder_name:, id: nil, errors: nil) ⇒ Token
Returns a new instance of Token.
6 7 8 9 10 11 12 13 14 |
# File 'lib/mp_api/token.rb', line 6 def initialize(card_number:, expiration_year:, expiration_month:, security_code:, cardholder_name:, id:nil, errors:nil) @card_number = card_number @expiration_year = expiration_year @expiration_month = expiration_month @security_code = security_code @cardholder_name = cardholder_name @id = id @errors = errors end |
Instance Attribute Details
#card_number ⇒ Object (readonly)
Returns the value of attribute card_number.
5 6 7 |
# File 'lib/mp_api/token.rb', line 5 def card_number @card_number end |
#cardholder_name ⇒ Object (readonly)
Returns the value of attribute cardholder_name.
5 6 7 |
# File 'lib/mp_api/token.rb', line 5 def cardholder_name @cardholder_name end |
#errors ⇒ Object (readonly)
Returns the value of attribute errors.
5 6 7 |
# File 'lib/mp_api/token.rb', line 5 def errors @errors end |
#expiration_month ⇒ Object (readonly)
Returns the value of attribute expiration_month.
5 6 7 |
# File 'lib/mp_api/token.rb', line 5 def expiration_month @expiration_month end |
#expiration_year ⇒ Object (readonly)
Returns the value of attribute expiration_year.
5 6 7 |
# File 'lib/mp_api/token.rb', line 5 def expiration_year @expiration_year end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
5 6 7 |
# File 'lib/mp_api/token.rb', line 5 def id @id end |
#security_code ⇒ Object (readonly)
Returns the value of attribute security_code.
5 6 7 |
# File 'lib/mp_api/token.rb', line 5 def security_code @security_code end |
Class Method Details
.build_hash(response) ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/mp_api/token.rb', line 33 def self.build_hash(response) { id: response['id'], expiration_year: response['expiration_year'], expiration_month: response['expiration_month'], cardholder_name: response.dig('cardholder', 'name'), card_number: response['card_number'], security_code: response['security_code'], errors: response['error'] } end |
Instance Method Details
#build_json ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/mp_api/token.rb', line 16 def build_json { card_number: card_number, expiration_year: expiration_year, expiration_month: expiration_month, security_code: security_code, cardholder: { name: cardholder_name } } end |
#create ⇒ Object
28 29 30 31 |
# File 'lib/mp_api/token.rb', line 28 def create response = Client.new.create_token(JSON.dump(build_json)) self.class.new(**self.class.build_hash(response.json)) end |