cybersource_rest_client 0.0.67 → 0.0.68

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. checksums.yaml +4 -4
  2. data/lib/cybersource_rest_client/models/card_processing_config_common_acquirer.rb +257 -257
  3. data/lib/cybersource_rest_client/models/card_processing_config_common_merchant_descriptor_information.rb +279 -279
  4. data/lib/cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations.rb +200 -190
  5. data/lib/cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations_vault.rb +251 -0
  6. data/lib/cybersource_rest_client/models/e_check_config_common_internal_only_processors.rb +267 -263
  7. data/lib/cybersource_rest_client/models/e_check_config_common_processors.rb +273 -271
  8. data/lib/cybersource_rest_client/models/e_check_config_features_account_validation_service_internal_only_processors.rb +193 -191
  9. data/lib/cybersource_rest_client/models/e_check_config_features_account_validation_service_processors.rb +285 -283
  10. data/lib/cybersource_rest_client/models/flexv2sessions_fields.rb +199 -199
  11. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information.rb +209 -209
  12. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_amount_details.rb +199 -199
  13. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_amount_details_total_amount.rb +189 -189
  14. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_bill_to.rb +309 -309
  15. data/lib/cybersource_rest_client/models/flexv2sessions_fields_order_information_ship_to.rb +289 -289
  16. data/lib/cybersource_rest_client/models/flexv2sessions_fields_payment_information.rb +189 -189
  17. data/lib/cybersource_rest_client/models/flexv2sessions_fields_payment_information_card.rb +229 -229
  18. data/lib/cybersource_rest_client/models/generate_capture_context_request.rb +13 -13
  19. data/lib/cybersource_rest_client/models/generate_flex_api_capture_context_request.rb +189 -189
  20. data/lib/cybersource_rest_client/models/generate_unified_checkout_capture_context_request.rb +13 -13
  21. data/lib/cybersource_rest_client/models/inline_response_400_1_details.rb +199 -199
  22. data/lib/cybersource_rest_client/models/inline_response_400_2.rb +235 -235
  23. data/lib/cybersource_rest_client/models/inline_response_400_3.rb +235 -235
  24. data/lib/cybersource_rest_client/models/inline_response_400_4.rb +235 -235
  25. data/lib/cybersource_rest_client/models/inline_response_400_5.rb +258 -258
  26. data/lib/cybersource_rest_client/models/inline_response_400_5_fields.rb +213 -213
  27. data/lib/cybersource_rest_client/models/inline_response_400_6_details.rb +201 -201
  28. data/lib/cybersource_rest_client/models/patch_instrument_identifier_request.rb +313 -313
  29. data/lib/cybersource_rest_client/models/post_instrument_identifier_enrollment_request.rb +313 -313
  30. data/lib/cybersource_rest_client/models/post_instrument_identifier_request.rb +313 -313
  31. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response.rb +305 -305
  32. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb +445 -428
  33. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +1 -1
  34. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options.rb +339 -411
  35. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options_bonuses.rb +213 -0
  36. data/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb +383 -383
  37. data/lib/cybersource_rest_client/models/ptsv2payments_recurring_payment_information.rb +363 -363
  38. data/lib/cybersource_rest_client/models/ptsv2payments_sender_information.rb +298 -298
  39. data/lib/cybersource_rest_client/models/ptsv2paymentsid_client_reference_information.rb +256 -256
  40. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information.rb +219 -219
  41. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information.rb +219 -219
  42. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information_customer.rb +222 -222
  43. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_customer.rb +205 -205
  44. data/lib/cybersource_rest_client/models/riskv1decisions_consumer_authentication_information.rb +795 -795
  45. data/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_order_information_line_items.rb +305 -314
  46. data/lib/cybersource_rest_client/models/tms_embedded_instrument_identifier.rb +313 -313
  47. data/lib/cybersource_rest_client/models/tms_network_token_services.rb +239 -0
  48. data/lib/cybersource_rest_client/models/tms_network_token_services_american_express_token_service.rb +253 -0
  49. data/lib/cybersource_rest_client/models/tms_network_token_services_mastercard_digital_enablement_service.rb +227 -0
  50. data/lib/cybersource_rest_client/models/tms_network_token_services_notifications.rb +190 -0
  51. data/lib/cybersource_rest_client/models/tms_network_token_services_payment_credentials.rb +190 -0
  52. data/lib/cybersource_rest_client/models/tms_network_token_services_synchronous_provisioning.rb +190 -0
  53. data/lib/cybersource_rest_client/models/tms_network_token_services_visa_token_service.rb +244 -0
  54. data/lib/cybersource_rest_client/models/tms_nullify.rb +212 -0
  55. data/lib/cybersource_rest_client/models/tms_sensitive_privileges.rb +190 -0
  56. data/lib/cybersource_rest_client/models/tms_token_formats.rb +223 -0
  57. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card.rb +321 -321
  58. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_card.rb +225 -225
  59. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata.rb +189 -189
  60. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art.rb +250 -250
  61. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_background_asset.rb +200 -200
  62. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_background_asset__links.rb +189 -189
  63. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_background_asset__links_self.rb +190 -190
  64. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_brand_logo_asset.rb +200 -200
  65. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_brand_logo_asset__links.rb +189 -189
  66. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_brand_logo_asset__links_self.rb +190 -190
  67. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset.rb +200 -200
  68. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset__links.rb +189 -189
  69. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset__links_self.rb +190 -190
  70. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_combined_asset.rb +200 -200
  71. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_combined_asset__links.rb +189 -189
  72. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_combined_asset__links_self.rb +190 -190
  73. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset.rb +200 -200
  74. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset__links.rb +189 -189
  75. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset__links_self.rb +190 -190
  76. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset.rb +200 -200
  77. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset__links.rb +189 -189
  78. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset__links_self.rb +190 -190
  79. data/lib/cybersource_rest_client/models/token_permissions.rb +223 -0
  80. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information.rb +326 -326
  81. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_japan_payment_options.rb +322 -247
  82. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processing_information.rb +241 -241
  83. data/lib/cybersource_rest_client.rb +13 -0
  84. metadata +16 -3
