cyberSource_client 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (268) hide show
  1. checksums.yaml +5 -5
  2. data/AuthenticationSDK/Cybersource.gemspec +23 -23
  3. data/AuthenticationSDK/authentication/http/GetSignatureParameter.rb +62 -62
  4. data/AuthenticationSDK/authentication/http/HttpSignatureHeader.rb +50 -50
  5. data/AuthenticationSDK/authentication/jwt/JwtToken.rb +62 -62
  6. data/AuthenticationSDK/authentication/payloadDigest/digest.rb +10 -10
  7. data/AuthenticationSDK/core/Authorization.rb +24 -24
  8. data/AuthenticationSDK/core/ITokenGeneration.rb +4 -4
  9. data/AuthenticationSDK/core/Logger.rb +26 -26
  10. data/AuthenticationSDK/core/MerchantConfig.rb +181 -181
  11. data/AuthenticationSDK/util/ApiException.rb +18 -18
  12. data/AuthenticationSDK/util/Cache.rb +36 -36
  13. data/AuthenticationSDK/util/Constants.rb +133 -133
  14. data/AuthenticationSDK/util/PropertiesUtil.rb +21 -21
  15. data/AuthenticationSDK/util/Utility.rb +30 -30
  16. data/lib/cyberSource_client.rb +286 -286
  17. data/lib/cyberSource_client/api/capture_api.rb +133 -133
  18. data/lib/cyberSource_client/api/credit_api.rb +127 -127
  19. data/lib/cyberSource_client/api/default_api.rb +75 -75
  20. data/lib/cyberSource_client/api/instrument_identifier_api.rb +393 -393
  21. data/lib/cyberSource_client/api/key_generation_api.rb +75 -75
  22. data/lib/cyberSource_client/api/payment_api.rb +127 -127
  23. data/lib/cyberSource_client/api/payment_instrument_api.rb +312 -312
  24. data/lib/cyberSource_client/api/refund_api.rb +191 -191
  25. data/lib/cyberSource_client/api/reversal_api.rb +133 -133
  26. data/lib/cyberSource_client/api/tokenization_api.rb +71 -71
  27. data/lib/cyberSource_client/api/void_api.rb +307 -307
  28. data/lib/cyberSource_client/api_client.rb +437 -437
  29. data/lib/cyberSource_client/api_error.rb +38 -38
  30. data/lib/cyberSource_client/configuration.rb +202 -202
  31. data/lib/cyberSource_client/models/auth_reversal_request.rb +219 -219
  32. data/lib/cyberSource_client/models/body.rb +295 -295
  33. data/lib/cyberSource_client/models/body_1.rb +183 -183
  34. data/lib/cyberSource_client/models/body_2.rb +331 -331
  35. data/lib/cyberSource_client/models/body_3.rb +331 -331
  36. data/lib/cyberSource_client/models/capture_payment_request.rb +267 -267
  37. data/lib/cyberSource_client/models/card_info.rb +214 -214
  38. data/lib/cyberSource_client/models/create_credit_request.rb +267 -267
  39. data/lib/cyberSource_client/models/create_payment_request.rb +285 -285
  40. data/lib/cyberSource_client/models/der_public_key.rb +205 -205
  41. data/lib/cyberSource_client/models/error.rb +192 -192
  42. data/lib/cyberSource_client/models/error_links.rb +205 -205
  43. data/lib/cyberSource_client/models/error_response.rb +192 -192
  44. data/lib/cyberSource_client/models/generate_public_key_request.rb +184 -184
  45. data/lib/cyberSource_client/models/inline_response_200.rb +202 -202
  46. data/lib/cyberSource_client/models/inline_response_200_1.rb +255 -255
  47. data/lib/cyberSource_client/models/inline_response_200_2.rb +377 -377
  48. data/lib/cyberSource_client/models/inline_response_200_2_buyer_information.rb +270 -270
  49. data/lib/cyberSource_client/models/inline_response_200_2_device_information.rb +219 -219
  50. data/lib/cyberSource_client/models/inline_response_200_2_merchant_information.rb +233 -233
  51. data/lib/cyberSource_client/models/inline_response_200_2_order_information.rb +230 -230
  52. data/lib/cyberSource_client/models/inline_response_200_2_order_information_amount_details.rb +385 -385
  53. data/lib/cyberSource_client/models/inline_response_200_2_order_information_bill_to.rb +459 -459
  54. data/lib/cyberSource_client/models/inline_response_200_2_order_information_invoice_details.rb +315 -315
  55. data/lib/cyberSource_client/models/inline_response_200_2_order_information_line_items.rb +564 -564
  56. data/lib/cyberSource_client/models/inline_response_200_2_order_information_ship_to.rb +429 -429
  57. data/lib/cyberSource_client/models/inline_response_200_2_payment_information.rb +192 -192
  58. data/lib/cyberSource_client/models/inline_response_200_2_payment_information_card.rb +274 -274
  59. data/lib/cyberSource_client/models/inline_response_200_2_payment_information_tokenized_card.rb +299 -299
  60. data/lib/cyberSource_client/models/inline_response_200_2_processing_information.rb +199 -199
  61. data/lib/cyberSource_client/models/inline_response_200_2_processor_information.rb +227 -227
  62. data/lib/cyberSource_client/models/inline_response_200_2_processor_information_avs.rb +199 -199
  63. data/lib/cyberSource_client/models/inline_response_200_2_processor_information_card_verification.rb +199 -199
  64. data/lib/cyberSource_client/models/inline_response_200_3.rb +314 -314
  65. data/lib/cyberSource_client/models/inline_response_200_4.rb +350 -350
  66. data/lib/cyberSource_client/models/inline_response_200_4_device_information.rb +199 -199
  67. data/lib/cyberSource_client/models/inline_response_200_4_order_information.rb +230 -230
  68. data/lib/cyberSource_client/models/inline_response_200_4_order_information_amount_details.rb +360 -360
  69. data/lib/cyberSource_client/models/inline_response_200_4_order_information_invoice_details.rb +305 -305
  70. data/lib/cyberSource_client/models/inline_response_200_4_order_information_ship_to.rb +249 -249
  71. data/lib/cyberSource_client/models/inline_response_200_4_processing_information.rb +208 -208
  72. data/lib/cyberSource_client/models/inline_response_200_4_processing_information_authorization_options.rb +199 -199
  73. data/lib/cyberSource_client/models/inline_response_200_5.rb +305 -305
  74. data/lib/cyberSource_client/models/inline_response_200_6.rb +305 -305
  75. data/lib/cyberSource_client/models/inline_response_200_7.rb +295 -295
  76. data/lib/cyberSource_client/models/inline_response_200_8.rb +277 -277
  77. data/lib/cyberSource_client/models/inline_response_200_8__links.rb +219 -219
  78. data/lib/cyberSource_client/models/inline_response_200_8__links_first.rb +184 -184
  79. data/lib/cyberSource_client/models/inline_response_200_8__links_last.rb +184 -184
  80. data/lib/cyberSource_client/models/inline_response_200_8__links_next.rb +184 -184
  81. data/lib/cyberSource_client/models/inline_response_200_8__links_prev.rb +184 -184
  82. data/lib/cyberSource_client/models/inline_response_200_8__links_self.rb +184 -184
  83. data/lib/cyberSource_client/models/inline_response_200_der.rb +205 -205
  84. data/lib/cyberSource_client/models/inline_response_200_jwk.rb +225 -225
  85. data/lib/cyberSource_client/models/inline_response_201.rb +350 -350
  86. data/lib/cyberSource_client/models/inline_response_201_1.rb +332 -332
  87. data/lib/cyberSource_client/models/inline_response_201_1_authorization_information.rb +224 -224
  88. data/lib/cyberSource_client/models/inline_response_201_1_processor_information.rb +324 -324
  89. data/lib/cyberSource_client/models/inline_response_201_1_reversal_amount_details.rb +249 -249
  90. data/lib/cyberSource_client/models/inline_response_201_2.rb +314 -314
  91. data/lib/cyberSource_client/models/inline_response_201_2__links.rb +201 -201
  92. data/lib/cyberSource_client/models/inline_response_201_2_order_information.rb +192 -192
  93. data/lib/cyberSource_client/models/inline_response_201_2_order_information_amount_details.rb +224 -224
  94. data/lib/cyberSource_client/models/inline_response_201_2_processor_information.rb +199 -199
  95. data/lib/cyberSource_client/models/inline_response_201_3.rb +323 -323
  96. data/lib/cyberSource_client/models/inline_response_201_3__links.rb +192 -192
  97. data/lib/cyberSource_client/models/inline_response_201_3_order_information.rb +183 -183
  98. data/lib/cyberSource_client/models/inline_response_201_3_processor_information.rb +224 -224
  99. data/lib/cyberSource_client/models/inline_response_201_3_refund_amount_details.rb +224 -224
  100. data/lib/cyberSource_client/models/inline_response_201_4.rb +323 -323
  101. data/lib/cyberSource_client/models/inline_response_201_4_credit_amount_details.rb +224 -224
  102. data/lib/cyberSource_client/models/inline_response_201_5.rb +280 -280
  103. data/lib/cyberSource_client/models/inline_response_201_5_void_amount_details.rb +219 -219
  104. data/lib/cyberSource_client/models/inline_response_201_6.rb +331 -331
  105. data/lib/cyberSource_client/models/inline_response_201__embedded.rb +183 -183
  106. data/lib/cyberSource_client/models/inline_response_201__embedded_capture.rb +193 -193
  107. data/lib/cyberSource_client/models/inline_response_201__embedded_capture__links.rb +183 -183
  108. data/lib/cyberSource_client/models/inline_response_201__links.rb +201 -201
  109. data/lib/cyberSource_client/models/inline_response_201__links_self.rb +194 -194
  110. data/lib/cyberSource_client/models/inline_response_201_client_reference_information.rb +199 -199
  111. data/lib/cyberSource_client/models/inline_response_201_error_information.rb +239 -239
  112. data/lib/cyberSource_client/models/inline_response_201_error_information_details.rb +228 -228
  113. data/lib/cyberSource_client/models/inline_response_201_order_information.rb +192 -192
  114. data/lib/cyberSource_client/models/inline_response_201_order_information_amount_details.rb +249 -249
  115. data/lib/cyberSource_client/models/inline_response_201_order_information_invoice_details.rb +184 -184
  116. data/lib/cyberSource_client/models/inline_response_201_payment_information.rb +201 -201
  117. data/lib/cyberSource_client/models/inline_response_201_payment_information_account_features.rb +623 -623
  118. data/lib/cyberSource_client/models/inline_response_201_payment_information_card.rb +199 -199
  119. data/lib/cyberSource_client/models/inline_response_201_payment_information_tokenized_card.rb +349 -349
  120. data/lib/cyberSource_client/models/inline_response_201_point_of_sale_information.rb +208 -208
  121. data/lib/cyberSource_client/models/inline_response_201_point_of_sale_information_emv.rb +199 -199
  122. data/lib/cyberSource_client/models/inline_response_201_processor_information.rb +642 -642
  123. data/lib/cyberSource_client/models/inline_response_201_processor_information_avs.rb +224 -224
  124. data/lib/cyberSource_client/models/inline_response_201_processor_information_card_verification.rb +224 -224
  125. data/lib/cyberSource_client/models/inline_response_201_processor_information_consumer_authentication_response.rb +224 -224
  126. data/lib/cyberSource_client/models/inline_response_201_processor_information_customer.rb +199 -199
  127. data/lib/cyberSource_client/models/inline_response_201_processor_information_electronic_verification_results.rb +474 -474
  128. data/lib/cyberSource_client/models/inline_response_201_processor_information_issuer.rb +224 -224
  129. data/lib/cyberSource_client/models/inline_response_201_processor_information_merchant_advice.rb +224 -224
  130. data/lib/cyberSource_client/models/inline_response_400.rb +271 -271
  131. data/lib/cyberSource_client/models/inline_response_400_1.rb +271 -271
  132. data/lib/cyberSource_client/models/inline_response_400_2.rb +271 -271
  133. data/lib/cyberSource_client/models/inline_response_400_3.rb +271 -271
  134. data/lib/cyberSource_client/models/inline_response_400_4.rb +271 -271
  135. data/lib/cyberSource_client/models/inline_response_400_5.rb +259 -259
  136. data/lib/cyberSource_client/models/inline_response_400_6.rb +202 -202
  137. data/lib/cyberSource_client/models/inline_response_409.rb +183 -183
  138. data/lib/cyberSource_client/models/inline_response_409__links.rb +183 -183
  139. data/lib/cyberSource_client/models/inline_response_409__links_payment_instruments.rb +183 -183
  140. data/lib/cyberSource_client/models/inline_response_502.rb +260 -260
  141. data/lib/cyberSource_client/models/inline_response_default.rb +192 -192
  142. data/lib/cyberSource_client/models/inline_response_default__links.rb +205 -205
  143. data/lib/cyberSource_client/models/inline_response_default__links_next.rb +204 -204
  144. data/lib/cyberSource_client/models/inline_response_default_response_status.rb +225 -225
  145. data/lib/cyberSource_client/models/inline_response_default_response_status_details.rb +194 -194
  146. data/lib/cyberSource_client/models/instrumentidentifiers__links.rb +201 -201
  147. data/lib/cyberSource_client/models/instrumentidentifiers__links_self.rb +183 -183
  148. data/lib/cyberSource_client/models/instrumentidentifiers_authorization_options_merchant_initiated_transaction.rb +184 -184
  149. data/lib/cyberSource_client/models/instrumentidentifiers_bank_account.rb +194 -194
  150. data/lib/cyberSource_client/models/instrumentidentifiers_card.rb +184 -184
  151. data/lib/cyberSource_client/models/instrumentidentifiers_details.rb +194 -194
  152. data/lib/cyberSource_client/models/instrumentidentifiers_metadata.rb +184 -184
  153. data/lib/cyberSource_client/models/instrumentidentifiers_processing_information.rb +183 -183
  154. data/lib/cyberSource_client/models/instrumentidentifiers_processing_information_authorization_options.rb +183 -183
  155. data/lib/cyberSource_client/models/instrumentidentifiers_processing_information_authorization_options_initiator.rb +183 -183
  156. data/lib/cyberSource_client/models/json_web_key.rb +225 -225
  157. data/lib/cyberSource_client/models/key_parameters.rb +184 -184
  158. data/lib/cyberSource_client/models/key_result.rb +202 -202
  159. data/lib/cyberSource_client/models/link.rb +204 -204
  160. data/lib/cyberSource_client/models/links.rb +205 -205
  161. data/lib/cyberSource_client/models/oct_create_payment_request.rb +237 -237
  162. data/lib/cyberSource_client/models/paymentinstruments_bank_account.rb +184 -184
  163. data/lib/cyberSource_client/models/paymentinstruments_bill_to.rb +284 -284
  164. data/lib/cyberSource_client/models/paymentinstruments_buyer_information.rb +215 -215
  165. data/lib/cyberSource_client/models/paymentinstruments_buyer_information_issued_by.rb +184 -184
  166. data/lib/cyberSource_client/models/paymentinstruments_buyer_information_personal_identification.rb +203 -203
  167. data/lib/cyberSource_client/models/paymentinstruments_card.rb +278 -278
  168. data/lib/cyberSource_client/models/paymentinstruments_instrument_identifier.rb +295 -295
  169. data/lib/cyberSource_client/models/paymentinstruments_merchant_information.rb +183 -183
  170. data/lib/cyberSource_client/models/paymentinstruments_merchant_information_merchant_descriptor.rb +184 -184
  171. data/lib/cyberSource_client/models/paymentinstruments_processing_information.rb +193 -193
  172. data/lib/cyberSource_client/models/paymentinstruments_processing_information_bank_transfer_options.rb +184 -184
  173. data/lib/cyberSource_client/models/paymentsflexv1tokens_card_info.rb +214 -214
  174. data/lib/cyberSource_client/models/refund_capture_request.rb +267 -267
  175. data/lib/cyberSource_client/models/refund_payment_request.rb +267 -267
  176. data/lib/cyberSource_client/models/response_status.rb +225 -225
  177. data/lib/cyberSource_client/models/response_status_details.rb +194 -194
  178. data/lib/cyberSource_client/models/tokenize_parameters.rb +193 -193
  179. data/lib/cyberSource_client/models/tokenize_request.rb +193 -193
  180. data/lib/cyberSource_client/models/tokenize_result.rb +255 -255
  181. data/lib/cyberSource_client/models/v2credits_point_of_sale_information.rb +183 -183
  182. data/lib/cyberSource_client/models/v2credits_point_of_sale_information_emv.rb +221 -221
  183. data/lib/cyberSource_client/models/v2credits_processing_information.rb +383 -383
  184. data/lib/cyberSource_client/models/v2payments_aggregator_information.rb +233 -233
  185. data/lib/cyberSource_client/models/v2payments_aggregator_information_sub_merchant.rb +424 -424
  186. data/lib/cyberSource_client/models/v2payments_buyer_information.rb +285 -285
  187. data/lib/cyberSource_client/models/v2payments_buyer_information_personal_identification.rb +252 -252
  188. data/lib/cyberSource_client/models/v2payments_client_reference_information.rb +219 -219
  189. data/lib/cyberSource_client/models/v2payments_consumer_authentication_information.rb +374 -374
  190. data/lib/cyberSource_client/models/v2payments_device_information.rb +249 -249
  191. data/lib/cyberSource_client/models/v2payments_merchant_defined_information.rb +224 -224
  192. data/lib/cyberSource_client/models/v2payments_merchant_information.rb +308 -308
  193. data/lib/cyberSource_client/models/v2payments_merchant_information_merchant_descriptor.rb +374 -374
  194. data/lib/cyberSource_client/models/v2payments_order_information.rb +230 -230
  195. data/lib/cyberSource_client/models/v2payments_order_information_amount_details.rb +605 -605
  196. data/lib/cyberSource_client/models/v2payments_order_information_amount_details_amex_additional_amounts.rb +224 -224
  197. data/lib/cyberSource_client/models/v2payments_order_information_amount_details_surcharge.rb +209 -209
  198. data/lib/cyberSource_client/models/v2payments_order_information_amount_details_tax_details.rb +328 -328
  199. data/lib/cyberSource_client/models/v2payments_order_information_bill_to.rb +618 -618
  200. data/lib/cyberSource_client/models/v2payments_order_information_invoice_details.rb +330 -330
  201. data/lib/cyberSource_client/models/v2payments_order_information_invoice_details_transaction_advice_addendum.rb +199 -199
  202. data/lib/cyberSource_client/models/v2payments_order_information_line_items.rb +649 -649
  203. data/lib/cyberSource_client/models/v2payments_order_information_ship_to.rb +474 -474
  204. data/lib/cyberSource_client/models/v2payments_order_information_shipping_details.rb +234 -234
  205. data/lib/cyberSource_client/models/v2payments_payment_information.rb +210 -210
  206. data/lib/cyberSource_client/models/v2payments_payment_information_card.rb +474 -474
  207. data/lib/cyberSource_client/models/v2payments_payment_information_customer.rb +202 -202
  208. data/lib/cyberSource_client/models/v2payments_payment_information_fluid_data.rb +259 -259
  209. data/lib/cyberSource_client/models/v2payments_payment_information_tokenized_card.rb +424 -424
  210. data/lib/cyberSource_client/models/v2payments_point_of_sale_information.rb +440 -440
  211. data/lib/cyberSource_client/models/v2payments_point_of_sale_information_emv.rb +256 -256
  212. data/lib/cyberSource_client/models/v2payments_processing_information.rb +432 -432
  213. data/lib/cyberSource_client/models/v2payments_processing_information_authorization_options.rb +361 -361
  214. data/lib/cyberSource_client/models/v2payments_processing_information_authorization_options_initiator.rb +247 -247
  215. data/lib/cyberSource_client/models/{v2payments_processing_information_authorization_options_initiator_merchant_initiated_transaction.rb → v2payments_processing_information_authorization_options_merchant_initiated_transaction.rb} +224 -224
  216. data/lib/cyberSource_client/models/v2payments_processing_information_capture_options.rb +267 -267
  217. data/lib/cyberSource_client/models/v2payments_processing_information_issuer.rb +199 -199
  218. data/lib/cyberSource_client/models/v2payments_processing_information_recurring_options.rb +198 -198
  219. data/lib/cyberSource_client/models/v2payments_recipient_information.rb +249 -249
  220. data/lib/cyberSource_client/models/v2paymentsidcaptures_aggregator_information.rb +233 -233
  221. data/lib/cyberSource_client/models/v2paymentsidcaptures_aggregator_information_sub_merchant.rb +374 -374
  222. data/lib/cyberSource_client/models/v2paymentsidcaptures_buyer_information.rb +224 -224
  223. data/lib/cyberSource_client/models/v2paymentsidcaptures_merchant_information.rb +258 -258
  224. data/lib/cyberSource_client/models/v2paymentsidcaptures_order_information.rb +230 -230
  225. data/lib/cyberSource_client/models/v2paymentsidcaptures_order_information_amount_details.rb +546 -546
  226. data/lib/cyberSource_client/models/v2paymentsidcaptures_order_information_bill_to.rb +449 -449
  227. data/lib/cyberSource_client/models/v2paymentsidcaptures_order_information_invoice_details.rb +320 -320
  228. data/lib/cyberSource_client/models/v2paymentsidcaptures_order_information_ship_to.rb +249 -249
  229. data/lib/cyberSource_client/models/v2paymentsidcaptures_order_information_shipping_details.rb +199 -199
  230. data/lib/cyberSource_client/models/v2paymentsidcaptures_payment_information.rb +183 -183
  231. data/lib/cyberSource_client/models/v2paymentsidcaptures_point_of_sale_information.rb +208 -208
  232. data/lib/cyberSource_client/models/v2paymentsidcaptures_point_of_sale_information_emv.rb +211 -211
  233. data/lib/cyberSource_client/models/v2paymentsidcaptures_processing_information.rb +351 -351
  234. data/lib/cyberSource_client/models/v2paymentsidcaptures_processing_information_authorization_options.rb +249 -249
  235. data/lib/cyberSource_client/models/v2paymentsidcaptures_processing_information_capture_options.rb +242 -242
  236. data/lib/cyberSource_client/models/v2paymentsidrefunds_merchant_information.rb +258 -258
  237. data/lib/cyberSource_client/models/v2paymentsidrefunds_order_information.rb +230 -230
  238. data/lib/cyberSource_client/models/v2paymentsidrefunds_order_information_line_items.rb +639 -639
  239. data/lib/cyberSource_client/models/v2paymentsidrefunds_payment_information.rb +183 -183
  240. data/lib/cyberSource_client/models/v2paymentsidrefunds_payment_information_card.rb +374 -374
  241. data/lib/cyberSource_client/models/v2paymentsidrefunds_point_of_sale_information.rb +183 -183
  242. data/lib/cyberSource_client/models/v2paymentsidrefunds_processing_information.rb +333 -333
  243. data/lib/cyberSource_client/models/v2paymentsidrefunds_processing_information_recurring_options.rb +186 -186
  244. data/lib/cyberSource_client/models/v2paymentsidreversals_client_reference_information.rb +209 -209
  245. data/lib/cyberSource_client/models/v2paymentsidreversals_order_information.rb +185 -185
  246. data/lib/cyberSource_client/models/v2paymentsidreversals_order_information_line_items.rb +233 -233
  247. data/lib/cyberSource_client/models/v2paymentsidreversals_point_of_sale_information.rb +183 -183
  248. data/lib/cyberSource_client/models/v2paymentsidreversals_processing_information.rb +308 -308
  249. data/lib/cyberSource_client/models/v2paymentsidreversals_reversal_information.rb +211 -211
  250. data/lib/cyberSource_client/models/v2paymentsidreversals_reversal_information_amount_details.rb +224 -224
  251. data/lib/cyberSource_client/models/v2payouts_merchant_information.rb +258 -258
  252. data/lib/cyberSource_client/models/v2payouts_merchant_information_merchant_descriptor.rb +324 -324
  253. data/lib/cyberSource_client/models/v2payouts_order_information.rb +192 -192
  254. data/lib/cyberSource_client/models/v2payouts_order_information_amount_details.rb +249 -249
  255. data/lib/cyberSource_client/models/v2payouts_order_information_bill_to.rb +443 -443
  256. data/lib/cyberSource_client/models/v2payouts_payment_information.rb +183 -183
  257. data/lib/cyberSource_client/models/v2payouts_payment_information_card.rb +299 -299
  258. data/lib/cyberSource_client/models/v2payouts_processing_information.rb +283 -283
  259. data/lib/cyberSource_client/models/v2payouts_processing_information_payouts_options.rb +274 -274
  260. data/lib/cyberSource_client/models/v2payouts_recipient_information.rb +433 -433
  261. data/lib/cyberSource_client/models/v2payouts_sender_information.rb +517 -517
  262. data/lib/cyberSource_client/models/v2payouts_sender_information_account.rb +233 -233
  263. data/lib/cyberSource_client/models/void_capture_request.rb +183 -183
  264. data/lib/cyberSource_client/models/void_credit_request.rb +183 -183
  265. data/lib/cyberSource_client/models/void_payment_request.rb +183 -183
  266. data/lib/cyberSource_client/models/void_refund_request.rb +183 -183
  267. data/lib/cyberSource_client/version.rb +15 -15
  268. metadata +4 -4
