cybersource_rest_client 0.0.67 → 0.0.69

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 (222) hide show
  1. checksums.yaml +4 -4
  2. data/lib/cybersource_rest_client/api/instrument_identifier_api.rb +12 -0
  3. data/lib/cybersource_rest_client/api/payment_instrument_api.rb +9 -0
  4. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information.rb +314 -314
  5. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_business_information.rb +437 -437
  6. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_kyc.rb +337 -337
  7. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_kyc_deposit_bank_account.rb +297 -297
  8. data/lib/cybersource_rest_client/models/boardingv1registrations_registration_information.rb +271 -271
  9. data/lib/cybersource_rest_client/models/card_processing_config_common.rb +433 -433
  10. data/lib/cybersource_rest_client/models/card_processing_config_common_processors.rb +719 -719
  11. data/lib/cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations.rb +15 -5
  12. data/lib/cybersource_rest_client/models/commerce_solutions_products_token_management_configuration_information_configurations_vault.rb +251 -0
  13. data/lib/cybersource_rest_client/models/create_order_request.rb +229 -229
  14. data/lib/cybersource_rest_client/models/create_payment_request.rb +11 -1
  15. data/lib/cybersource_rest_client/models/e_check_config_common_internal_only_processors.rb +8 -4
  16. data/lib/cybersource_rest_client/models/e_check_config_common_processors.rb +4 -2
  17. data/lib/cybersource_rest_client/models/e_check_config_features_account_validation_service_internal_only_processors.rb +4 -2
  18. data/lib/cybersource_rest_client/models/e_check_config_features_account_validation_service_processors.rb +6 -4
  19. data/lib/cybersource_rest_client/models/generate_capture_context_request.rb +230 -227
  20. data/lib/cybersource_rest_client/models/generate_unified_checkout_capture_context_request.rb +283 -293
  21. data/lib/cybersource_rest_client/models/inline_response_200_1_integration_information_tenant_configurations.rb +263 -263
  22. data/lib/cybersource_rest_client/models/inline_response_201_1.rb +2 -2
  23. data/lib/cybersource_rest_client/models/inline_response_201_2.rb +281 -281
  24. data/lib/cybersource_rest_client/models/inline_response_201_2_integration_information_tenant_configurations.rb +253 -253
  25. data/lib/cybersource_rest_client/models/inline_response_201_2_registration_information.rb +222 -222
  26. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments_card_processing_configuration_status.rb +255 -255
  27. data/lib/cybersource_rest_client/models/inline_response_201_2_setups_payments_card_processing_subscription_status.rb +234 -234
  28. data/lib/cybersource_rest_client/models/inline_response_400_1.rb +242 -242
  29. data/lib/cybersource_rest_client/models/inline_response_400_6.rb +235 -235
  30. data/lib/cybersource_rest_client/models/inline_response_404_1.rb +235 -235
  31. data/lib/cybersource_rest_client/models/inline_response_422_1.rb +235 -235
  32. data/lib/cybersource_rest_client/models/inline_response_500_2.rb +223 -223
  33. data/lib/cybersource_rest_client/models/oct_create_payment_request.rb +15 -5
  34. data/lib/cybersource_rest_client/models/patch_instrument_identifier_request.rb +15 -5
  35. data/lib/cybersource_rest_client/models/payments_products_card_present_connect_subscription_information.rb +202 -202
  36. data/lib/cybersource_rest_client/models/payments_products_card_processing_subscription_information.rb +215 -215
  37. data/lib/cybersource_rest_client/models/payments_products_differential_fee_subscription_information.rb +212 -212
  38. data/lib/cybersource_rest_client/models/payments_products_digital_payments_subscription_information.rb +215 -215
  39. data/lib/cybersource_rest_client/models/payments_products_e_check_subscription_information.rb +215 -215
  40. data/lib/cybersource_rest_client/models/payments_products_payer_authentication_subscription_information.rb +202 -202
  41. data/lib/cybersource_rest_client/models/payments_products_service_fee_configuration_information_configurations_payment_information.rb +234 -234
  42. data/lib/cybersource_rest_client/models/post_instrument_identifier_enrollment_request.rb +15 -5
  43. data/lib/cybersource_rest_client/models/post_instrument_identifier_request.rb +15 -5
  44. data/lib/cybersource_rest_client/models/post_payment_credentials_request.rb +1 -1
  45. data/lib/cybersource_rest_client/models/pts_v2_create_order_post201_response.rb +269 -269
  46. data/lib/cybersource_rest_client/models/pts_v2_create_order_post201_response_buyer_information.rb +196 -196
  47. data/lib/cybersource_rest_client/models/pts_v2_create_order_post201_response_processor_information.rb +224 -224
  48. data/lib/cybersource_rest_client/models/pts_v2_create_order_post400_response.rb +224 -224
  49. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_1_processor_information.rb +213 -213
  50. data/lib/cybersource_rest_client/models/pts_v2_incremental_authorization_patch201_response_processor_information.rb +312 -295
  51. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response.rb +305 -305
  52. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_embedded_actions.rb +189 -189
  53. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_embedded_actions_ap_capture.rb +190 -190
  54. data/lib/cybersource_rest_client/models/pts_v2_payments_captures_post201_response_processor_information.rb +263 -263
  55. data/lib/cybersource_rest_client/models/pts_v2_payments_order_post201_response_buyer_information_personal_identification.rb +207 -207
  56. data/lib/cybersource_rest_client/models/pts_v2_payments_order_post201_response_payment_information_e_wallet.rb +241 -241
  57. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_consumer_authentication_information.rb +18 -1
  58. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_embedded_actions.rb +25 -5
  59. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_embedded_actions_token_create.rb +212 -0
  60. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_embedded_actions_token_update.rb +212 -0
  61. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_account_features.rb +22 -5
  62. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_tokenized_card.rb +309 -309
  63. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information.rb +247 -227
  64. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information_authorization_options.rb +196 -0
  65. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information_capture_options.rb +196 -196
  66. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processing_information_purchase_options.rb +247 -0
  67. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information.rb +831 -814
  68. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_processor_information_seller_protection.rb +237 -237
  69. data/lib/cybersource_rest_client/models/pts_v2_payments_refund_post201_response_processor_information.rb +313 -313
  70. data/lib/cybersource_rest_client/models/pts_v2_payments_reversals_post201_response_processor_information.rb +320 -309
  71. data/lib/cybersource_rest_client/models/pts_v2_payments_voids_post201_response_processor_information.rb +224 -224
  72. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response.rb +15 -5
  73. data/lib/cybersource_rest_client/models/pts_v2_payouts_post201_response_processing_information.rb +189 -0
  74. data/lib/cybersource_rest_client/models/pts_v2_update_order_patch201_response.rb +200 -200
  75. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_merchant_information.rb +205 -205
  76. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_order_information_amount_details.rb +302 -302
  77. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_point_of_service_information.rb +189 -189
  78. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_point_of_service_information_emv.rb +196 -196
  79. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_processing_information.rb +318 -318
  80. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_processing_information_payouts_options.rb +282 -282
  81. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information.rb +446 -446
  82. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information_payment_information_card.rb +321 -321
  83. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_recipient_information_personal_identification.rb +256 -256
  84. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information.rb +533 -533
  85. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_account.rb +222 -222
  86. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_payment_information_card.rb +317 -317
  87. data/lib/cybersource_rest_client/models/ptsv1pushfundstransfer_sender_information_personal_identification.rb +256 -256
  88. data/lib/cybersource_rest_client/models/ptsv2billingagreements_installment_information.rb +1 -1
  89. data/lib/cybersource_rest_client/models/ptsv2intents_client_reference_information.rb +196 -196
  90. data/lib/cybersource_rest_client/models/ptsv2intents_merchant_information.rb +223 -223
  91. data/lib/cybersource_rest_client/models/ptsv2intents_merchant_information_merchant_descriptor.rb +207 -207
  92. data/lib/cybersource_rest_client/models/ptsv2intents_order_information.rb +231 -231
  93. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_amount_details.rb +315 -315
  94. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_bill_to.rb +196 -196
  95. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_invoice_details.rb +190 -190
  96. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_line_items.rb +309 -309
  97. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_ship_to.rb +332 -332
  98. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information.rb +189 -189
  99. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information_payment_type.rb +200 -200
  100. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information_payment_type_method.rb +190 -190
  101. data/lib/cybersource_rest_client/models/ptsv2intents_processing_information.rb +219 -219
  102. data/lib/cybersource_rest_client/models/ptsv2intents_processing_information_authorization_options.rb +196 -196
  103. data/lib/cybersource_rest_client/models/ptsv2intentsid_merchant_information.rb +189 -189
  104. data/lib/cybersource_rest_client/models/ptsv2intentsid_order_information.rb +221 -221
  105. data/lib/cybersource_rest_client/models/ptsv2intentsid_processing_information.rb +192 -192
  106. data/lib/cybersource_rest_client/models/ptsv2payments_aggregator_information.rb +90 -5
  107. data/lib/cybersource_rest_client/models/ptsv2payments_agreement_information.rb +207 -207
  108. data/lib/cybersource_rest_client/models/ptsv2payments_buyer_information_personal_identification.rb +229 -229
  109. data/lib/cybersource_rest_client/models/ptsv2payments_consumer_authentication_information.rb +56 -5
  110. data/lib/cybersource_rest_client/models/ptsv2payments_installment_information.rb +1 -1
  111. data/lib/cybersource_rest_client/models/ptsv2payments_merchant_initiated_transaction.rb +22 -5
  112. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details.rb +651 -651
  113. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details_octsurcharge.rb +196 -196
  114. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb +18 -1
  115. data/lib/cybersource_rest_client/models/ptsv2payments_point_of_sale_information.rb +19 -2
  116. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information.rb +789 -721
  117. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options.rb +529 -467
  118. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_capture_options.rb +298 -264
  119. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options.rb +6 -78
  120. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_japan_payment_options_bonuses.rb +213 -0
  121. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_purchase_options.rb +56 -5
  122. data/lib/cybersource_rest_client/models/ptsv2payments_recipient_information.rb +147 -28
  123. data/lib/cybersource_rest_client/models/ptsv2payments_sender_information.rb +89 -28
  124. data/lib/cybersource_rest_client/models/ptsv2payments_sender_information_account.rb +230 -0
  125. data/lib/cybersource_rest_client/models/{tss_v2_transactions_get200_response_unscheduled_payment_information.rb → ptsv2payments_unscheduled_payment_information.rb} +7 -1
  126. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_installment_information.rb +1 -1
  127. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_authorization_options.rb +230 -230
  128. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_processing_information_capture_options.rb +264 -247
  129. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_point_of_sale_information.rb +22 -5
  130. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_processing_information.rb +22 -5
  131. data/lib/cybersource_rest_client/models/ptsv2paymentsidreversals_processing_information.rb +22 -5
  132. data/lib/cybersource_rest_client/models/{ptsv1pushfundstransfer_aggregator_information.rb → ptsv2payouts_aggregator_information.rb} +325 -240
  133. data/lib/cybersource_rest_client/models/{ptsv1pushfundstransfer_aggregator_information_sub_merchant.rb → ptsv2payouts_aggregator_information_sub_merchant.rb} +196 -196
  134. data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information.rb +32 -5
  135. data/lib/cybersource_rest_client/models/ptsv2payouts_processing_information_purchase_options.rb +213 -0
  136. data/lib/cybersource_rest_client/models/ptsv2payouts_recipient_information.rb +90 -5
  137. data/lib/cybersource_rest_client/models/ptsv2payouts_sender_information.rb +22 -5
  138. data/lib/cybersource_rest_client/models/ptsv2refreshpaymentstatusid_processing_information.rb +192 -192
  139. data/lib/cybersource_rest_client/models/ptsv2voids_processing_information.rb +7 -1
  140. data/lib/cybersource_rest_client/models/push_funds201_response.rb +337 -337
  141. data/lib/cybersource_rest_client/models/push_funds201_response_error_information.rb +225 -225
  142. data/lib/cybersource_rest_client/models/push_funds201_response_payment_information.rb +189 -189
  143. data/lib/cybersource_rest_client/models/push_funds201_response_payment_information_tokenized_card.rb +205 -205
  144. data/lib/cybersource_rest_client/models/push_funds201_response_processing_information.rb +189 -189
  145. data/lib/cybersource_rest_client/models/push_funds201_response_processing_information_domestic_national_net.rb +197 -197
  146. data/lib/cybersource_rest_client/models/push_funds201_response_processor_information.rb +329 -329
  147. data/lib/cybersource_rest_client/models/push_funds201_response_processor_information_routing.rb +196 -196
  148. data/lib/cybersource_rest_client/models/push_funds201_response_processor_information_settlement.rb +207 -207
  149. data/lib/cybersource_rest_client/models/push_funds201_response_recipient_information.rb +206 -206
  150. data/lib/cybersource_rest_client/models/push_funds502_response.rb +246 -246
  151. data/lib/cybersource_rest_client/models/push_funds_request.rb +264 -264
  152. data/lib/cybersource_rest_client/models/rbsv1subscriptions_processing_information.rb +206 -206
  153. data/lib/cybersource_rest_client/models/riskv1exportcomplianceinquiries_order_information_line_items.rb +1 -10
  154. data/lib/cybersource_rest_client/models/sa_config_payment_methods.rb +191 -191
  155. data/lib/cybersource_rest_client/models/tms_bin_lookup.rb +200 -0
  156. data/lib/cybersource_rest_client/models/{inline_response_201_1_issuer_information.rb → tms_bin_lookup_issuer_information.rb} +1 -1
  157. data/lib/cybersource_rest_client/models/{inline_response_201_1_payment_account_information.rb → tms_bin_lookup_payment_account_information.rb} +4 -4
  158. data/lib/cybersource_rest_client/models/{inline_response_201_1_payment_account_information_card.rb → tms_bin_lookup_payment_account_information_card.rb} +2 -2
  159. data/lib/cybersource_rest_client/models/{inline_response_201_1_payment_account_information_card_brands.rb → tms_bin_lookup_payment_account_information_card_brands.rb} +1 -1
  160. data/lib/cybersource_rest_client/models/{inline_response_201_1_payment_account_information_features.rb → tms_bin_lookup_payment_account_information_features.rb} +1 -1
  161. data/lib/cybersource_rest_client/models/{inline_response_201_1_payment_account_information_network.rb → tms_bin_lookup_payment_account_information_network.rb} +1 -1
  162. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art.rb → tms_card_art.rb} +20 -39
  163. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_brand_logo_asset.rb → tms_card_art_brand_logo_asset.rb} +4 -3
  164. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_icon_asset__links.rb → tms_card_art_brand_logo_asset__links.rb} +2 -2
  165. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_brand_logo_asset__links_self.rb → tms_card_art_brand_logo_asset__links_self.rb} +2 -2
  166. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset.rb → tms_card_art_combined_asset.rb} +4 -3
  167. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_combined_asset__links.rb → tms_card_art_combined_asset__links.rb} +2 -2
  168. data/lib/cybersource_rest_client/models/tms_card_art_combined_asset__links_self.rb +190 -0
  169. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_icon_asset.rb → tms_card_art_icon_asset.rb} +4 -3
  170. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_brand_logo_asset__links.rb → tms_card_art_icon_asset__links.rb} +2 -2
  171. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset__links_self.rb → tms_card_art_icon_asset__links_self.rb} +2 -2
  172. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_combined_asset.rb → tms_card_art_issuer_logo_asset.rb} +4 -3
  173. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_background_asset__links.rb → tms_card_art_issuer_logo_asset__links.rb} +2 -2
  174. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_combined_asset__links_self.rb → tms_card_art_issuer_logo_asset__links_self.rb} +2 -2
  175. data/lib/cybersource_rest_client/models/tms_embedded_instrument_identifier.rb +15 -5
  176. data/lib/cybersource_rest_client/models/tms_embedded_instrument_identifier__embedded.rb +189 -0
  177. data/lib/cybersource_rest_client/models/tms_embedded_instrument_identifier_bank_account.rb +1 -1
  178. data/lib/cybersource_rest_client/models/tms_network_token_services.rb +239 -0
  179. data/lib/cybersource_rest_client/models/tms_network_token_services_american_express_token_service.rb +253 -0
  180. data/lib/cybersource_rest_client/models/tms_network_token_services_mastercard_digital_enablement_service.rb +227 -0
  181. data/lib/cybersource_rest_client/models/tms_network_token_services_notifications.rb +190 -0
  182. data/lib/cybersource_rest_client/models/tms_network_token_services_payment_credentials.rb +190 -0
  183. data/lib/cybersource_rest_client/models/tms_network_token_services_synchronous_provisioning.rb +190 -0
  184. data/lib/cybersource_rest_client/models/tms_network_token_services_visa_token_service.rb +244 -0
  185. data/lib/cybersource_rest_client/models/tms_nullify.rb +212 -0
  186. data/lib/cybersource_rest_client/models/tms_payment_instrument_processing_info.rb +1 -1
  187. data/lib/cybersource_rest_client/models/tms_payment_instrument_processing_info_bank_transfer_options.rb +1 -1
  188. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_background_asset.rb → tms_sensitive_privileges.rb} +10 -20
  189. data/lib/cybersource_rest_client/models/tms_token_formats.rb +223 -0
  190. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card.rb +146 -60
  191. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card__links.rb +189 -0
  192. data/lib/cybersource_rest_client/models/{tmsv2_tokenized_card_metadata_card_art_background_asset__links_self.rb → tmsv2_tokenized_card__links_self.rb} +2 -2
  193. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_card.rb +44 -16
  194. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata.rb +16 -5
  195. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_issuer.rb +213 -0
  196. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_passcode.rb +191 -0
  197. data/lib/cybersource_rest_client/models/tmsv2customers__embedded_default_payment_instrument_buyer_information.rb +1 -1
  198. data/lib/cybersource_rest_client/models/token_permissions.rb +223 -0
  199. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response.rb +1 -1
  200. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_point_of_sale_information.rb +1 -1
  201. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information.rb +1 -1
  202. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_authorization_options.rb +251 -245
  203. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information_japan_payment_options.rb +80 -5
  204. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information.rb +383 -383
  205. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information_multi_processor_routing.rb +235 -235
  206. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processing_information.rb +1 -1
  207. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processor_information.rb +223 -223
  208. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_transaction_summaries.rb +392 -392
  209. data/lib/cybersource_rest_client/models/update_order_request.rb +229 -229
  210. data/lib/cybersource_rest_client/models/upv1capturecontexts_capture_mandate.rb +253 -253
  211. data/lib/cybersource_rest_client/models/upv1capturecontexts_order_information_amount_details.rb +201 -201
  212. data/lib/cybersource_rest_client/models/vt_config_card_not_present_global_payment_information_basic_information.rb +273 -273
  213. data/lib/cybersource_rest_client/models/vt_config_card_not_present_global_payment_information_payment_information.rb +315 -315
  214. data/lib/cybersource_rest_client.rb +48 -30
  215. metadata +51 -33
  216. data/lib/cybersource_rest_client/models/microformv2sessions_checkout_api_initialization.rb +0 -281
  217. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_co_brand_logo_asset__links.rb +0 -189
  218. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_icon_asset__links_self.rb +0 -190
  219. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset.rb +0 -200
  220. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset__links.rb +0 -189
  221. data/lib/cybersource_rest_client/models/tmsv2_tokenized_card_metadata_card_art_issuer_logo_asset__links_self.rb +0 -190
  222. data/lib/cybersource_rest_client/models/upv1capturecontexts_checkout_api_initialization.rb +0 -280