@@ -1,298 +1,298 @@
1
- =begin
2
- #CyberSource Merged Spec
3
-
4
- #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
-
6
- OpenAPI spec version: 0.0.1
7
-
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.38
10
- =end
11
-
12
- require 'date'
13
-
14
- module CyberSource
15
- class Ptsv2paymentsSenderInformation
16
- # First name of the sender. **Applicable for Barclays AFT transactions only.** The field is mandatory for Visa and not applicable for Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. Values exceeding the above limits will be truncated.
17
- attr_accessor :first_name
18
-
19
- # Last name of the sender. **Applicable for Barclays AFT transactions only.** This field is optional for Visa and not applicable for Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. Values exceeding these limits will be truncated.
20
- attr_accessor :last_name
21
-
22
- # Middle name of the sender. **Applicable for Barclays AFT transactions only.** The field is mandatory for Visa and not applicable for Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to Barclays. For Visa, the maximum length of First Name, Middle Name and Last Name is 30 characters. Values exceeding these limits will be truncated.
23
- attr_accessor :middle_name
24
-
25
- # The street address of the sender. **Applicable for Barclays AFT transactions only.** The field is mandatory for Visa and not applicable for Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to Barclays. The field has a maximum length of 35 characters. Values exceeding these limits will be truncated.
26
- attr_accessor :address1
27
-
28
- # The city or locality of the sender.in **Applicable for Barclays AFT transactions only.** The field is optional for Visa and not applicable for Mastercard AFT. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to Barclays. The field has a maximum length of 25 characters. Values exceeding these limits will be truncated.
29
- attr_accessor :locality
30
-
31
- # The state or province of the sender. **Applicable for Barclays AFT transactions only.** The field is mandatory for Visa AFT when the sender country is US or CA else it is optional for Visa AFT. This field is not applicable for Mastercard AFT. Must be a two character value
32
- attr_accessor :administrative_area
33
-
34
- # The country associated with the address of the sender. **Applicable for Barclays AFT transactions only.** The field is mandatory for Visa and not applicable for Mastercard AFT. Must be a two character ISO country code. For example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html)
35
- attr_accessor :country_code
36
-
37
- # Attribute mapping from ruby-style variable name to JSON key.
38
- def self.attribute_map
39
- {
40
- :'first_name' => :'firstName',
41
- :'last_name' => :'lastName',
42
- :'middle_name' => :'middleName',
43
- :'address1' => :'address1',
44
- :'locality' => :'locality',
45
- :'administrative_area' => :'administrativeArea',
46
- :'country_code' => :'countryCode'
47
- }
48
- end
49
-
50
- # Attribute mapping from JSON key to ruby-style variable name.
51
- def self.json_map
52
- {
53
- :'first_name' => :'first_name',
54
- :'last_name' => :'last_name',
55
- :'middle_name' => :'middle_name',
56
- :'address1' => :'address1',
57
- :'locality' => :'locality',
58
- :'administrative_area' => :'administrative_area',
59
- :'country_code' => :'country_code'
60
- }
61
- end
62
-
63
- # Attribute type mapping.
64
- def self.swagger_types
65
- {
66
- :'first_name' => :'String',
67
- :'last_name' => :'String',
68
- :'middle_name' => :'String',
69
- :'address1' => :'String',
70
- :'locality' => :'String',
71
- :'administrative_area' => :'String',
72
- :'country_code' => :'String'
73
- }
74
- end
75
-
76
- # Initializes the object
77
- # @param [Hash] attributes Model attributes in the form of hash
78
- def initialize(attributes = {})
79
- return unless attributes.is_a?(Hash)
80
-
81
- # convert string to symbol for hash key
82
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
83
-
84
- if attributes.has_key?(:'firstName')
85
- self.first_name = attributes[:'firstName']
86
- end
87
-
88
- if attributes.has_key?(:'lastName')
89
- self.last_name = attributes[:'lastName']
90
- end
91
-
92
- if attributes.has_key?(:'middleName')
93
- self.middle_name = attributes[:'middleName']
94
- end
95
-
96
- if attributes.has_key?(:'address1')
97
- self.address1 = attributes[:'address1']
98
- end
99
-
100
- if attributes.has_key?(:'locality')
101
- self.locality = attributes[:'locality']
102
- end
103
-
104
- if attributes.has_key?(:'administrativeArea')
105
- self.administrative_area = attributes[:'administrativeArea']
106
- end
107
-
108
- if attributes.has_key?(:'countryCode')
109
- self.country_code = attributes[:'countryCode']
110
- end
111
- end
112
-
113
- # Show invalid properties with the reasons. Usually used together with valid?
114
- # @return Array for valid properties with the reasons
115
- def list_invalid_properties
116
- invalid_properties = Array.new
117
- invalid_properties
118
- end
119
-
120
- # Check to see if the all the properties in the model are valid
121
- # @return true if the model is valid
122
- def valid?
123
- true
124
- end
125
-
126
- # Custom attribute writer method with validation
127
- # @param [Object] first_name Value to be assigned
128
- def first_name=(first_name)
129
- @first_name = first_name
130
- end
131
-
132
- # Custom attribute writer method with validation
133
- # @param [Object] last_name Value to be assigned
134
- def last_name=(last_name)
135
- @last_name = last_name
136
- end
137
-
138
- # Custom attribute writer method with validation
139
- # @param [Object] middle_name Value to be assigned
140
- def middle_name=(middle_name)
141
- @middle_name = middle_name
142
- end
143
-
144
- # Custom attribute writer method with validation
145
- # @param [Object] address1 Value to be assigned
146
- def address1=(address1)
147
- @address1 = address1
148
- end
149
-
150
- # Custom attribute writer method with validation
151
- # @param [Object] locality Value to be assigned
152
- def locality=(locality)
153
- @locality = locality
154
- end
155
-
156
- # Custom attribute writer method with validation
157
- # @param [Object] administrative_area Value to be assigned
158
- def administrative_area=(administrative_area)
159
- @administrative_area = administrative_area
160
- end
161
-
162
- # Custom attribute writer method with validation
163
- # @param [Object] country_code Value to be assigned
164
- def country_code=(country_code)
165
- @country_code = country_code
166
- end
167
-
168
- # Checks equality by comparing each attribute.
169
- # @param [Object] Object to be compared
170
- def ==(o)
171
- return true if self.equal?(o)
172
- self.class == o.class &&
173
- first_name == o.first_name &&
174
- last_name == o.last_name &&
175
- middle_name == o.middle_name &&
176
- address1 == o.address1 &&
177
- locality == o.locality &&
178
- administrative_area == o.administrative_area &&
179
- country_code == o.country_code
180
- end
181
-
182
- # @see the `==` method
183
- # @param [Object] Object to be compared
184
- def eql?(o)
185
- self == o
186
- end
187
-
188
- # Calculates hash code according to all attributes.
189
- # @return [Fixnum] Hash code
190
- def hash
191
- [first_name, last_name, middle_name, address1, locality, administrative_area, country_code].hash
192
- end
193
-
194
- # Builds the object from hash
195
- # @param [Hash] attributes Model attributes in the form of hash
196
- # @return [Object] Returns the model itself
197
- def build_from_hash(attributes)
198
- return nil unless attributes.is_a?(Hash)
199
- self.class.swagger_types.each_pair do |key, type|
200
- if type =~ /\AArray<(.*)>/i
201
- # check to ensure the input is an array given that the the attribute
202
- # is documented as an array but the input is not
203
- if attributes[self.class.attribute_map[key]].is_a?(Array)
204
- self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
205
- end
206
- elsif !attributes[self.class.attribute_map[key]].nil?
207
- self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
208
- end # or else data not found in attributes(hash), not an issue as the data can be optional
209
- end
210
-
211
- self
212
- end
213
-
214
- # Deserializes the data based on type
215
- # @param string type Data type
216
- # @param string value Value to be deserialized
217
- # @return [Object] Deserialized data
218
- def _deserialize(type, value)
219
- case type.to_sym
220
- when :DateTime
221
- DateTime.parse(value)
222
- when :Date
223
- Date.parse(value)
224
- when :String
225
- value.to_s
226
- when :Integer
227
- value.to_i
228
- when :Float
229
- value.to_f
230
- when :BOOLEAN
231
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
232
- true
233
- else
234
- false
235
- end
236
- when :Object
237
- # generic object (usually a Hash), return directly
238
- value
239
- when /\AArray<(?<inner_type>.+)>\z/
240
- inner_type = Regexp.last_match[:inner_type]
241
- value.map { |v| _deserialize(inner_type, v) }
242
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
243
- k_type = Regexp.last_match[:k_type]
244
- v_type = Regexp.last_match[:v_type]
245
- {}.tap do |hash|
246
- value.each do |k, v|
247
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
248
- end
249
- end
250
- else # model
251
- temp_model = CyberSource.const_get(type).new
252
- temp_model.build_from_hash(value)
253
- end
254
- end
255
-
256
- # Returns the string representation of the object
257
- # @return [String] String presentation of the object
258
- def to_s
259
- to_hash.to_s
260
- end
261
-
262
- # to_body is an alias to to_hash (backward compatibility)
263
- # @return [Hash] Returns the object in the form of hash
264
- def to_body
265
- to_hash
266
- end
267
-
268
- # Returns the object in the form of hash
269
- # @return [Hash] Returns the object in the form of hash
270
- def to_hash
271
- hash = {}
272
- self.class.attribute_map.each_pair do |attr, param|
273
- value = self.send(attr)
274
- next if value.nil?
275
- hash[param] = _to_hash(value)
276
- end
277
- hash
278
- end
279
-
280
- # Outputs non-array value in the form of hash
281
- # For object, use to_hash. Otherwise, just return the value
282
- # @param [Object] value Any valid value
283
- # @return [Hash] Returns the value in the form of hash
284
- def _to_hash(value)
285
- if value.is_a?(Array)
286
- value.compact.map { |v| _to_hash(v) }
287
- elsif value.is_a?(Hash)
288
- {}.tap do |hash|
289
- value.each { |k, v| hash[k] = _to_hash(v) }
290
- end
291
- elsif value.respond_to? :to_hash
292
- value.to_hash
293
- else
294
- value
295
- end
296
- end
297
- end
298
- end
1
+ =begin
2
+ #CyberSource Merged Spec
3
+
4
+ #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
+
6
+ OpenAPI spec version: 0.0.1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.38
10
+ =end
11
+
12
+ require 'date'
13
+
14
+ module CyberSource
15
+ class Ptsv2paymentsSenderInformation
16
+ # First name of the sender. This field is applicable for AFT and OCT transactions. Only alpha numeric values are supported.Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to the processor.
17
+ attr_accessor :first_name
18
+
19
+ # Middle name of the sender. This field is applicable for AFT and OCT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor.
20
+ attr_accessor :middle_name
21
+
22
+ # Last name of the sender. This field is applicable for AFT and OCT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set, are not supported and will be stripped before being sent to sent to the processor.
23
+ attr_accessor :last_name
24
+
25
+ # The street address of the sender. This field is applicable for AFT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to sent to the processor.
26
+ attr_accessor :address1
27
+
28
+ # The city or locality of the sender. This field is applicable for AFT transactions. Only alpha numeric values are supported. Special characters not in the standard ASCII character set are not supported and will be stripped before being sent to sent to the processor.
29
+ attr_accessor :locality
30
+
31
+ # The state or province of the sender. This field is applicable for AFT transactions when the sender country is US or CA. Else it is optional. Must be a two character value
32
+ attr_accessor :administrative_area
33
+
34
+ # The country associated with the address of the sender. This field is applicable for AFT transactions. Must be a two character ISO country code. For example, see [ISO Country Code](https://developer.cybersource.com/docs/cybs/en-us/country-codes/reference/all/na/country-codes/country-codes.html)
35
+ attr_accessor :country_code
36
+
37
+ # Attribute mapping from ruby-style variable name to JSON key.
38
+ def self.attribute_map
39
+ {
40
+ :'first_name' => :'firstName',
41
+ :'middle_name' => :'middleName',
42
+ :'last_name' => :'lastName',
43
+ :'address1' => :'address1',
44
+ :'locality' => :'locality',
45
+ :'administrative_area' => :'administrativeArea',
46
+ :'country_code' => :'countryCode'
47
+ }
48
+ end
49
+
50
+ # Attribute mapping from JSON key to ruby-style variable name.
51
+ def self.json_map
52
+ {
53
+ :'first_name' => :'first_name',
54
+ :'middle_name' => :'middle_name',
55
+ :'last_name' => :'last_name',
56
+ :'address1' => :'address1',
57
+ :'locality' => :'locality',
58
+ :'administrative_area' => :'administrative_area',
59
+ :'country_code' => :'country_code'
60
+ }
61
+ end
62
+
63
+ # Attribute type mapping.
64
+ def self.swagger_types
65
+ {
66
+ :'first_name' => :'String',
67
+ :'middle_name' => :'String',
68
+ :'last_name' => :'String',
69
+ :'address1' => :'String',
70
+ :'locality' => :'String',
71
+ :'administrative_area' => :'String',
72
+ :'country_code' => :'String'
73
+ }
74
+ end
75
+
76
+ # Initializes the object
77
+ # @param [Hash] attributes Model attributes in the form of hash
78
+ def initialize(attributes = {})
79
+ return unless attributes.is_a?(Hash)
80
+
81
+ # convert string to symbol for hash key
82
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
83
+
84
+ if attributes.has_key?(:'firstName')
85
+ self.first_name = attributes[:'firstName']
86
+ end
87
+
88
+ if attributes.has_key?(:'middleName')
89
+ self.middle_name = attributes[:'middleName']
90
+ end
91
+
92
+ if attributes.has_key?(:'lastName')
93
+ self.last_name = attributes[:'lastName']
94
+ end
95
+
96
+ if attributes.has_key?(:'address1')
97
+ self.address1 = attributes[:'address1']
98
+ end
99
+
100
+ if attributes.has_key?(:'locality')
101
+ self.locality = attributes[:'locality']
102
+ end
103
+
104
+ if attributes.has_key?(:'administrativeArea')
105
+ self.administrative_area = attributes[:'administrativeArea']
106
+ end
107
+
108
+ if attributes.has_key?(:'countryCode')
109
+ self.country_code = attributes[:'countryCode']
110
+ end
111
+ end
112
+
113
+ # Show invalid properties with the reasons. Usually used together with valid?
114
+ # @return Array for valid properties with the reasons
115
+ def list_invalid_properties
116
+ invalid_properties = Array.new
117
+ invalid_properties
118
+ end
119
+
120
+ # Check to see if the all the properties in the model are valid
121
+ # @return true if the model is valid
122
+ def valid?
123
+ true
124
+ end
125
+
126
+ # Custom attribute writer method with validation
127
+ # @param [Object] first_name Value to be assigned
128
+ def first_name=(first_name)
129
+ @first_name = first_name
130
+ end
131
+
132
+ # Custom attribute writer method with validation
133
+ # @param [Object] middle_name Value to be assigned
134
+ def middle_name=(middle_name)
135
+ @middle_name = middle_name
136
+ end
137
+
138
+ # Custom attribute writer method with validation
139
+ # @param [Object] last_name Value to be assigned
140
+ def last_name=(last_name)
141
+ @last_name = last_name
142
+ end
143
+
144
+ # Custom attribute writer method with validation
145
+ # @param [Object] address1 Value to be assigned
146
+ def address1=(address1)
147
+ @address1 = address1
148
+ end
149
+
150
+ # Custom attribute writer method with validation
151
+ # @param [Object] locality Value to be assigned
152
+ def locality=(locality)
153
+ @locality = locality
154
+ end
155
+
156
+ # Custom attribute writer method with validation
157
+ # @param [Object] administrative_area Value to be assigned
158
+ def administrative_area=(administrative_area)
159
+ @administrative_area = administrative_area
160
+ end
161
+
162
+ # Custom attribute writer method with validation
163
+ # @param [Object] country_code Value to be assigned
164
+ def country_code=(country_code)
165
+ @country_code = country_code
166
+ end
167
+
168
+ # Checks equality by comparing each attribute.
169
+ # @param [Object] Object to be compared
170
+ def ==(o)
171
+ return true if self.equal?(o)
172
+ self.class == o.class &&
173
+ first_name == o.first_name &&
174
+ middle_name == o.middle_name &&
175
+ last_name == o.last_name &&
176
+ address1 == o.address1 &&
177
+ locality == o.locality &&
178
+ administrative_area == o.administrative_area &&
179
+ country_code == o.country_code
180
+ end
181
+
182
+ # @see the `==` method
183
+ # @param [Object] Object to be compared
184
+ def eql?(o)
185
+ self == o
186
+ end
187
+
188
+ # Calculates hash code according to all attributes.
189
+ # @return [Fixnum] Hash code
190
+ def hash
191
+ [first_name, middle_name, last_name, address1, locality, administrative_area, country_code].hash
192
+ end
193
+
194
+ # Builds the object from hash
195
+ # @param [Hash] attributes Model attributes in the form of hash
196
+ # @return [Object] Returns the model itself
197
+ def build_from_hash(attributes)
198
+ return nil unless attributes.is_a?(Hash)
199
+ self.class.swagger_types.each_pair do |key, type|
200
+ if type =~ /\AArray<(.*)>/i
201
+ # check to ensure the input is an array given that the the attribute
202
+ # is documented as an array but the input is not
203
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
204
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
205
+ end
206
+ elsif !attributes[self.class.attribute_map[key]].nil?
207
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
208
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
209
+ end
210
+
211
+ self
212
+ end
213
+
214
+ # Deserializes the data based on type
215
+ # @param string type Data type
216
+ # @param string value Value to be deserialized
217
+ # @return [Object] Deserialized data
218
+ def _deserialize(type, value)
219
+ case type.to_sym
220
+ when :DateTime
221
+ DateTime.parse(value)
222
+ when :Date
223
+ Date.parse(value)
224
+ when :String
225
+ value.to_s
226
+ when :Integer
227
+ value.to_i
228
+ when :Float
229
+ value.to_f
230
+ when :BOOLEAN
231
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
232
+ true
233
+ else
234
+ false
235
+ end
236
+ when :Object
237
+ # generic object (usually a Hash), return directly
238
+ value
239
+ when /\AArray<(?<inner_type>.+)>\z/
240
+ inner_type = Regexp.last_match[:inner_type]
241
+ value.map { |v| _deserialize(inner_type, v) }
242
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
243
+ k_type = Regexp.last_match[:k_type]
244
+ v_type = Regexp.last_match[:v_type]
245
+ {}.tap do |hash|
246
+ value.each do |k, v|
247
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
248
+ end
249
+ end
250
+ else # model
251
+ temp_model = CyberSource.const_get(type).new
252
+ temp_model.build_from_hash(value)
253
+ end
254
+ end
255
+
256
+ # Returns the string representation of the object
257
+ # @return [String] String presentation of the object
258
+ def to_s
259
+ to_hash.to_s
260
+ end
261
+
262
+ # to_body is an alias to to_hash (backward compatibility)
263
+ # @return [Hash] Returns the object in the form of hash
264
+ def to_body
265
+ to_hash
266
+ end
267
+
268
+ # Returns the object in the form of hash
269
+ # @return [Hash] Returns the object in the form of hash
270
+ def to_hash
271
+ hash = {}
272
+ self.class.attribute_map.each_pair do |attr, param|
273
+ value = self.send(attr)
274
+ next if value.nil?
275
+ hash[param] = _to_hash(value)
276
+ end
277
+ hash
278
+ end
279
+
280
+ # Outputs non-array value in the form of hash
281
+ # For object, use to_hash. Otherwise, just return the value
282
+ # @param [Object] value Any valid value
283
+ # @return [Hash] Returns the value in the form of hash
284
+ def _to_hash(value)
285
+ if value.is_a?(Array)
286
+ value.compact.map { |v| _to_hash(v) }
287
+ elsif value.is_a?(Hash)
288
+ {}.tap do |hash|
289
+ value.each { |k, v| hash[k] = _to_hash(v) }
290
+ end
291
+ elsif value.respond_to? :to_hash
292
+ value.to_hash
293
+ else
294
+ value
295
+ end
296
+ end
297
+ end
298
+ end