@@ -1,443 +1,443 @@
1
- =begin
2
- #CyberSource Flex API
3
-
4
- #Simple PAN tokenization service
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.2.3
10
-
11
- =end
12
-
13
- require 'date'
14
-
15
- module CyberSource
16
- class V2payoutsOrderInformationBillTo
17
- # Customer’s first name. This name must be the same as the name on the card. For Payouts: This field may be sent only for FDC Compass. For processor-specific information, see the customer_firstname field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
18
- attr_accessor :first_name
19
-
20
- # Customer’s last name. This name must be the same as the name on the card. For Payouts: This field may be sent only for FDC Compass. For processor-specific information, see the customer_lastname field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
21
- attr_accessor :last_name
22
-
23
- # First line of the billing street address as it appears on the credit card issuer’s records. For Payouts: This field may be sent only for FDC Compass. For processor-specific information, see the bill_address1 field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
24
- attr_accessor :address1
25
-
26
- # Additional address information. For Payouts: This field may be sent only for FDC Compass. For processor-specific information, see the bill_address2 field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
27
- attr_accessor :address2
28
-
29
- # Country of the billing address. Use the two-character ISO Standard Country Codes. For processor-specific information, see the bill_country field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
30
- attr_accessor :country
31
-
32
- # City of the billing address. For Payouts: This field may be sent only for FDC Compass. For processor-specific information, see the bill_city field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
33
- attr_accessor :locality
34
-
35
- # State or province of the billing address. Use the State, Province, and Territory Codes for the United States and Canada. For Payouts: This field may be sent only for FDC Compass. For processor-specific information, see the bill_state field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
36
- attr_accessor :administrative_area
37
-
38
- # Postal code for the billing address. The postal code must consist of 5 to 9 digits. When the billing country is the U.S., the 9-digit postal code must follow this format: [5 digits][dash][4 digits] Example 12345-6789 When the billing country is Canada, the 6-digit postal code must follow this format: [alpha][numeric][alpha][space][numeric][alpha][numeric] Example A1B 2C3 For Payouts: This field may be sent only for FDC Compass. For processor-specific information, see the bill_zip field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
39
- attr_accessor :postal_code
40
-
41
- # Customer’s phone number. For Payouts: This field may be sent only for FDC Compass. CyberSource recommends that you include the country code when the order is from outside the U.S. For processor-specific information, see the customer_phone field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
42
- attr_accessor :phone_number
43
-
44
- # Customer's phone number type. For Payouts: This field may be sent only for FDC Compass. Possible Values - * day * home * night * work
45
- attr_accessor :phone_type
46
-
47
- class EnumAttributeValidator
48
- attr_reader :datatype
49
- attr_reader :allowable_values
50
-
51
- def initialize(datatype, allowable_values)
52
- @allowable_values = allowable_values.map do |value|
53
- case datatype.to_s
54
- when /Integer/i
55
- value.to_i
56
- when /Float/i
57
- value.to_f
58
- else
59
- value
60
- end
61
- end
62
- end
63
-
64
- def valid?(value)
65
- !value || allowable_values.include?(value)
66
- end
67
- end
68
-
69
- # Attribute mapping from ruby-style variable name to JSON key.
70
- def self.attribute_map
71
- {
72
- :'first_name' => :'firstName',
73
- :'last_name' => :'lastName',
74
- :'address1' => :'address1',
75
- :'address2' => :'address2',
76
- :'country' => :'country',
77
- :'locality' => :'locality',
78
- :'administrative_area' => :'administrativeArea',
79
- :'postal_code' => :'postalCode',
80
- :'phone_number' => :'phoneNumber',
81
- :'phone_type' => :'phoneType'
82
- }
83
- end
84
-
85
- # Attribute type mapping.
86
- def self.swagger_types
87
- {
88
- :'first_name' => :'String',
89
- :'last_name' => :'String',
90
- :'address1' => :'String',
91
- :'address2' => :'String',
92
- :'country' => :'String',
93
- :'locality' => :'String',
94
- :'administrative_area' => :'String',
95
- :'postal_code' => :'String',
96
- :'phone_number' => :'String',
97
- :'phone_type' => :'String'
98
- }
99
- end
100
-
101
- # Initializes the object
102
- # @param [Hash] attributes Model attributes in the form of hash
103
- def initialize(attributes = {})
104
- return unless attributes.is_a?(Hash)
105
-
106
- # convert string to symbol for hash key
107
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
108
-
109
- if attributes.has_key?(:'firstName')
110
- self.first_name = attributes[:'firstName']
111
- end
112
-
113
- if attributes.has_key?(:'lastName')
114
- self.last_name = attributes[:'lastName']
115
- end
116
-
117
- if attributes.has_key?(:'address1')
118
- self.address1 = attributes[:'address1']
119
- end
120
-
121
- if attributes.has_key?(:'address2')
122
- self.address2 = attributes[:'address2']
123
- end
124
-
125
- if attributes.has_key?(:'country')
126
- self.country = attributes[:'country']
127
- end
128
-
129
- if attributes.has_key?(:'locality')
130
- self.locality = attributes[:'locality']
131
- end
132
-
133
- if attributes.has_key?(:'administrativeArea')
134
- self.administrative_area = attributes[:'administrativeArea']
135
- end
136
-
137
- if attributes.has_key?(:'postalCode')
138
- self.postal_code = attributes[:'postalCode']
139
- end
140
-
141
- if attributes.has_key?(:'phoneNumber')
142
- self.phone_number = attributes[:'phoneNumber']
143
- end
144
-
145
- if attributes.has_key?(:'phoneType')
146
- self.phone_type = attributes[:'phoneType']
147
- end
148
- end
149
-
150
- # Show invalid properties with the reasons. Usually used together with valid?
151
- # @return Array for valid properties with the reasons
152
- def list_invalid_properties
153
- invalid_properties = Array.new
154
- if !@first_name.nil? && @first_name.to_s.length > 60
155
- invalid_properties.push('invalid value for "first_name", the character length must be smaller than or equal to 60.')
156
- end
157
-
158
- if !@last_name.nil? && @last_name.to_s.length > 60
159
- invalid_properties.push('invalid value for "last_name", the character length must be smaller than or equal to 60.')
160
- end
161
-
162
- if !@address1.nil? && @address1.to_s.length > 60
163
- invalid_properties.push('invalid value for "address1", the character length must be smaller than or equal to 60.')
164
- end
165
-
166
- if !@address2.nil? && @address2.to_s.length > 60
167
- invalid_properties.push('invalid value for "address2", the character length must be smaller than or equal to 60.')
168
- end
169
-
170
- if !@country.nil? && @country.to_s.length > 2
171
- invalid_properties.push('invalid value for "country", the character length must be smaller than or equal to 2.')
172
- end
173
-
174
- if !@locality.nil? && @locality.to_s.length > 50
175
- invalid_properties.push('invalid value for "locality", the character length must be smaller than or equal to 50.')
176
- end
177
-
178
- if !@administrative_area.nil? && @administrative_area.to_s.length > 2
179
- invalid_properties.push('invalid value for "administrative_area", the character length must be smaller than or equal to 2.')
180
- end
181
-
182
- if !@postal_code.nil? && @postal_code.to_s.length > 10
183
- invalid_properties.push('invalid value for "postal_code", the character length must be smaller than or equal to 10.')
184
- end
185
-
186
- if !@phone_number.nil? && @phone_number.to_s.length > 15
187
- invalid_properties.push('invalid value for "phone_number", the character length must be smaller than or equal to 15.')
188
- end
189
-
190
- invalid_properties
191
- end
192
-
193
- # Check to see if the all the properties in the model are valid
194
- # @return true if the model is valid
195
- def valid?
196
- return false if !@first_name.nil? && @first_name.to_s.length > 60
197
- return false if !@last_name.nil? && @last_name.to_s.length > 60
198
- return false if !@address1.nil? && @address1.to_s.length > 60
199
- return false if !@address2.nil? && @address2.to_s.length > 60
200
- return false if !@country.nil? && @country.to_s.length > 2
201
- return false if !@locality.nil? && @locality.to_s.length > 50
202
- return false if !@administrative_area.nil? && @administrative_area.to_s.length > 2
203
- return false if !@postal_code.nil? && @postal_code.to_s.length > 10
204
- return false if !@phone_number.nil? && @phone_number.to_s.length > 15
205
- phone_type_validator = EnumAttributeValidator.new('String', ['day', 'home', 'night', 'work'])
206
- return false unless phone_type_validator.valid?(@phone_type)
207
- true
208
- end
209
-
210
- # Custom attribute writer method with validation
211
- # @param [Object] first_name Value to be assigned
212
- def first_name=(first_name)
213
- if !first_name.nil? && first_name.to_s.length > 60
214
- fail ArgumentError, 'invalid value for "first_name", the character length must be smaller than or equal to 60.'
215
- end
216
-
217
- @first_name = first_name
218
- end
219
-
220
- # Custom attribute writer method with validation
221
- # @param [Object] last_name Value to be assigned
222
- def last_name=(last_name)
223
- if !last_name.nil? && last_name.to_s.length > 60
224
- fail ArgumentError, 'invalid value for "last_name", the character length must be smaller than or equal to 60.'
225
- end
226
-
227
- @last_name = last_name
228
- end
229
-
230
- # Custom attribute writer method with validation
231
- # @param [Object] address1 Value to be assigned
232
- def address1=(address1)
233
- if !address1.nil? && address1.to_s.length > 60
234
- fail ArgumentError, 'invalid value for "address1", the character length must be smaller than or equal to 60.'
235
- end
236
-
237
- @address1 = address1
238
- end
239
-
240
- # Custom attribute writer method with validation
241
- # @param [Object] address2 Value to be assigned
242
- def address2=(address2)
243
- if !address2.nil? && address2.to_s.length > 60
244
- fail ArgumentError, 'invalid value for "address2", the character length must be smaller than or equal to 60.'
245
- end
246
-
247
- @address2 = address2
248
- end
249
-
250
- # Custom attribute writer method with validation
251
- # @param [Object] country Value to be assigned
252
- def country=(country)
253
- if !country.nil? && country.to_s.length > 2
254
- fail ArgumentError, 'invalid value for "country", the character length must be smaller than or equal to 2.'
255
- end
256
-
257
- @country = country
258
- end
259
-
260
- # Custom attribute writer method with validation
261
- # @param [Object] locality Value to be assigned
262
- def locality=(locality)
263
- if !locality.nil? && locality.to_s.length > 50
264
- fail ArgumentError, 'invalid value for "locality", the character length must be smaller than or equal to 50.'
265
- end
266
-
267
- @locality = locality
268
- end
269
-
270
- # Custom attribute writer method with validation
271
- # @param [Object] administrative_area Value to be assigned
272
- def administrative_area=(administrative_area)
273
- if !administrative_area.nil? && administrative_area.to_s.length > 2
274
- fail ArgumentError, 'invalid value for "administrative_area", the character length must be smaller than or equal to 2.'
275
- end
276
-
277
- @administrative_area = administrative_area
278
- end
279
-
280
- # Custom attribute writer method with validation
281
- # @param [Object] postal_code Value to be assigned
282
- def postal_code=(postal_code)
283
- if !postal_code.nil? && postal_code.to_s.length > 10
284
- fail ArgumentError, 'invalid value for "postal_code", the character length must be smaller than or equal to 10.'
285
- end
286
-
287
- @postal_code = postal_code
288
- end
289
-
290
- # Custom attribute writer method with validation
291
- # @param [Object] phone_number Value to be assigned
292
- def phone_number=(phone_number)
293
- if !phone_number.nil? && phone_number.to_s.length > 15
294
- fail ArgumentError, 'invalid value for "phone_number", the character length must be smaller than or equal to 15.'
295
- end
296
-
297
- @phone_number = phone_number
298
- end
299
-
300
- # Custom attribute writer method checking allowed values (enum).
301
- # @param [Object] phone_type Object to be assigned
302
- def phone_type=(phone_type)
303
- validator = EnumAttributeValidator.new('String', ['day', 'home', 'night', 'work'])
304
- unless validator.valid?(phone_type)
305
- fail ArgumentError, 'invalid value for "phone_type", must be one of #{validator.allowable_values}.'
306
- end
307
- @phone_type = phone_type
308
- end
309
-
310
- # Checks equality by comparing each attribute.
311
- # @param [Object] Object to be compared
312
- def ==(o)
313
- return true if self.equal?(o)
314
- self.class == o.class &&
315
- first_name == o.first_name &&
316
- last_name == o.last_name &&
317
- address1 == o.address1 &&
318
- address2 == o.address2 &&
319
- country == o.country &&
320
- locality == o.locality &&
321
- administrative_area == o.administrative_area &&
322
- postal_code == o.postal_code &&
323
- phone_number == o.phone_number &&
324
- phone_type == o.phone_type
325
- end
326
-
327
- # @see the `==` method
328
- # @param [Object] Object to be compared
329
- def eql?(o)
330
- self == o
331
- end
332
-
333
- # Calculates hash code according to all attributes.
334
- # @return [Fixnum] Hash code
335
- def hash
336
- [first_name, last_name, address1, address2, country, locality, administrative_area, postal_code, phone_number, phone_type].hash
337
- end
338
-
339
- # Builds the object from hash
340
- # @param [Hash] attributes Model attributes in the form of hash
341
- # @return [Object] Returns the model itself
342
- def build_from_hash(attributes)
343
- return nil unless attributes.is_a?(Hash)
344
- self.class.swagger_types.each_pair do |key, type|
345
- if type =~ /\AArray<(.*)>/i
346
- # check to ensure the input is an array given that the the attribute
347
- # is documented as an array but the input is not
348
- if attributes[self.class.attribute_map[key]].is_a?(Array)
349
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
350
- end
351
- elsif !attributes[self.class.attribute_map[key]].nil?
352
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
353
- end # or else data not found in attributes(hash), not an issue as the data can be optional
354
- end
355
-
356
- self
357
- end
358
-
359
- # Deserializes the data based on type
360
- # @param string type Data type
361
- # @param string value Value to be deserialized
362
- # @return [Object] Deserialized data
363
- def _deserialize(type, value)
364
- case type.to_sym
365
- when :DateTime
366
- DateTime.parse(value)
367
- when :Date
368
- Date.parse(value)
369
- when :String
370
- value.to_s
371
- when :Integer
372
- value.to_i
373
- when :Float
374
- value.to_f
375
- when :BOOLEAN
376
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
377
- true
378
- else
379
- false
380
- end
381
- when :Object
382
- # generic object (usually a Hash), return directly
383
- value
384
- when /\AArray<(?<inner_type>.+)>\z/
385
- inner_type = Regexp.last_match[:inner_type]
386
- value.map { |v| _deserialize(inner_type, v) }
387
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
388
- k_type = Regexp.last_match[:k_type]
389
- v_type = Regexp.last_match[:v_type]
390
- {}.tap do |hash|
391
- value.each do |k, v|
392
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
393
- end
394
- end
395
- else # model
396
- temp_model = CyberSource.const_get(type).new
397
- temp_model.build_from_hash(value)
398
- end
399
- end
400
-
401
- # Returns the string representation of the object
402
- # @return [String] String presentation of the object
403
- def to_s
404
- to_hash.to_s
405
- end
406
-
407
- # to_body is an alias to to_hash (backward compatibility)
408
- # @return [Hash] Returns the object in the form of hash
409
- def to_body
410
- to_hash
411
- end
412
-
413
- # Returns the object in the form of hash
414
- # @return [Hash] Returns the object in the form of hash
415
- def to_hash
416
- hash = {}
417
- self.class.attribute_map.each_pair do |attr, param|
418
- value = self.send(attr)
419
- next if value.nil?
420
- hash[param] = _to_hash(value)
421
- end
422
- hash
423
- end
424
-
425
- # Outputs non-array value in the form of hash
426
- # For object, use to_hash. Otherwise, just return the value
427
- # @param [Object] value Any valid value
428
- # @return [Hash] Returns the value in the form of hash
429
- def _to_hash(value)
430
- if value.is_a?(Array)
431
- value.compact.map { |v| _to_hash(v) }
432
- elsif value.is_a?(Hash)
433
- {}.tap do |hash|
434
- value.each { |k, v| hash[k] = _to_hash(v) }
435
- end
436
- elsif value.respond_to? :to_hash
437
- value.to_hash
438
- else
439
- value
440
- end
441
- end
442
- end
443
- end
1
+ =begin
2
+ #CyberSource Flex API
3
+
4
+ #Simple PAN tokenization service
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.2.3
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CyberSource
16
+ class V2payoutsOrderInformationBillTo
17
+ # Customer’s first name. This name must be the same as the name on the card. For Payouts: This field may be sent only for FDC Compass. For processor-specific information, see the customer_firstname field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
18
+ attr_accessor :first_name
19
+
20
+ # Customer’s last name. This name must be the same as the name on the card. For Payouts: This field may be sent only for FDC Compass. For processor-specific information, see the customer_lastname field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
21
+ attr_accessor :last_name
22
+
23
+ # First line of the billing street address as it appears on the credit card issuer’s records. For Payouts: This field may be sent only for FDC Compass. For processor-specific information, see the bill_address1 field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
24
+ attr_accessor :address1
25
+
26
+ # Additional address information. For Payouts: This field may be sent only for FDC Compass. For processor-specific information, see the bill_address2 field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
27
+ attr_accessor :address2
28
+
29
+ # Country of the billing address. Use the two-character ISO Standard Country Codes. For processor-specific information, see the bill_country field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
30
+ attr_accessor :country
31
+
32
+ # City of the billing address. For Payouts: This field may be sent only for FDC Compass. For processor-specific information, see the bill_city field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
33
+ attr_accessor :locality
34
+
35
+ # State or province of the billing address. Use the State, Province, and Territory Codes for the United States and Canada. For Payouts: This field may be sent only for FDC Compass. For processor-specific information, see the bill_state field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
36
+ attr_accessor :administrative_area
37
+
38
+ # Postal code for the billing address. The postal code must consist of 5 to 9 digits. When the billing country is the U.S., the 9-digit postal code must follow this format: [5 digits][dash][4 digits] Example 12345-6789 When the billing country is Canada, the 6-digit postal code must follow this format: [alpha][numeric][alpha][space][numeric][alpha][numeric] Example A1B 2C3 For Payouts: This field may be sent only for FDC Compass. For processor-specific information, see the bill_zip field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
39
+ attr_accessor :postal_code
40
+
41
+ # Customer’s phone number. For Payouts: This field may be sent only for FDC Compass. CyberSource recommends that you include the country code when the order is from outside the U.S. For processor-specific information, see the customer_phone field in [Credit Card Services Using the SCMP API.](http://apps.cybersource.com/library/documentation/dev_guides/CC_Svcs_SCMP_API/html)
42
+ attr_accessor :phone_number
43
+
44
+ # Customer's phone number type. For Payouts: This field may be sent only for FDC Compass. Possible Values - * day * home * night * work
45
+ attr_accessor :phone_type
46
+
47
+ class EnumAttributeValidator
48
+ attr_reader :datatype
49
+ attr_reader :allowable_values
50
+
51
+ def initialize(datatype, allowable_values)
52
+ @allowable_values = allowable_values.map do |value|
53
+ case datatype.to_s
54
+ when /Integer/i
55
+ value.to_i
56
+ when /Float/i
57
+ value.to_f
58
+ else
59
+ value
60
+ end
61
+ end
62
+ end
63
+
64
+ def valid?(value)
65
+ !value || allowable_values.include?(value)
66
+ end
67
+ end
68
+
69
+ # Attribute mapping from ruby-style variable name to JSON key.
70
+ def self.attribute_map
71
+ {
72
+ :'first_name' => :'firstName',
73
+ :'last_name' => :'lastName',
74
+ :'address1' => :'address1',
75
+ :'address2' => :'address2',
76
+ :'country' => :'country',
77
+ :'locality' => :'locality',
78
+ :'administrative_area' => :'administrativeArea',
79
+ :'postal_code' => :'postalCode',
80
+ :'phone_number' => :'phoneNumber',
81
+ :'phone_type' => :'phoneType'
82
+ }
83
+ end
84
+
85
+ # Attribute type mapping.
86
+ def self.swagger_types
87
+ {
88
+ :'first_name' => :'String',
89
+ :'last_name' => :'String',
90
+ :'address1' => :'String',
91
+ :'address2' => :'String',
92
+ :'country' => :'String',
93
+ :'locality' => :'String',
94
+ :'administrative_area' => :'String',
95
+ :'postal_code' => :'String',
96
+ :'phone_number' => :'String',
97
+ :'phone_type' => :'String'
98
+ }
99
+ end
100
+
101
+ # Initializes the object
102
+ # @param [Hash] attributes Model attributes in the form of hash
103
+ def initialize(attributes = {})
104
+ return unless attributes.is_a?(Hash)
105
+
106
+ # convert string to symbol for hash key
107
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
108
+
109
+ if attributes.has_key?(:'firstName')
110
+ self.first_name = attributes[:'firstName']
111
+ end
112
+
113
+ if attributes.has_key?(:'lastName')
114
+ self.last_name = attributes[:'lastName']
115
+ end
116
+
117
+ if attributes.has_key?(:'address1')
118
+ self.address1 = attributes[:'address1']
119
+ end
120
+
121
+ if attributes.has_key?(:'address2')
122
+ self.address2 = attributes[:'address2']
123
+ end
124
+
125
+ if attributes.has_key?(:'country')
126
+ self.country = attributes[:'country']
127
+ end
128
+
129
+ if attributes.has_key?(:'locality')
130
+ self.locality = attributes[:'locality']
131
+ end
132
+
133
+ if attributes.has_key?(:'administrativeArea')
134
+ self.administrative_area = attributes[:'administrativeArea']
135
+ end
136
+
137
+ if attributes.has_key?(:'postalCode')
138
+ self.postal_code = attributes[:'postalCode']
139
+ end
140
+
141
+ if attributes.has_key?(:'phoneNumber')
142
+ self.phone_number = attributes[:'phoneNumber']
143
+ end
144
+
145
+ if attributes.has_key?(:'phoneType')
146
+ self.phone_type = attributes[:'phoneType']
147
+ end
148
+ end
149
+
150
+ # Show invalid properties with the reasons. Usually used together with valid?
151
+ # @return Array for valid properties with the reasons
152
+ def list_invalid_properties
153
+ invalid_properties = Array.new
154
+ if !@first_name.nil? && @first_name.to_s.length > 60
155
+ invalid_properties.push('invalid value for "first_name", the character length must be smaller than or equal to 60.')
156
+ end
157
+
158
+ if !@last_name.nil? && @last_name.to_s.length > 60
159
+ invalid_properties.push('invalid value for "last_name", the character length must be smaller than or equal to 60.')
160
+ end
161
+
162
+ if !@address1.nil? && @address1.to_s.length > 60
163
+ invalid_properties.push('invalid value for "address1", the character length must be smaller than or equal to 60.')
164
+ end
165
+
166
+ if !@address2.nil? && @address2.to_s.length > 60
167
+ invalid_properties.push('invalid value for "address2", the character length must be smaller than or equal to 60.')
168
+ end
169
+
170
+ if !@country.nil? && @country.to_s.length > 2
171
+ invalid_properties.push('invalid value for "country", the character length must be smaller than or equal to 2.')
172
+ end
173
+
174
+ if !@locality.nil? && @locality.to_s.length > 50
175
+ invalid_properties.push('invalid value for "locality", the character length must be smaller than or equal to 50.')
176
+ end
177
+
178
+ if !@administrative_area.nil? && @administrative_area.to_s.length > 2
179
+ invalid_properties.push('invalid value for "administrative_area", the character length must be smaller than or equal to 2.')
180
+ end
181
+
182
+ if !@postal_code.nil? && @postal_code.to_s.length > 10
183
+ invalid_properties.push('invalid value for "postal_code", the character length must be smaller than or equal to 10.')
184
+ end
185
+
186
+ if !@phone_number.nil? && @phone_number.to_s.length > 15
187
+ invalid_properties.push('invalid value for "phone_number", the character length must be smaller than or equal to 15.')
188
+ end
189
+
190
+ invalid_properties
191
+ end
192
+
193
+ # Check to see if the all the properties in the model are valid
194
+ # @return true if the model is valid
195
+ def valid?
196
+ return false if !@first_name.nil? && @first_name.to_s.length > 60
197
+ return false if !@last_name.nil? && @last_name.to_s.length > 60
198
+ return false if !@address1.nil? && @address1.to_s.length > 60
199
+ return false if !@address2.nil? && @address2.to_s.length > 60
200
+ return false if !@country.nil? && @country.to_s.length > 2
201
+ return false if !@locality.nil? && @locality.to_s.length > 50
202
+ return false if !@administrative_area.nil? && @administrative_area.to_s.length > 2
203
+ return false if !@postal_code.nil? && @postal_code.to_s.length > 10
204
+ return false if !@phone_number.nil? && @phone_number.to_s.length > 15
205
+ phone_type_validator = EnumAttributeValidator.new('String', ['day', 'home', 'night', 'work'])
206
+ return false unless phone_type_validator.valid?(@phone_type)
207
+ true
208
+ end
209
+
210
+ # Custom attribute writer method with validation
211
+ # @param [Object] first_name Value to be assigned
212
+ def first_name=(first_name)
213
+ if !first_name.nil? && first_name.to_s.length > 60
214
+ fail ArgumentError, 'invalid value for "first_name", the character length must be smaller than or equal to 60.'
215
+ end
216
+
217
+ @first_name = first_name
218
+ end
219
+
220
+ # Custom attribute writer method with validation
221
+ # @param [Object] last_name Value to be assigned
222
+ def last_name=(last_name)
223
+ if !last_name.nil? && last_name.to_s.length > 60
224
+ fail ArgumentError, 'invalid value for "last_name", the character length must be smaller than or equal to 60.'
225
+ end
226
+
227
+ @last_name = last_name
228
+ end
229
+
230
+ # Custom attribute writer method with validation
231
+ # @param [Object] address1 Value to be assigned
232
+ def address1=(address1)
233
+ if !address1.nil? && address1.to_s.length > 60
234
+ fail ArgumentError, 'invalid value for "address1", the character length must be smaller than or equal to 60.'
235
+ end
236
+
237
+ @address1 = address1
238
+ end
239
+
240
+ # Custom attribute writer method with validation
241
+ # @param [Object] address2 Value to be assigned
242
+ def address2=(address2)
243
+ if !address2.nil? && address2.to_s.length > 60
244
+ fail ArgumentError, 'invalid value for "address2", the character length must be smaller than or equal to 60.'
245
+ end
246
+
247
+ @address2 = address2
248
+ end
249
+
250
+ # Custom attribute writer method with validation
251
+ # @param [Object] country Value to be assigned
252
+ def country=(country)
253
+ if !country.nil? && country.to_s.length > 2
254
+ fail ArgumentError, 'invalid value for "country", the character length must be smaller than or equal to 2.'
255
+ end
256
+
257
+ @country = country
258
+ end
259
+
260
+ # Custom attribute writer method with validation
261
+ # @param [Object] locality Value to be assigned
262
+ def locality=(locality)
263
+ if !locality.nil? && locality.to_s.length > 50
264
+ fail ArgumentError, 'invalid value for "locality", the character length must be smaller than or equal to 50.'
265
+ end
266
+
267
+ @locality = locality
268
+ end
269
+
270
+ # Custom attribute writer method with validation
271
+ # @param [Object] administrative_area Value to be assigned
272
+ def administrative_area=(administrative_area)
273
+ if !administrative_area.nil? && administrative_area.to_s.length > 2
274
+ fail ArgumentError, 'invalid value for "administrative_area", the character length must be smaller than or equal to 2.'
275
+ end
276
+
277
+ @administrative_area = administrative_area
278
+ end
279
+
280
+ # Custom attribute writer method with validation
281
+ # @param [Object] postal_code Value to be assigned
282
+ def postal_code=(postal_code)
283
+ if !postal_code.nil? && postal_code.to_s.length > 10
284
+ fail ArgumentError, 'invalid value for "postal_code", the character length must be smaller than or equal to 10.'
285
+ end
286
+
287
+ @postal_code = postal_code
288
+ end
289
+
290
+ # Custom attribute writer method with validation
291
+ # @param [Object] phone_number Value to be assigned
292
+ def phone_number=(phone_number)
293
+ if !phone_number.nil? && phone_number.to_s.length > 15
294
+ fail ArgumentError, 'invalid value for "phone_number", the character length must be smaller than or equal to 15.'
295
+ end
296
+
297
+ @phone_number = phone_number
298
+ end
299
+
300
+ # Custom attribute writer method checking allowed values (enum).
301
+ # @param [Object] phone_type Object to be assigned
302
+ def phone_type=(phone_type)
303
+ validator = EnumAttributeValidator.new('String', ['day', 'home', 'night', 'work'])
304
+ unless validator.valid?(phone_type)
305
+ fail ArgumentError, 'invalid value for "phone_type", must be one of #{validator.allowable_values}.'
306
+ end
307
+ @phone_type = phone_type
308
+ end
309
+
310
+ # Checks equality by comparing each attribute.
311
+ # @param [Object] Object to be compared
312
+ def ==(o)
313
+ return true if self.equal?(o)
314
+ self.class == o.class &&
315
+ first_name == o.first_name &&
316
+ last_name == o.last_name &&
317
+ address1 == o.address1 &&
318
+ address2 == o.address2 &&
319
+ country == o.country &&
320
+ locality == o.locality &&
321
+ administrative_area == o.administrative_area &&
322
+ postal_code == o.postal_code &&
323
+ phone_number == o.phone_number &&
324
+ phone_type == o.phone_type
325
+ end
326
+
327
+ # @see the `==` method
328
+ # @param [Object] Object to be compared
329
+ def eql?(o)
330
+ self == o
331
+ end
332
+
333
+ # Calculates hash code according to all attributes.
334
+ # @return [Fixnum] Hash code
335
+ def hash
336
+ [first_name, last_name, address1, address2, country, locality, administrative_area, postal_code, phone_number, phone_type].hash
337
+ end
338
+
339
+ # Builds the object from hash
340
+ # @param [Hash] attributes Model attributes in the form of hash
341
+ # @return [Object] Returns the model itself
342
+ def build_from_hash(attributes)
343
+ return nil unless attributes.is_a?(Hash)
344
+ self.class.swagger_types.each_pair do |key, type|
345
+ if type =~ /\AArray<(.*)>/i
346
+ # check to ensure the input is an array given that the the attribute
347
+ # is documented as an array but the input is not
348
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
349
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
350
+ end
351
+ elsif !attributes[self.class.attribute_map[key]].nil?
352
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
353
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
354
+ end
355
+
356
+ self
357
+ end
358
+
359
+ # Deserializes the data based on type
360
+ # @param string type Data type
361
+ # @param string value Value to be deserialized
362
+ # @return [Object] Deserialized data
363
+ def _deserialize(type, value)
364
+ case type.to_sym
365
+ when :DateTime
366
+ DateTime.parse(value)
367
+ when :Date
368
+ Date.parse(value)
369
+ when :String
370
+ value.to_s
371
+ when :Integer
372
+ value.to_i
373
+ when :Float
374
+ value.to_f
375
+ when :BOOLEAN
376
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
377
+ true
378
+ else
379
+ false
380
+ end
381
+ when :Object
382
+ # generic object (usually a Hash), return directly
383
+ value
384
+ when /\AArray<(?<inner_type>.+)>\z/
385
+ inner_type = Regexp.last_match[:inner_type]
386
+ value.map { |v| _deserialize(inner_type, v) }
387
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
388
+ k_type = Regexp.last_match[:k_type]
389
+ v_type = Regexp.last_match[:v_type]
390
+ {}.tap do |hash|
391
+ value.each do |k, v|
392
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
393
+ end
394
+ end
395
+ else # model
396
+ temp_model = CyberSource.const_get(type).new
397
+ temp_model.build_from_hash(value)
398
+ end
399
+ end
400
+
401
+ # Returns the string representation of the object
402
+ # @return [String] String presentation of the object
403
+ def to_s
404
+ to_hash.to_s
405
+ end
406
+
407
+ # to_body is an alias to to_hash (backward compatibility)
408
+ # @return [Hash] Returns the object in the form of hash
409
+ def to_body
410
+ to_hash
411
+ end
412
+
413
+ # Returns the object in the form of hash
414
+ # @return [Hash] Returns the object in the form of hash
415
+ def to_hash
416
+ hash = {}
417
+ self.class.attribute_map.each_pair do |attr, param|
418
+ value = self.send(attr)
419
+ next if value.nil?
420
+ hash[param] = _to_hash(value)
421
+ end
422
+ hash
423
+ end
424
+
425
+ # Outputs non-array value in the form of hash
426
+ # For object, use to_hash. Otherwise, just return the value
427
+ # @param [Object] value Any valid value
428
+ # @return [Hash] Returns the value in the form of hash
429
+ def _to_hash(value)
430
+ if value.is_a?(Array)
431
+ value.compact.map { |v| _to_hash(v) }
432
+ elsif value.is_a?(Hash)
433
+ {}.tap do |hash|
434
+ value.each { |k, v| hash[k] = _to_hash(v) }
435
+ end
436
+ elsif value.respond_to? :to_hash
437
+ value.to_hash
438
+ else
439
+ value
440
+ end
441
+ end
442
+ end
443
+ end