Class: PaypalServerSdk::PaypalWalletCustomer

Inherits:
BaseModel
  • Object
show all
Defined in:
lib/paypal_server_sdk/models/paypal_wallet_customer.rb

Overview

The details about a customer in PayPal’s system of record.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from BaseModel

#check_for_conflict, #process_additional_properties, #process_array, #process_basic_value, #process_hash, #to_hash, #to_json

Constructor Details

#initialize(id: SKIP, email_address: SKIP, phone: SKIP, name: SKIP, merchant_customer_id: SKIP) ⇒ PaypalWalletCustomer

Returns a new instance of PaypalWalletCustomer.



64
65
66
67
68
69
70
71
# File 'lib/paypal_server_sdk/models/paypal_wallet_customer.rb', line 64

def initialize(id: SKIP, email_address: SKIP, phone: SKIP, name: SKIP,
               merchant_customer_id: SKIP)
  @id = id unless id == SKIP
  @email_address = email_address unless email_address == SKIP
  @phone = phone unless phone == SKIP
  @name = name unless name == SKIP
  @merchant_customer_id = merchant_customer_id unless merchant_customer_id == SKIP
end

Instance Attribute Details

#email_addressString

The internationalized email address. Note: Up to 64 characters are allowed before and 255 characters are allowed after the @ sign. However, the generally accepted maximum length for an email address is 254 characters. The pattern verifies that an unquoted @ sign exists.

Returns:

  • (String)


21
22
23
# File 'lib/paypal_server_sdk/models/paypal_wallet_customer.rb', line 21

def email_address
  @email_address
end

#idString

The unique ID for a customer generated by PayPal.

Returns:

  • (String)


14
15
16
# File 'lib/paypal_server_sdk/models/paypal_wallet_customer.rb', line 14

def id
  @id
end

#merchant_customer_idString

Merchants and partners may already have a data-store where their customer information is persisted. Use merchant_customer_id to associate the PayPal-generated customer.id to your representation of a customer.

Returns:

  • (String)


35
36
37
# File 'lib/paypal_server_sdk/models/paypal_wallet_customer.rb', line 35

def merchant_customer_id
  @merchant_customer_id
end

#nameName

The name of the party.

Returns:



29
30
31
# File 'lib/paypal_server_sdk/models/paypal_wallet_customer.rb', line 29

def name
  @name
end

#phonePhoneWithType

The phone information.

Returns:



25
26
27
# File 'lib/paypal_server_sdk/models/paypal_wallet_customer.rb', line 25

def phone
  @phone
end

Class Method Details

.from_hash(hash) ⇒ Object

Creates an instance of the object from a hash.



74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/paypal_server_sdk/models/paypal_wallet_customer.rb', line 74

def self.from_hash(hash)
  return nil unless hash

  # Extract variables from the hash.
  id = hash.key?('id') ? hash['id'] : SKIP
  email_address = hash.key?('email_address') ? hash['email_address'] : SKIP
  phone = PhoneWithType.from_hash(hash['phone']) if hash['phone']
  name = Name.from_hash(hash['name']) if hash['name']
  merchant_customer_id =
    hash.key?('merchant_customer_id') ? hash['merchant_customer_id'] : SKIP

  # Create object from extracted values.
  PaypalWalletCustomer.new(id: id,
                           email_address: email_address,
                           phone: phone,
                           name: name,
                           merchant_customer_id: merchant_customer_id)
end

.namesObject

A mapping from model property names to API property names.



38
39
40
41
42
43
44
45
46
# File 'lib/paypal_server_sdk/models/paypal_wallet_customer.rb', line 38

def self.names
  @_hash = {} if @_hash.nil?
  @_hash['id'] = 'id'
  @_hash['email_address'] = 'email_address'
  @_hash['phone'] = 'phone'
  @_hash['name'] = 'name'
  @_hash['merchant_customer_id'] = 'merchant_customer_id'
  @_hash
end

.nullablesObject

An array for nullable fields



60
61
62
# File 'lib/paypal_server_sdk/models/paypal_wallet_customer.rb', line 60

def self.nullables
  []
end

.optionalsObject

An array for optional fields



49
50
51
52
53
54
55
56
57
# File 'lib/paypal_server_sdk/models/paypal_wallet_customer.rb', line 49

def self.optionals
  %w[
    id
    email_address
    phone
    name
    merchant_customer_id
  ]
end

Instance Method Details

#inspectObject

Provides a debugging-friendly string with detailed object information.



101
102
103
104
105
106
# File 'lib/paypal_server_sdk/models/paypal_wallet_customer.rb', line 101

def inspect
  class_name = self.class.name.split('::').last
  "<#{class_name} id: #{@id.inspect}, email_address: #{@email_address.inspect}, phone:"\
  " #{@phone.inspect}, name: #{@name.inspect}, merchant_customer_id:"\
  " #{@merchant_customer_id.inspect}>"
end

#to_sObject

Provides a human-readable string representation of the object.



94
95
96
97
98
# File 'lib/paypal_server_sdk/models/paypal_wallet_customer.rb', line 94

def to_s
  class_name = self.class.name.split('::').last
  "<#{class_name} id: #{@id}, email_address: #{@email_address}, phone: #{@phone}, name:"\
  " #{@name}, merchant_customer_id: #{@merchant_customer_id}>"
end