@@ -1,437 +1,437 @@
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 Boardingv1registrationsOrganizationInformationBusinessInformation
16
- attr_accessor :name
17
-
18
- attr_accessor :doing_business_as
19
-
20
- attr_accessor :description
21
-
22
- # `Format: YYYY-MM-DD` Example 2016-08-11 equals August 11, 2016
23
- attr_accessor :start_date
24
-
25
- attr_accessor :address
26
-
27
- # Merchant perferred time zone Possible Values: - 'Pacific/Pago_Pago' - 'Pacific/Honolulu' - 'America/Anchorage' - 'America/Vancouver' - 'America/Los_Angeles' - 'America/Phoenix' - 'America/Edmonton' - 'America/Denver' - 'America/Winnipeg' - 'America/Mexico_City' - 'America/Chicago' - 'America/Bogota' - 'America/Indianapolis' - 'America/New_York' - 'America/La_Paz' - 'America/Halifax' - 'America/St_Johns' - 'America/Buenos_Aires' - 'America/Godthab' - 'America/Sao_Paulo' - 'America/Noronha' - 'Atlantic/Cape_Verde' - 'GMT' - 'Europe/Dublin' - 'Europe/Lisbon' - 'Europe/London' - 'Africa/Tunis' - 'Europe/Vienna' - 'Europe/Brussels' - 'Europe/Zurich' - 'Europe/Prague' - 'Europe/Berlin' - 'Europe/Copenhagen' - 'Europe/Madrid' - 'Europe/Budapest' - 'Europe/Rome' - 'Africa/Tripoli' - 'Europe/Monaco' - 'Europe/Malta' - 'Europe/Amsterdam' - 'Europe/Oslo' - 'Europe/Warsaw' - 'Europe/Stockholm' - 'Europe/Belgrade' - 'Europe/Paris' - 'Africa/Johannesburg' - 'Europe/Minsk' - 'Africa/Cairo' - 'Europe/Helsinki' - 'Europe/Athens' - 'Asia/Jerusalem' - 'Europe/Riga' - 'Europe/Bucharest' - 'Europe/Istanbul' - 'Asia/Riyadh' - 'Europe/Moscow' - 'Asia/Dubai' - 'Asia/Baku' - 'Asia/Tbilisi' - 'Asia/Calcutta' - 'Asia/Katmandu' - 'Asia/Dacca' - 'Asia/Rangoon' - 'Asia/Jakarta' - 'Asia/Saigon' - 'Asia/Bangkok' - 'Australia/Perth' - 'Asia/Hong_Kong' - 'Asia/Macao' - 'Asia/Kuala_Lumpur' - 'Asia/Manila' - 'Asia/Singapore' - 'Asia/Taipei' - 'Asia/Shanghai' - 'Asia/Seoul' - 'Asia/Tokyo' - 'Asia/Yakutsk' - 'Australia/Adelaide' - 'Australia/Brisbane' - 'Australia/Broken_Hill' - 'Australia/Darwin' - 'Australia/Eucla' - 'Australia/Hobart' - 'Australia/Lindeman' - 'Australia/Sydney' - 'Australia/Lord_Howe' - 'Australia/Melbourne' - 'Asia/Magadan' - 'Pacific/Norfolk' - 'Pacific/Auckland'
28
- attr_accessor :time_zone
29
-
30
- attr_accessor :website_url
31
-
32
- # Business type Possible Values: - 'PARTNERSHIP' - 'SOLE_PROPRIETORSHIP' - 'CORPORATION' - 'LLC' - 'NON_PROFIT' - 'TRUST'
33
- attr_accessor :type
34
-
35
- attr_accessor :tax_id
36
-
37
- attr_accessor :phone_number
38
-
39
- attr_accessor :business_contact
40
-
41
- attr_accessor :technical_contact
42
-
43
- attr_accessor :emergency_contact
44
-
45
- # Industry standard Merchant Category Code (MCC)
46
- attr_accessor :merchant_category_code
47
-
48
- # Attribute mapping from ruby-style variable name to JSON key.
49
- def self.attribute_map
50
- {
51
- :'name' => :'name',
52
- :'doing_business_as' => :'doingBusinessAs',
53
- :'description' => :'description',
54
- :'start_date' => :'startDate',
55
- :'address' => :'address',
56
- :'time_zone' => :'timeZone',
57
- :'website_url' => :'websiteUrl',
58
- :'type' => :'type',
59
- :'tax_id' => :'taxId',
60
- :'phone_number' => :'phoneNumber',
61
- :'business_contact' => :'businessContact',
62
- :'technical_contact' => :'technicalContact',
63
- :'emergency_contact' => :'emergencyContact',
64
- :'merchant_category_code' => :'merchantCategoryCode'
65
- }
66
- end
67
-
68
- # Attribute mapping from JSON key to ruby-style variable name.
69
- def self.json_map
70
- {
71
- :'name' => :'name',
72
- :'doing_business_as' => :'doing_business_as',
73
- :'description' => :'description',
74
- :'start_date' => :'start_date',
75
- :'address' => :'address',
76
- :'time_zone' => :'time_zone',
77
- :'website_url' => :'website_url',
78
- :'type' => :'type',
79
- :'tax_id' => :'tax_id',
80
- :'phone_number' => :'phone_number',
81
- :'business_contact' => :'business_contact',
82
- :'technical_contact' => :'technical_contact',
83
- :'emergency_contact' => :'emergency_contact',
84
- :'merchant_category_code' => :'merchant_category_code'
85
- }
86
- end
87
-
88
- # Attribute type mapping.
89
- def self.swagger_types
90
- {
91
- :'name' => :'String',
92
- :'doing_business_as' => :'String',
93
- :'description' => :'String',
94
- :'start_date' => :'Date',
95
- :'address' => :'Boardingv1registrationsOrganizationInformationBusinessInformationAddress',
96
- :'time_zone' => :'String',
97
- :'website_url' => :'String',
98
- :'type' => :'String',
99
- :'tax_id' => :'String',
100
- :'phone_number' => :'String',
101
- :'business_contact' => :'Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact',
102
- :'technical_contact' => :'Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact',
103
- :'emergency_contact' => :'Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact',
104
- :'merchant_category_code' => :'String'
105
- }
106
- end
107
-
108
- # Initializes the object
109
- # @param [Hash] attributes Model attributes in the form of hash
110
- def initialize(attributes = {})
111
- return unless attributes.is_a?(Hash)
112
-
113
- # convert string to symbol for hash key
114
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
115
-
116
- if attributes.has_key?(:'name')
117
- self.name = attributes[:'name']
118
- end
119
-
120
- if attributes.has_key?(:'doingBusinessAs')
121
- self.doing_business_as = attributes[:'doingBusinessAs']
122
- end
123
-
124
- if attributes.has_key?(:'description')
125
- self.description = attributes[:'description']
126
- end
127
-
128
- if attributes.has_key?(:'startDate')
129
- self.start_date = attributes[:'startDate']
130
- end
131
-
132
- if attributes.has_key?(:'address')
133
- self.address = attributes[:'address']
134
- end
135
-
136
- if attributes.has_key?(:'timeZone')
137
- self.time_zone = attributes[:'timeZone']
138
- end
139
-
140
- if attributes.has_key?(:'websiteUrl')
141
- self.website_url = attributes[:'websiteUrl']
142
- end
143
-
144
- if attributes.has_key?(:'type')
145
- self.type = attributes[:'type']
146
- end
147
-
148
- if attributes.has_key?(:'taxId')
149
- self.tax_id = attributes[:'taxId']
150
- end
151
-
152
- if attributes.has_key?(:'phoneNumber')
153
- self.phone_number = attributes[:'phoneNumber']
154
- end
155
-
156
- if attributes.has_key?(:'businessContact')
157
- self.business_contact = attributes[:'businessContact']
158
- end
159
-
160
- if attributes.has_key?(:'technicalContact')
161
- self.technical_contact = attributes[:'technicalContact']
162
- end
163
-
164
- if attributes.has_key?(:'emergencyContact')
165
- self.emergency_contact = attributes[:'emergencyContact']
166
- end
167
-
168
- if attributes.has_key?(:'merchantCategoryCode')
169
- self.merchant_category_code = attributes[:'merchantCategoryCode']
170
- end
171
- end
172
-
173
- # Show invalid properties with the reasons. Usually used together with valid?
174
- # @return Array for valid properties with the reasons
175
- def list_invalid_properties
176
- invalid_properties = Array.new
177
- if @name.nil?
178
- invalid_properties.push('invalid value for "name", name cannot be nil.')
179
- end
180
-
181
- #if @name !~ Regexp.new(/^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/)
182
- #invalid_properties.push('invalid value for "name", must conform to the pattern /^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/.')
183
- #end
184
-
185
- #if !@doing_business_as.nil? && @doing_business_as !~ Regexp.new(/^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/)
186
- #invalid_properties.push('invalid value for "doing_business_as", must conform to the pattern /^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/.')
187
- #end
188
-
189
- #if !@description.nil? && @description !~ Regexp.new(/[À-ÖØ-öø-ǿÀ-ÖØ-öø-ǿ\\n\\ra-zA-Z0-9().\\-_#,;\/\\\\@$:&!?%«»€₣«»€₣ ]{1,}$/)
190
- #invalid_properties.push('invalid value for "description", must conform to the pattern /[À-ÖØ-öø-ǿÀ-ÖØ-öø-ǿ\\n\\ra-zA-Z0-9().\\-_#,;\/\\\\@$:&!?%«»€₣«»€₣ ]{1,}$/.')
191
- #end
192
-
193
- #if !@website_url.nil? && @website_url !~ Regexp.new(/\\b((?:https?:\/\/|www\\d{0,3}[.]|[a-z0-9.\\-]+[.][a-z]{2,4}\/)(?:[^\\s()<>]+|\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\))+(?:\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\)|[^\\s`!()\\[\\]{};:'\".,<>?«»“”‘’]))/)
194
- #invalid_properties.push('invalid value for "website_url", must conform to the pattern /\\b((?:https?:\/\/|www\\d{0,3}[.]|[a-z0-9.\\-]+[.][a-z]{2,4}\/)(?:[^\\s()<>]+|\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\))+(?:\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\)|[^\\s`!()\\[\\]{};:'\".,<>?«»“”‘’]))/.')
195
- #end
196
-
197
- #if !@tax_id.nil? && @tax_id !~ Regexp.new(/\\d{9}/)
198
- #invalid_properties.push('invalid value for "tax_id", must conform to the pattern /\\d{9}/.')
199
- #end
200
-
201
- #if !@phone_number.nil? && @phone_number !~ Regexp.new(/^[0-9a-zA-Z\\\\+\\\\-]+$/)
202
- #invalid_properties.push('invalid value for "phone_number", must conform to the pattern /^[0-9a-zA-Z\\\\+\\\\-]+$/.')
203
- #end
204
-
205
- #if !@merchant_category_code.nil? && @merchant_category_code !~ Regexp.new(/^\\d{3,4}$/)
206
- #invalid_properties.push('invalid value for "merchant_category_code", must conform to the pattern /^\\d{3,4}$/.')
207
- #end
208
-
209
- invalid_properties
210
- end
211
-
212
- # Check to see if the all the properties in the model are valid
213
- # @return true if the model is valid
214
- def valid?
215
- return false if @name.nil?
216
- #return false if @name !~ Regexp.new(/^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/)
217
- #return false if !@doing_business_as.nil? && @doing_business_as !~ Regexp.new(/^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/)
218
- #return false if !@description.nil? && @description !~ Regexp.new(/[À-ÖØ-öø-ǿÀ-ÖØ-öø-ǿ\\n\\ra-zA-Z0-9().\\-_#,;\/\\\\@$:&amp;!?%«»€₣«»€₣ ]{1,}$/)
219
- #return false if !@website_url.nil? && @website_url !~ Regexp.new(/\\b((?:https?:\/\/|www\\d{0,3}[.]|[a-z0-9.\\-]+[.][a-z]{2,4}\/)(?:[^\\s()<>]+|\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\))+(?:\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\)|[^\\s`!()\\[\\]{};:'\".,<>?«»“”‘’]))/)
220
- #return false if !@tax_id.nil? && @tax_id !~ Regexp.new(/\\d{9}/)
221
- #return false if !@phone_number.nil? && @phone_number !~ Regexp.new(/^[0-9a-zA-Z\\\\+\\\\-]+$/)
222
- #return false if !@merchant_category_code.nil? && @merchant_category_code !~ Regexp.new(/^\\d{3,4}$/)
223
- true
224
- end
225
-
226
- # Custom attribute writer method with validation
227
- # @param [Object] name Value to be assigned
228
- def name=(name)
229
- #if name.nil?
230
- #fail ArgumentError, 'name cannot be nil'
231
- #end
232
-
233
- #if name !~ Regexp.new(/^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/)
234
- #fail ArgumentError, 'invalid value for "name", must conform to the pattern /^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/.'
235
- #end
236
-
237
- @name = name
238
- end
239
-
240
- # Custom attribute writer method with validation
241
- # @param [Object] doing_business_as Value to be assigned
242
- def doing_business_as=(doing_business_as)
243
- #if !doing_business_as.nil? && doing_business_as !~ Regexp.new(/^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/)
244
- #fail ArgumentError, 'invalid value for "doing_business_as", must conform to the pattern /^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/.'
245
- #end
246
-
247
- @doing_business_as = doing_business_as
248
- end
249
-
250
- # Custom attribute writer method with validation
251
- # @param [Object] description Value to be assigned
252
- def description=(description)
253
- #if !description.nil? && description !~ Regexp.new(/[À-ÖØ-öø-ǿÀ-ÖØ-öø-ǿ\\n\\ra-zA-Z0-9().\\-_#,;\/\\\\@$:&amp;!?%«»€₣«»€₣ ]{1,}$/)
254
- #fail ArgumentError, 'invalid value for "description", must conform to the pattern /[À-ÖØ-öø-ǿÀ-ÖØ-öø-ǿ\\n\\ra-zA-Z0-9().\\-_#,;\/\\\\@$:&amp;!?%«»€₣«»€₣ ]{1,}$/.'
255
- #end
256
-
257
- @description = description
258
- end
259
-
260
- # Custom attribute writer method with validation
261
- # @param [Object] website_url Value to be assigned
262
- def website_url=(website_url)
263
- #if !website_url.nil? && website_url !~ Regexp.new(/\\b((?:https?:\/\/|www\\d{0,3}[.]|[a-z0-9.\\-]+[.][a-z]{2,4}\/)(?:[^\\s()<>]+|\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\))+(?:\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\)|[^\\s`!()\\[\\]{};:'\".,<>?«»“”‘’]))/)
264
- #fail ArgumentError, 'invalid value for "website_url", must conform to the pattern /\\b((?:https?:\/\/|www\\d{0,3}[.]|[a-z0-9.\\-]+[.][a-z]{2,4}\/)(?:[^\\s()<>]+|\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\))+(?:\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\)|[^\\s`!()\\[\\]{};:'\".,<>?«»“”‘’]))/.'
265
- #end
266
-
267
- @website_url = website_url
268
- end
269
-
270
- # Custom attribute writer method with validation
271
- # @param [Object] tax_id Value to be assigned
272
- def tax_id=(tax_id)
273
- #if !tax_id.nil? && tax_id !~ Regexp.new(/\\d{9}/)
274
- #fail ArgumentError, 'invalid value for "tax_id", must conform to the pattern /\\d{9}/.'
275
- #end
276
-
277
- @tax_id = tax_id
278
- end
279
-
280
- # Custom attribute writer method with validation
281
- # @param [Object] phone_number Value to be assigned
282
- def phone_number=(phone_number)
283
- #if !phone_number.nil? && phone_number !~ Regexp.new(/^[0-9a-zA-Z\\\\+\\\\-]+$/)
284
- #fail ArgumentError, 'invalid value for "phone_number", must conform to the pattern /^[0-9a-zA-Z\\\\+\\\\-]+$/.'
285
- #end
286
-
287
- @phone_number = phone_number
288
- end
289
-
290
- # Custom attribute writer method with validation
291
- # @param [Object] merchant_category_code Value to be assigned
292
- def merchant_category_code=(merchant_category_code)
293
- #if !merchant_category_code.nil? && merchant_category_code !~ Regexp.new(/^\\d{3,4}$/)
294
- #fail ArgumentError, 'invalid value for "merchant_category_code", must conform to the pattern /^\\d{3,4}$/.'
295
- #end
296
-
297
- @merchant_category_code = merchant_category_code
298
- end
299
-
300
- # Checks equality by comparing each attribute.
301
- # @param [Object] Object to be compared
302
- def ==(o)
303
- return true if self.equal?(o)
304
- self.class == o.class &&
305
- name == o.name &&
306
- doing_business_as == o.doing_business_as &&
307
- description == o.description &&
308
- start_date == o.start_date &&
309
- address == o.address &&
310
- time_zone == o.time_zone &&
311
- website_url == o.website_url &&
312
- type == o.type &&
313
- tax_id == o.tax_id &&
314
- phone_number == o.phone_number &&
315
- business_contact == o.business_contact &&
316
- technical_contact == o.technical_contact &&
317
- emergency_contact == o.emergency_contact &&
318
- merchant_category_code == o.merchant_category_code
319
- end
320
-
321
- # @see the `==` method
322
- # @param [Object] Object to be compared
323
- def eql?(o)
324
- self == o
325
- end
326
-
327
- # Calculates hash code according to all attributes.
328
- # @return [Fixnum] Hash code
329
- def hash
330
- [name, doing_business_as, description, start_date, address, time_zone, website_url, type, tax_id, phone_number, business_contact, technical_contact, emergency_contact, merchant_category_code].hash
331
- end
332
-
333
- # Builds the object from hash
334
- # @param [Hash] attributes Model attributes in the form of hash
335
- # @return [Object] Returns the model itself
336
- def build_from_hash(attributes)
337
- return nil unless attributes.is_a?(Hash)
338
- self.class.swagger_types.each_pair do |key, type|
339
- if type =~ /\AArray<(.*)>/i
340
- # check to ensure the input is an array given that the the attribute
341
- # is documented as an array but the input is not
342
- if attributes[self.class.attribute_map[key]].is_a?(Array)
343
- self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
344
- end
345
- elsif !attributes[self.class.attribute_map[key]].nil?
346
- self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
347
- end # or else data not found in attributes(hash), not an issue as the data can be optional
348
- end
349
-
350
- self
351
- end
352
-
353
- # Deserializes the data based on type
354
- # @param string type Data type
355
- # @param string value Value to be deserialized
356
- # @return [Object] Deserialized data
357
- def _deserialize(type, value)
358
- case type.to_sym
359
- when :DateTime
360
- DateTime.parse(value)
361
- when :Date
362
- Date.parse(value)
363
- when :String
364
- value.to_s
365
- when :Integer
366
- value.to_i
367
- when :Float
368
- value.to_f
369
- when :BOOLEAN
370
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
371
- true
372
- else
373
- false
374
- end
375
- when :Object
376
- # generic object (usually a Hash), return directly
377
- value
378
- when /\AArray<(?<inner_type>.+)>\z/
379
- inner_type = Regexp.last_match[:inner_type]
380
- value.map { |v| _deserialize(inner_type, v) }
381
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
382
- k_type = Regexp.last_match[:k_type]
383
- v_type = Regexp.last_match[:v_type]
384
- {}.tap do |hash|
385
- value.each do |k, v|
386
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
387
- end
388
- end
389
- else # model
390
- temp_model = CyberSource.const_get(type).new
391
- temp_model.build_from_hash(value)
392
- end
393
- end
394
-
395
- # Returns the string representation of the object
396
- # @return [String] String presentation of the object
397
- def to_s
398
- to_hash.to_s
399
- end
400
-
401
- # to_body is an alias to to_hash (backward compatibility)
402
- # @return [Hash] Returns the object in the form of hash
403
- def to_body
404
- to_hash
405
- end
406
-
407
- # Returns the object in the form of hash
408
- # @return [Hash] Returns the object in the form of hash
409
- def to_hash
410
- hash = {}
411
- self.class.attribute_map.each_pair do |attr, param|
412
- value = self.send(attr)
413
- next if value.nil?
414
- hash[param] = _to_hash(value)
415
- end
416
- hash
417
- end
418
-
419
- # Outputs non-array value in the form of hash
420
- # For object, use to_hash. Otherwise, just return the value
421
- # @param [Object] value Any valid value
422
- # @return [Hash] Returns the value in the form of hash
423
- def _to_hash(value)
424
- if value.is_a?(Array)
425
- value.compact.map { |v| _to_hash(v) }
426
- elsif value.is_a?(Hash)
427
- {}.tap do |hash|
428
- value.each { |k, v| hash[k] = _to_hash(v) }
429
- end
430
- elsif value.respond_to? :to_hash
431
- value.to_hash
432
- else
433
- value
434
- end
435
- end
436
- end
437
- 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 Boardingv1registrationsOrganizationInformationBusinessInformation
16
+ attr_accessor :name
17
+
18
+ attr_accessor :doing_business_as
19
+
20
+ attr_accessor :description
21
+
22
+ # `Format: YYYY-MM-DD` Example 2016-08-11 equals August 11, 2016
23
+ attr_accessor :start_date
24
+
25
+ attr_accessor :address
26
+
27
+ # Merchant perferred time zone Possible Values: - 'Pacific/Pago_Pago' - 'Pacific/Honolulu' - 'America/Anchorage' - 'America/Vancouver' - 'America/Los_Angeles' - 'America/Phoenix' - 'America/Edmonton' - 'America/Denver' - 'America/Winnipeg' - 'America/Mexico_City' - 'America/Chicago' - 'America/Bogota' - 'America/Indianapolis' - 'America/New_York' - 'America/La_Paz' - 'America/Halifax' - 'America/St_Johns' - 'America/Buenos_Aires' - 'America/Godthab' - 'America/Sao_Paulo' - 'America/Noronha' - 'Atlantic/Cape_Verde' - 'GMT' - 'Europe/Dublin' - 'Europe/Lisbon' - 'Europe/London' - 'Africa/Tunis' - 'Europe/Vienna' - 'Europe/Brussels' - 'Europe/Zurich' - 'Europe/Prague' - 'Europe/Berlin' - 'Europe/Copenhagen' - 'Europe/Madrid' - 'Europe/Budapest' - 'Europe/Rome' - 'Africa/Tripoli' - 'Europe/Monaco' - 'Europe/Malta' - 'Europe/Amsterdam' - 'Europe/Oslo' - 'Europe/Warsaw' - 'Europe/Stockholm' - 'Europe/Belgrade' - 'Europe/Paris' - 'Africa/Johannesburg' - 'Europe/Minsk' - 'Africa/Cairo' - 'Europe/Helsinki' - 'Europe/Athens' - 'Asia/Jerusalem' - 'Europe/Riga' - 'Europe/Bucharest' - 'Europe/Istanbul' - 'Asia/Riyadh' - 'Europe/Moscow' - 'Asia/Dubai' - 'Asia/Baku' - 'Asia/Tbilisi' - 'Asia/Calcutta' - 'Asia/Katmandu' - 'Asia/Dacca' - 'Asia/Rangoon' - 'Asia/Jakarta' - 'Asia/Saigon' - 'Asia/Bangkok' - 'Australia/Perth' - 'Asia/Hong_Kong' - 'Asia/Macao' - 'Asia/Kuala_Lumpur' - 'Asia/Manila' - 'Asia/Singapore' - 'Asia/Taipei' - 'Asia/Shanghai' - 'Asia/Seoul' - 'Asia/Tokyo' - 'Asia/Yakutsk' - 'Australia/Adelaide' - 'Australia/Brisbane' - 'Australia/Broken_Hill' - 'Australia/Darwin' - 'Australia/Eucla' - 'Australia/Hobart' - 'Australia/Lindeman' - 'Australia/Sydney' - 'Australia/Lord_Howe' - 'Australia/Melbourne' - 'Asia/Magadan' - 'Pacific/Norfolk' - 'Pacific/Auckland'
28
+ attr_accessor :time_zone
29
+
30
+ attr_accessor :website_url
31
+
32
+ # Business type Possible Values: - 'PARTNERSHIP' - 'SOLE_PROPRIETORSHIP' - 'CORPORATION' - 'LLC' - 'NON_PROFIT' - 'TRUST'
33
+ attr_accessor :type
34
+
35
+ attr_accessor :tax_id
36
+
37
+ attr_accessor :phone_number
38
+
39
+ attr_accessor :business_contact
40
+
41
+ attr_accessor :technical_contact
42
+
43
+ attr_accessor :emergency_contact
44
+
45
+ # Industry standard Merchant Category Code (MCC)
46
+ attr_accessor :merchant_category_code
47
+
48
+ # Attribute mapping from ruby-style variable name to JSON key.
49
+ def self.attribute_map
50
+ {
51
+ :'name' => :'name',
52
+ :'doing_business_as' => :'doingBusinessAs',
53
+ :'description' => :'description',
54
+ :'start_date' => :'startDate',
55
+ :'address' => :'address',
56
+ :'time_zone' => :'timeZone',
57
+ :'website_url' => :'websiteUrl',
58
+ :'type' => :'type',
59
+ :'tax_id' => :'taxId',
60
+ :'phone_number' => :'phoneNumber',
61
+ :'business_contact' => :'businessContact',
62
+ :'technical_contact' => :'technicalContact',
63
+ :'emergency_contact' => :'emergencyContact',
64
+ :'merchant_category_code' => :'merchantCategoryCode'
65
+ }
66
+ end
67
+
68
+ # Attribute mapping from JSON key to ruby-style variable name.
69
+ def self.json_map
70
+ {
71
+ :'name' => :'name',
72
+ :'doing_business_as' => :'doing_business_as',
73
+ :'description' => :'description',
74
+ :'start_date' => :'start_date',
75
+ :'address' => :'address',
76
+ :'time_zone' => :'time_zone',
77
+ :'website_url' => :'website_url',
78
+ :'type' => :'type',
79
+ :'tax_id' => :'tax_id',
80
+ :'phone_number' => :'phone_number',
81
+ :'business_contact' => :'business_contact',
82
+ :'technical_contact' => :'technical_contact',
83
+ :'emergency_contact' => :'emergency_contact',
84
+ :'merchant_category_code' => :'merchant_category_code'
85
+ }
86
+ end
87
+
88
+ # Attribute type mapping.
89
+ def self.swagger_types
90
+ {
91
+ :'name' => :'String',
92
+ :'doing_business_as' => :'String',
93
+ :'description' => :'String',
94
+ :'start_date' => :'Date',
95
+ :'address' => :'Boardingv1registrationsOrganizationInformationBusinessInformationAddress',
96
+ :'time_zone' => :'String',
97
+ :'website_url' => :'String',
98
+ :'type' => :'String',
99
+ :'tax_id' => :'String',
100
+ :'phone_number' => :'String',
101
+ :'business_contact' => :'Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact',
102
+ :'technical_contact' => :'Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact',
103
+ :'emergency_contact' => :'Boardingv1registrationsOrganizationInformationBusinessInformationBusinessContact',
104
+ :'merchant_category_code' => :'String'
105
+ }
106
+ end
107
+
108
+ # Initializes the object
109
+ # @param [Hash] attributes Model attributes in the form of hash
110
+ def initialize(attributes = {})
111
+ return unless attributes.is_a?(Hash)
112
+
113
+ # convert string to symbol for hash key
114
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
115
+
116
+ if attributes.has_key?(:'name')
117
+ self.name = attributes[:'name']
118
+ end
119
+
120
+ if attributes.has_key?(:'doingBusinessAs')
121
+ self.doing_business_as = attributes[:'doingBusinessAs']
122
+ end
123
+
124
+ if attributes.has_key?(:'description')
125
+ self.description = attributes[:'description']
126
+ end
127
+
128
+ if attributes.has_key?(:'startDate')
129
+ self.start_date = attributes[:'startDate']
130
+ end
131
+
132
+ if attributes.has_key?(:'address')
133
+ self.address = attributes[:'address']
134
+ end
135
+
136
+ if attributes.has_key?(:'timeZone')
137
+ self.time_zone = attributes[:'timeZone']
138
+ end
139
+
140
+ if attributes.has_key?(:'websiteUrl')
141
+ self.website_url = attributes[:'websiteUrl']
142
+ end
143
+
144
+ if attributes.has_key?(:'type')
145
+ self.type = attributes[:'type']
146
+ end
147
+
148
+ if attributes.has_key?(:'taxId')
149
+ self.tax_id = attributes[:'taxId']
150
+ end
151
+
152
+ if attributes.has_key?(:'phoneNumber')
153
+ self.phone_number = attributes[:'phoneNumber']
154
+ end
155
+
156
+ if attributes.has_key?(:'businessContact')
157
+ self.business_contact = attributes[:'businessContact']
158
+ end
159
+
160
+ if attributes.has_key?(:'technicalContact')
161
+ self.technical_contact = attributes[:'technicalContact']
162
+ end
163
+
164
+ if attributes.has_key?(:'emergencyContact')
165
+ self.emergency_contact = attributes[:'emergencyContact']
166
+ end
167
+
168
+ if attributes.has_key?(:'merchantCategoryCode')
169
+ self.merchant_category_code = attributes[:'merchantCategoryCode']
170
+ end
171
+ end
172
+
173
+ # Show invalid properties with the reasons. Usually used together with valid?
174
+ # @return Array for valid properties with the reasons
175
+ def list_invalid_properties
176
+ invalid_properties = Array.new
177
+ if @name.nil?
178
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
179
+ end
180
+
181
+ #if @name !~ Regexp.new(/^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/)
182
+ #invalid_properties.push('invalid value for "name", must conform to the pattern /^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/.')
183
+ #end
184
+
185
+ #if !@doing_business_as.nil? && @doing_business_as !~ Regexp.new(/^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/)
186
+ #invalid_properties.push('invalid value for "doing_business_as", must conform to the pattern /^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/.')
187
+ #end
188
+
189
+ #if !@description.nil? && @description !~ Regexp.new(/[À-ÖØ-öø-ǿÀ-ÖØ-öø-ǿ\\n\\ra-zA-Z0-9().\\-_#,;\/\\\\@$:&amp;!?%«»€₣«»€₣ ]{1,}$/)
190
+ #invalid_properties.push('invalid value for "description", must conform to the pattern /[À-ÖØ-öø-ǿÀ-ÖØ-öø-ǿ\\n\\ra-zA-Z0-9().\\-_#,;\/\\\\@$:&amp;!?%«»€₣«»€₣ ]{1,}$/.')
191
+ #end
192
+
193
+ #if !@website_url.nil? && @website_url !~ Regexp.new(/\\b((?:https?:\/\/|www\\d{0,3}[.]|[a-z0-9.\\-]+[.][a-z]{2,4}\/)(?:[^\\s()<>]+|\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\))+(?:\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\)|[^\\s`!()\\[\\]{};:'\".,<>?«»“”‘’]))/)
194
+ #invalid_properties.push('invalid value for "website_url", must conform to the pattern /\\b((?:https?:\/\/|www\\d{0,3}[.]|[a-z0-9.\\-]+[.][a-z]{2,4}\/)(?:[^\\s()<>]+|\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\))+(?:\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\)|[^\\s`!()\\[\\]{};:'\".,<>?«»“”‘’]))/.')
195
+ #end
196
+
197
+ #if !@tax_id.nil? && @tax_id !~ Regexp.new(/\\d{9}/)
198
+ #invalid_properties.push('invalid value for "tax_id", must conform to the pattern /\\d{9}/.')
199
+ #end
200
+
201
+ #if !@phone_number.nil? && @phone_number !~ Regexp.new(/^[0-9a-zA-Z\\\\+\\\\-]+$/)
202
+ #invalid_properties.push('invalid value for "phone_number", must conform to the pattern /^[0-9a-zA-Z\\\\+\\\\-]+$/.')
203
+ #end
204
+
205
+ #if !@merchant_category_code.nil? && @merchant_category_code !~ Regexp.new(/^\\d{3,4}$/)
206
+ #invalid_properties.push('invalid value for "merchant_category_code", must conform to the pattern /^\\d{3,4}$/.')
207
+ #end
208
+
209
+ invalid_properties
210
+ end
211
+
212
+ # Check to see if the all the properties in the model are valid
213
+ # @return true if the model is valid
214
+ def valid?
215
+ return false if @name.nil?
216
+ #return false if @name !~ Regexp.new(/^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/)
217
+ #return false if !@doing_business_as.nil? && @doing_business_as !~ Regexp.new(/^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/)
218
+ #return false if !@description.nil? && @description !~ Regexp.new(/[À-ÖØ-öø-ǿÀ-ÖØ-öø-ǿ\\n\\ra-zA-Z0-9().\\-_#,;\/\\\\@$:&amp;!?%«»€₣«»€₣ ]{1,}$/)
219
+ #return false if !@website_url.nil? && @website_url !~ Regexp.new(/\\b((?:https?:\/\/|www\\d{0,3}[.]|[a-z0-9.\\-]+[.][a-z]{2,4}\/)(?:[^\\s()<>]+|\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\))+(?:\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\)|[^\\s`!()\\[\\]{};:'\".,<>?«»“”‘’]))/)
220
+ #return false if !@tax_id.nil? && @tax_id !~ Regexp.new(/\\d{9}/)
221
+ #return false if !@phone_number.nil? && @phone_number !~ Regexp.new(/^[0-9a-zA-Z\\\\+\\\\-]+$/)
222
+ #return false if !@merchant_category_code.nil? && @merchant_category_code !~ Regexp.new(/^\\d{3,4}$/)
223
+ true
224
+ end
225
+
226
+ # Custom attribute writer method with validation
227
+ # @param [Object] name Value to be assigned
228
+ def name=(name)
229
+ #if name.nil?
230
+ #fail ArgumentError, 'name cannot be nil'
231
+ #end
232
+
233
+ #if name !~ Regexp.new(/^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/)
234
+ #fail ArgumentError, 'invalid value for "name", must conform to the pattern /^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/.'
235
+ #end
236
+
237
+ @name = name
238
+ end
239
+
240
+ # Custom attribute writer method with validation
241
+ # @param [Object] doing_business_as Value to be assigned
242
+ def doing_business_as=(doing_business_as)
243
+ #if !doing_business_as.nil? && doing_business_as !~ Regexp.new(/^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/)
244
+ #fail ArgumentError, 'invalid value for "doing_business_as", must conform to the pattern /^[0-9a-zA-Z _\\-\\+\\.\\*\\\"\/'&\\,\\(\\)!$;:?@\\#¡-￿]+$/.'
245
+ #end
246
+
247
+ @doing_business_as = doing_business_as
248
+ end
249
+
250
+ # Custom attribute writer method with validation
251
+ # @param [Object] description Value to be assigned
252
+ def description=(description)
253
+ #if !description.nil? && description !~ Regexp.new(/[À-ÖØ-öø-ǿÀ-ÖØ-öø-ǿ\\n\\ra-zA-Z0-9().\\-_#,;\/\\\\@$:&amp;!?%«»€₣«»€₣ ]{1,}$/)
254
+ #fail ArgumentError, 'invalid value for "description", must conform to the pattern /[À-ÖØ-öø-ǿÀ-ÖØ-öø-ǿ\\n\\ra-zA-Z0-9().\\-_#,;\/\\\\@$:&amp;!?%«»€₣«»€₣ ]{1,}$/.'
255
+ #end
256
+
257
+ @description = description
258
+ end
259
+
260
+ # Custom attribute writer method with validation
261
+ # @param [Object] website_url Value to be assigned
262
+ def website_url=(website_url)
263
+ #if !website_url.nil? && website_url !~ Regexp.new(/\\b((?:https?:\/\/|www\\d{0,3}[.]|[a-z0-9.\\-]+[.][a-z]{2,4}\/)(?:[^\\s()<>]+|\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\))+(?:\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\)|[^\\s`!()\\[\\]{};:'\".,<>?«»“”‘’]))/)
264
+ #fail ArgumentError, 'invalid value for "website_url", must conform to the pattern /\\b((?:https?:\/\/|www\\d{0,3}[.]|[a-z0-9.\\-]+[.][a-z]{2,4}\/)(?:[^\\s()<>]+|\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\))+(?:\\(([^\\s()<>]+|(\\([^\\s()<>]+\\)))*\\)|[^\\s`!()\\[\\]{};:'\".,<>?«»“”‘’]))/.'
265
+ #end
266
+
267
+ @website_url = website_url
268
+ end
269
+
270
+ # Custom attribute writer method with validation
271
+ # @param [Object] tax_id Value to be assigned
272
+ def tax_id=(tax_id)
273
+ #if !tax_id.nil? && tax_id !~ Regexp.new(/\\d{9}/)
274
+ #fail ArgumentError, 'invalid value for "tax_id", must conform to the pattern /\\d{9}/.'
275
+ #end
276
+
277
+ @tax_id = tax_id
278
+ end
279
+
280
+ # Custom attribute writer method with validation
281
+ # @param [Object] phone_number Value to be assigned
282
+ def phone_number=(phone_number)
283
+ #if !phone_number.nil? && phone_number !~ Regexp.new(/^[0-9a-zA-Z\\\\+\\\\-]+$/)
284
+ #fail ArgumentError, 'invalid value for "phone_number", must conform to the pattern /^[0-9a-zA-Z\\\\+\\\\-]+$/.'
285
+ #end
286
+
287
+ @phone_number = phone_number
288
+ end
289
+
290
+ # Custom attribute writer method with validation
291
+ # @param [Object] merchant_category_code Value to be assigned
292
+ def merchant_category_code=(merchant_category_code)
293
+ #if !merchant_category_code.nil? && merchant_category_code !~ Regexp.new(/^\\d{3,4}$/)
294
+ #fail ArgumentError, 'invalid value for "merchant_category_code", must conform to the pattern /^\\d{3,4}$/.'
295
+ #end
296
+
297
+ @merchant_category_code = merchant_category_code
298
+ end
299
+
300
+ # Checks equality by comparing each attribute.
301
+ # @param [Object] Object to be compared
302
+ def ==(o)
303
+ return true if self.equal?(o)
304
+ self.class == o.class &&
305
+ name == o.name &&
306
+ doing_business_as == o.doing_business_as &&
307
+ description == o.description &&
308
+ start_date == o.start_date &&
309
+ address == o.address &&
310
+ time_zone == o.time_zone &&
311
+ website_url == o.website_url &&
312
+ type == o.type &&
313
+ tax_id == o.tax_id &&
314
+ phone_number == o.phone_number &&
315
+ business_contact == o.business_contact &&
316
+ technical_contact == o.technical_contact &&
317
+ emergency_contact == o.emergency_contact &&
318
+ merchant_category_code == o.merchant_category_code
319
+ end
320
+
321
+ # @see the `==` method
322
+ # @param [Object] Object to be compared
323
+ def eql?(o)
324
+ self == o
325
+ end
326
+
327
+ # Calculates hash code according to all attributes.
328
+ # @return [Fixnum] Hash code
329
+ def hash
330
+ [name, doing_business_as, description, start_date, address, time_zone, website_url, type, tax_id, phone_number, business_contact, technical_contact, emergency_contact, merchant_category_code].hash
331
+ end
332
+
333
+ # Builds the object from hash
334
+ # @param [Hash] attributes Model attributes in the form of hash
335
+ # @return [Object] Returns the model itself
336
+ def build_from_hash(attributes)
337
+ return nil unless attributes.is_a?(Hash)
338
+ self.class.swagger_types.each_pair do |key, type|
339
+ if type =~ /\AArray<(.*)>/i
340
+ # check to ensure the input is an array given that the the attribute
341
+ # is documented as an array but the input is not
342
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
343
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
344
+ end
345
+ elsif !attributes[self.class.attribute_map[key]].nil?
346
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
347
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
348
+ end
349
+
350
+ self
351
+ end
352
+
353
+ # Deserializes the data based on type
354
+ # @param string type Data type
355
+ # @param string value Value to be deserialized
356
+ # @return [Object] Deserialized data
357
+ def _deserialize(type, value)
358
+ case type.to_sym
359
+ when :DateTime
360
+ DateTime.parse(value)
361
+ when :Date
362
+ Date.parse(value)
363
+ when :String
364
+ value.to_s
365
+ when :Integer
366
+ value.to_i
367
+ when :Float
368
+ value.to_f
369
+ when :BOOLEAN
370
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
371
+ true
372
+ else
373
+ false
374
+ end
375
+ when :Object
376
+ # generic object (usually a Hash), return directly
377
+ value
378
+ when /\AArray<(?<inner_type>.+)>\z/
379
+ inner_type = Regexp.last_match[:inner_type]
380
+ value.map { |v| _deserialize(inner_type, v) }
381
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
382
+ k_type = Regexp.last_match[:k_type]
383
+ v_type = Regexp.last_match[:v_type]
384
+ {}.tap do |hash|
385
+ value.each do |k, v|
386
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
387
+ end
388
+ end
389
+ else # model
390
+ temp_model = CyberSource.const_get(type).new
391
+ temp_model.build_from_hash(value)
392
+ end
393
+ end
394
+
395
+ # Returns the string representation of the object
396
+ # @return [String] String presentation of the object
397
+ def to_s
398
+ to_hash.to_s
399
+ end
400
+
401
+ # to_body is an alias to to_hash (backward compatibility)
402
+ # @return [Hash] Returns the object in the form of hash
403
+ def to_body
404
+ to_hash
405
+ end
406
+
407
+ # Returns the object in the form of hash
408
+ # @return [Hash] Returns the object in the form of hash
409
+ def to_hash
410
+ hash = {}
411
+ self.class.attribute_map.each_pair do |attr, param|
412
+ value = self.send(attr)
413
+ next if value.nil?
414
+ hash[param] = _to_hash(value)
415
+ end
416
+ hash
417
+ end
418
+
419
+ # Outputs non-array value in the form of hash
420
+ # For object, use to_hash. Otherwise, just return the value
421
+ # @param [Object] value Any valid value
422
+ # @return [Hash] Returns the value in the form of hash
423
+ def _to_hash(value)
424
+ if value.is_a?(Array)
425
+ value.compact.map { |v| _to_hash(v) }
426
+ elsif value.is_a?(Hash)
427
+ {}.tap do |hash|
428
+ value.each { |k, v| hash[k] = _to_hash(v) }
429
+ end
430
+ elsif value.respond_to? :to_hash
431
+ value.to_hash
432
+ else
433
+ value
434
+ end
435
+ end
436
+ end
437
+ end