cybersource_rest_client 0.0.75 → 0.0.77

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 (210) hide show
  1. checksums.yaml +4 -4
  2. data/lib/AuthenticationSDK/authentication/jwt/JwtToken.rb +6 -17
  3. data/lib/AuthenticationSDK/core/MerchantConfig.rb +132 -54
  4. data/lib/AuthenticationSDK/util/Cache.rb +135 -30
  5. data/lib/AuthenticationSDK/util/CacheValue.rb +18 -0
  6. data/lib/AuthenticationSDK/util/CertificateUtility.rb +124 -0
  7. data/lib/AuthenticationSDK/util/Constants.rb +6 -0
  8. data/lib/AuthenticationSDK/util/JWEUtility.rb +1 -2
  9. data/lib/AuthenticationSDK/util/MLEUtility.rb +26 -35
  10. data/lib/AuthenticationSDK/util/Utility.rb +1 -16
  11. data/lib/cybersource_rest_client/api/batches_api.rb +17 -17
  12. data/lib/cybersource_rest_client/api/billing_agreements_api.rb +6 -6
  13. data/lib/cybersource_rest_client/api/bin_lookup_api.rb +2 -2
  14. data/lib/cybersource_rest_client/api/capture_api.rb +2 -2
  15. data/lib/cybersource_rest_client/api/chargeback_details_api.rb +2 -2
  16. data/lib/cybersource_rest_client/api/chargeback_summaries_api.rb +2 -2
  17. data/lib/cybersource_rest_client/api/conversion_details_api.rb +2 -2
  18. data/lib/cybersource_rest_client/api/create_new_webhooks_api.rb +6 -6
  19. data/lib/cybersource_rest_client/api/credit_api.rb +2 -2
  20. data/lib/cybersource_rest_client/api/customer_api.rb +8 -8
  21. data/lib/cybersource_rest_client/api/customer_payment_instrument_api.rb +10 -10
  22. data/lib/cybersource_rest_client/api/customer_shipping_address_api.rb +10 -10
  23. data/lib/cybersource_rest_client/api/decision_manager_api.rb +10 -10
  24. data/lib/cybersource_rest_client/api/device_de_association_api.rb +7 -7
  25. data/lib/cybersource_rest_client/api/device_search_api.rb +10 -10
  26. data/lib/cybersource_rest_client/api/download_dtd_api.rb +2 -2
  27. data/lib/cybersource_rest_client/api/download_xsd_api.rb +2 -2
  28. data/lib/cybersource_rest_client/api/emv_tag_details_api.rb +4 -4
  29. data/lib/cybersource_rest_client/api/flex_api_api.rb +2 -2
  30. data/lib/cybersource_rest_client/api/instrument_identifier_api.rb +12 -12
  31. data/lib/cybersource_rest_client/api/interchange_clearing_level_details_api.rb +2 -2
  32. data/lib/cybersource_rest_client/api/invoice_settings_api.rb +4 -4
  33. data/lib/cybersource_rest_client/api/invoices_api.rb +87 -12
  34. data/lib/cybersource_rest_client/api/manage_webhooks_api.rb +18 -17
  35. data/lib/cybersource_rest_client/api/merchant_boarding_api.rb +4 -4
  36. data/lib/cybersource_rest_client/api/microform_integration_api.rb +2 -2
  37. data/lib/cybersource_rest_client/api/net_fundings_api.rb +2 -2
  38. data/lib/cybersource_rest_client/api/notification_of_changes_api.rb +2 -2
  39. data/lib/cybersource_rest_client/api/orders_api.rb +4 -4
  40. data/lib/cybersource_rest_client/api/payer_authentication_api.rb +6 -6
  41. data/lib/cybersource_rest_client/api/payment_batch_summaries_api.rb +2 -2
  42. data/lib/cybersource_rest_client/api/payment_instrument_api.rb +8 -8
  43. data/lib/cybersource_rest_client/api/payment_links_api.rb +12 -12
  44. data/lib/cybersource_rest_client/api/payment_tokens_api.rb +2 -2
  45. data/lib/cybersource_rest_client/api/payments_api.rb +12 -12
  46. data/lib/cybersource_rest_client/api/payouts_api.rb +2 -2
  47. data/lib/cybersource_rest_client/api/plans_api.rb +16 -16
  48. data/lib/cybersource_rest_client/api/purchase_and_refund_details_api.rb +2 -2
  49. data/lib/cybersource_rest_client/api/push_funds_api.rb +2 -2
  50. data/lib/cybersource_rest_client/api/refund_api.rb +4 -4
  51. data/lib/cybersource_rest_client/api/report_definitions_api.rb +4 -4
  52. data/lib/cybersource_rest_client/api/report_downloads_api.rb +2 -2
  53. data/lib/cybersource_rest_client/api/report_subscriptions_api.rb +10 -10
  54. data/lib/cybersource_rest_client/api/reports_api.rb +6 -6
  55. data/lib/cybersource_rest_client/api/retrieval_details_api.rb +2 -2
  56. data/lib/cybersource_rest_client/api/retrieval_summaries_api.rb +2 -2
  57. data/lib/cybersource_rest_client/api/reversal_api.rb +4 -4
  58. data/lib/cybersource_rest_client/api/search_transactions_api.rb +4 -4
  59. data/lib/cybersource_rest_client/api/secure_file_share_api.rb +4 -4
  60. data/lib/cybersource_rest_client/api/subscriptions_api.rb +16 -16
  61. data/lib/cybersource_rest_client/api/subscriptions_follow_ons_api.rb +4 -4
  62. data/lib/cybersource_rest_client/api/taxes_api.rb +4 -4
  63. data/lib/cybersource_rest_client/api/token_api.rb +4 -4
  64. data/lib/cybersource_rest_client/api/tokenized_card_api.rb +6 -6
  65. data/lib/cybersource_rest_client/api/transaction_batches_api.rb +8 -8
  66. data/lib/cybersource_rest_client/api/transaction_details_api.rb +2 -2
  67. data/lib/cybersource_rest_client/api/transient_token_data_api.rb +4 -4
  68. data/lib/cybersource_rest_client/api/unified_checkout_capture_context_api.rb +2 -2
  69. data/lib/cybersource_rest_client/api/user_management_api.rb +2 -2
  70. data/lib/cybersource_rest_client/api/user_management_search_api.rb +2 -2
  71. data/lib/cybersource_rest_client/api/verification_api.rb +4 -4
  72. data/lib/cybersource_rest_client/api/void_api.rb +10 -10
  73. data/lib/cybersource_rest_client/api_client.rb +3 -1
  74. data/lib/cybersource_rest_client/ethon_extensions.rb +38 -0
  75. data/lib/cybersource_rest_client/models/create_order_request.rb +269 -269
  76. data/lib/cybersource_rest_client/models/create_webhook.rb +16 -3
  77. data/lib/cybersource_rest_client/models/inline_response_200_10.rb +47 -49
  78. data/lib/cybersource_rest_client/models/{inline_response_200_8__links.rb → inline_response_200_10__links.rb} +18 -17
  79. data/lib/cybersource_rest_client/models/{inline_response_200_9__links_report.rb → inline_response_200_10__links_report.rb} +1 -1
  80. data/lib/cybersource_rest_client/models/{inline_response_200_9_billing.rb → inline_response_200_10_billing.rb} +1 -1
  81. data/lib/cybersource_rest_client/models/inline_response_200_11.rb +292 -0
  82. data/lib/cybersource_rest_client/models/{inline_response_200_10_records.rb → inline_response_200_11_records.rb} +3 -3
  83. data/lib/cybersource_rest_client/models/{inline_response_200_10_response_record.rb → inline_response_200_11_response_record.rb} +2 -2
  84. data/lib/cybersource_rest_client/models/{inline_response_200_10_response_record_additional_updates.rb → inline_response_200_11_response_record_additional_updates.rb} +1 -1
  85. data/lib/cybersource_rest_client/models/{inline_response_200_10_source_record.rb → inline_response_200_11_source_record.rb} +1 -1
  86. data/lib/cybersource_rest_client/models/inline_response_200_2.rb +253 -253
  87. data/lib/cybersource_rest_client/models/inline_response_200_4.rb +12 -10
  88. data/lib/cybersource_rest_client/models/inline_response_200_5.rb +129 -51
  89. data/lib/cybersource_rest_client/models/inline_response_200_6.rb +55 -10
  90. data/lib/cybersource_rest_client/models/{inline_response_200_5_devices.rb → inline_response_200_6_devices.rb} +1 -1
  91. data/lib/cybersource_rest_client/models/inline_response_200_7.rb +10 -55
  92. data/lib/cybersource_rest_client/models/inline_response_200_8.rb +33 -37
  93. data/lib/cybersource_rest_client/models/{inline_response_200_7_devices.rb → inline_response_200_8_devices.rb} +2 -2
  94. data/lib/cybersource_rest_client/models/{inline_response_200_7_payment_processor_to_terminal_map.rb → inline_response_200_8_payment_processor_to_terminal_map.rb} +1 -1
  95. data/lib/cybersource_rest_client/models/inline_response_200_9.rb +47 -86
  96. data/lib/cybersource_rest_client/models/{inline_response_200_8__embedded.rb → inline_response_200_9__embedded.rb} +2 -2
  97. data/lib/cybersource_rest_client/models/{inline_response_200_8__embedded__links.rb → inline_response_200_9__embedded__links.rb} +2 -2
  98. data/lib/cybersource_rest_client/models/{inline_response_200_8__embedded__links_reports.rb → inline_response_200_9__embedded__links_reports.rb} +1 -1
  99. data/lib/cybersource_rest_client/models/{inline_response_200_8__embedded_batches.rb → inline_response_200_9__embedded_batches.rb} +3 -3
  100. data/lib/cybersource_rest_client/models/{inline_response_200_8__embedded_totals.rb → inline_response_200_9__embedded_totals.rb} +1 -1
  101. data/lib/cybersource_rest_client/models/inline_response_200_9__links.rb +16 -17
  102. data/lib/cybersource_rest_client/models/inline_response_201.rb +227 -227
  103. data/lib/cybersource_rest_client/models/inline_response_201_1.rb +218 -218
  104. data/lib/cybersource_rest_client/models/inline_response_201_2.rb +248 -248
  105. data/lib/cybersource_rest_client/models/inline_response_201_2_payout_information.rb +216 -216
  106. data/lib/cybersource_rest_client/models/inline_response_201_2_payout_information_pull_funds.rb +213 -213
  107. data/lib/cybersource_rest_client/models/inline_response_201_2_payout_information_push_funds.rb +417 -417
  108. data/lib/cybersource_rest_client/models/inline_response_201_3.rb +281 -281
  109. data/lib/cybersource_rest_client/models/inline_response_201_3_integration_information.rb +192 -192
  110. data/lib/cybersource_rest_client/models/inline_response_201_3_integration_information_tenant_configurations.rb +253 -253
  111. data/lib/cybersource_rest_client/models/inline_response_201_3_organization_information.rb +217 -217
  112. data/lib/cybersource_rest_client/models/inline_response_201_3_product_information_setups.rb +214 -214
  113. data/lib/cybersource_rest_client/models/inline_response_201_3_registration_information.rb +222 -222
  114. data/lib/cybersource_rest_client/models/inline_response_201_3_setups.rb +219 -219
  115. data/lib/cybersource_rest_client/models/inline_response_201_3_setups_commerce_solutions.rb +209 -209
  116. data/lib/cybersource_rest_client/models/inline_response_201_3_setups_payments.rb +369 -369
  117. data/lib/cybersource_rest_client/models/inline_response_201_3_setups_payments_alternative_payment_methods.rb +221 -221
  118. data/lib/cybersource_rest_client/models/inline_response_201_3_setups_payments_alternative_payment_methods_configuration_status.rb +200 -200
  119. data/lib/cybersource_rest_client/models/inline_response_201_3_setups_payments_card_processing.rb +199 -199
  120. data/lib/cybersource_rest_client/models/inline_response_201_3_setups_payments_card_processing_configuration_status.rb +255 -255
  121. data/lib/cybersource_rest_client/models/inline_response_201_3_setups_payments_card_processing_subscription_status.rb +234 -234
  122. data/lib/cybersource_rest_client/models/inline_response_201_3_setups_payments_digital_payments.rb +189 -189
  123. data/lib/cybersource_rest_client/models/inline_response_201_3_setups_risk.rb +199 -199
  124. data/lib/cybersource_rest_client/models/inline_response_201_3_setups_value_added_services.rb +209 -209
  125. data/lib/cybersource_rest_client/models/inline_response_201_4.rb +222 -222
  126. data/lib/cybersource_rest_client/models/inline_response_201_4_key_information.rb +300 -300
  127. data/lib/cybersource_rest_client/models/inline_response_201_4_key_information_error_information.rb +202 -202
  128. data/lib/cybersource_rest_client/models/inline_response_201_4_key_information_error_information_details.rb +201 -201
  129. data/lib/cybersource_rest_client/models/inline_response_201_5.rb +314 -312
  130. data/lib/cybersource_rest_client/models/inline_response_201_6.rb +277 -277
  131. data/lib/cybersource_rest_client/models/inline_response_201_6_payloads.rb +189 -189
  132. data/lib/cybersource_rest_client/models/inline_response_201_6_payloads_test_payload.rb +190 -190
  133. data/lib/cybersource_rest_client/models/inline_response_201_7.rb +202 -202
  134. data/lib/cybersource_rest_client/models/inline_response_201_order_information.rb +189 -189
  135. data/lib/cybersource_rest_client/models/inline_response_201_order_information_ship_to.rb +315 -315
  136. data/lib/cybersource_rest_client/models/inline_response_201_payment_information.rb +199 -199
  137. data/lib/cybersource_rest_client/models/inline_response_201_payment_information_e_wallet.rb +196 -196
  138. data/lib/cybersource_rest_client/models/inline_response_201_payment_information_tokenized_payment_method.rb +213 -213
  139. data/lib/cybersource_rest_client/models/invoicing_v2_invoice_settings_get200_response_invoice_settings_information.rb +18 -5
  140. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_post201_response_invoice_information.rb +18 -5
  141. data/lib/cybersource_rest_client/models/{notificationsubscriptionsv2webhooks_security_policy_1_config.rb → invoicing_v2_invoices_post201_response_invoice_information_custom_labels.rb} +57 -34
  142. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_publish200_response.rb +268 -0
  143. data/lib/cybersource_rest_client/models/invoicingv2invoice_settings_invoice_settings_information.rb +18 -5
  144. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_retry_policy.rb +2 -0
  145. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_security_policy.rb +1 -1
  146. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_security_policy_config.rb +16 -17
  147. data/lib/cybersource_rest_client/models/{notificationsubscriptionsv2webhooks_security_policy_1_config_additional_config.rb → notificationsubscriptionsv2webhooks_security_policy_config_additional_config.rb} +1 -1
  148. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_installment_information.rb +609 -609
  149. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_account_information_card.rb +269 -269
  150. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information.rb +364 -364
  151. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_tokenized_card.rb +309 -309
  152. data/lib/cybersource_rest_client/models/pts_v2_payments_post201_response_payment_information_tokenized_payment_method.rb +213 -213
  153. data/lib/cybersource_rest_client/models/pts_v2_retrieve_payment_token_get400_response.rb +252 -252
  154. data/lib/cybersource_rest_client/models/pts_v2_retrieve_payment_token_get502_response.rb +240 -240
  155. data/lib/cybersource_rest_client/models/ptsv2billingagreements_payment_information_card.rb +258 -258
  156. data/lib/cybersource_rest_client/models/ptsv2billingagreements_payment_information_tokenized_card.rb +275 -275
  157. data/lib/cybersource_rest_client/models/ptsv2intents_event_information.rb +212 -212
  158. data/lib/cybersource_rest_client/models/ptsv2intents_order_information_ship_to.rb +354 -354
  159. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information.rb +220 -220
  160. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information_e_wallet.rb +196 -196
  161. data/lib/cybersource_rest_client/models/ptsv2intents_payment_information_tokenized_payment_method.rb +241 -241
  162. data/lib/cybersource_rest_client/models/ptsv2intents_processing_information.rb +351 -351
  163. data/lib/cybersource_rest_client/models/ptsv2intents_recipient_information.rb +245 -245
  164. data/lib/cybersource_rest_client/models/ptsv2intents_sender_information.rb +277 -277
  165. data/lib/cybersource_rest_client/models/ptsv2intents_sender_information_account.rb +190 -190
  166. data/lib/cybersource_rest_client/models/ptsv2intents_travel_information.rb +211 -211
  167. data/lib/cybersource_rest_client/models/ptsv2intents_travel_information_agency.rb +245 -245
  168. data/lib/cybersource_rest_client/models/ptsv2intentsid_payment_information.rb +189 -189
  169. data/lib/cybersource_rest_client/models/ptsv2paymentreferences_order_information_amount_details.rb +417 -417
  170. data/lib/cybersource_rest_client/models/ptsv2paymentreferences_payment_information_card.rb +275 -275
  171. data/lib/cybersource_rest_client/models/ptsv2payments_installment_information.rb +461 -433
  172. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_amount_details.rb +668 -668
  173. data/lib/cybersource_rest_client/models/ptsv2payments_order_information_line_items.rb +716 -716
  174. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information.rb +356 -356
  175. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_card.rb +445 -445
  176. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_payment_type_method.rb +1 -1
  177. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_tokenized_card.rb +377 -377
  178. data/lib/cybersource_rest_client/models/ptsv2payments_payment_information_tokenized_payment_method.rb +196 -196
  179. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_installment_information.rb +604 -604
  180. data/lib/cybersource_rest_client/models/ptsv2paymentsidcaptures_payment_information_payment_type_method.rb +1 -1
  181. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_payment_information_card.rb +377 -377
  182. data/lib/cybersource_rest_client/models/ptsv2paymenttokens_payment_information.rb +199 -199
  183. data/lib/cybersource_rest_client/models/ptsv2paymenttokens_processing_information.rb +192 -192
  184. data/lib/cybersource_rest_client/models/ptsv2payouts_payment_information_card.rb +258 -258
  185. data/lib/cybersource_rest_client/models/request.rb +199 -199
  186. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information_card.rb +241 -241
  187. data/lib/cybersource_rest_client/models/riskv1authenticationresults_payment_information_tokenized_card.rb +258 -258
  188. data/lib/cybersource_rest_client/models/riskv1authentications_payment_information_tokenized_card.rb +351 -351
  189. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_card.rb +268 -268
  190. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_payment_information_tokenized_card.rb +299 -299
  191. data/lib/cybersource_rest_client/models/riskv1decisions_payment_information_card.rb +259 -259
  192. data/lib/cybersource_rest_client/models/riskv1decisions_payment_information_tokenized_card.rb +259 -259
  193. data/lib/cybersource_rest_client/models/riskv1liststypeentries_payment_information_card.rb +224 -224
  194. data/lib/cybersource_rest_client/models/tms_bin_lookup_issuer_information.rb +264 -264
  195. data/lib/cybersource_rest_client/models/tms_bin_lookup_payment_account_information_card.rb +277 -277
  196. data/lib/cybersource_rest_client/models/tms_bin_lookup_payment_account_information_card_brands.rb +213 -213
  197. data/lib/cybersource_rest_client/models/tms_bin_lookup_payment_account_information_features.rb +430 -430
  198. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response.rb +11 -1
  199. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_bank_account_validation.rb +211 -0
  200. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_brands.rb +201 -201
  201. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_payment_information_card.rb +365 -365
  202. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processing_information.rb +16 -5
  203. data/lib/cybersource_rest_client/models/tss_v2_transactions_get200_response_processor_information.rb +15 -5
  204. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_payment_information_card.rb +218 -218
  205. data/lib/cybersource_rest_client/models/tss_v2_transactions_post201_response__embedded_processor_information.rb +245 -245
  206. data/lib/cybersource_rest_client/models/update_order_request.rb +229 -229
  207. data/lib/cybersource_rest_client/models/update_webhook.rb +19 -19
  208. data/lib/cybersource_rest_client.rb +20 -18
  209. metadata +25 -20
  210. data/lib/cybersource_rest_client/models/notificationsubscriptionsv2webhooks_security_policy_1.rb +0 -201
@@ -1,369 +1,369 @@
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 InlineResponse2013SetupsPayments
16
- attr_accessor :card_processing
17
-
18
- attr_accessor :alternative_payment_methods
19
-
20
- attr_accessor :card_present_connect
21
-
22
- attr_accessor :e_check
23
-
24
- attr_accessor :payer_authentication
25
-
26
- attr_accessor :digital_payments
27
-
28
- attr_accessor :secure_acceptance
29
-
30
- attr_accessor :virtual_terminal
31
-
32
- attr_accessor :currency_conversion
33
-
34
- attr_accessor :tax
35
-
36
- attr_accessor :customer_invoicing
37
-
38
- attr_accessor :recurring_billing
39
-
40
- attr_accessor :cybs_ready_terminal
41
-
42
- attr_accessor :payment_orchestration
43
-
44
- attr_accessor :payouts
45
-
46
- attr_accessor :pay_by_link
47
-
48
- attr_accessor :unified_checkout
49
-
50
- attr_accessor :receivables_manager
51
-
52
- attr_accessor :service_fee
53
-
54
- # Attribute mapping from ruby-style variable name to JSON key.
55
- def self.attribute_map
56
- {
57
- :'card_processing' => :'cardProcessing',
58
- :'alternative_payment_methods' => :'alternativePaymentMethods',
59
- :'card_present_connect' => :'cardPresentConnect',
60
- :'e_check' => :'eCheck',
61
- :'payer_authentication' => :'payerAuthentication',
62
- :'digital_payments' => :'digitalPayments',
63
- :'secure_acceptance' => :'secureAcceptance',
64
- :'virtual_terminal' => :'virtualTerminal',
65
- :'currency_conversion' => :'currencyConversion',
66
- :'tax' => :'tax',
67
- :'customer_invoicing' => :'customerInvoicing',
68
- :'recurring_billing' => :'recurringBilling',
69
- :'cybs_ready_terminal' => :'cybsReadyTerminal',
70
- :'payment_orchestration' => :'paymentOrchestration',
71
- :'payouts' => :'payouts',
72
- :'pay_by_link' => :'payByLink',
73
- :'unified_checkout' => :'unifiedCheckout',
74
- :'receivables_manager' => :'receivablesManager',
75
- :'service_fee' => :'serviceFee'
76
- }
77
- end
78
-
79
- # Attribute mapping from JSON key to ruby-style variable name.
80
- def self.json_map
81
- {
82
- :'card_processing' => :'card_processing',
83
- :'alternative_payment_methods' => :'alternative_payment_methods',
84
- :'card_present_connect' => :'card_present_connect',
85
- :'e_check' => :'e_check',
86
- :'payer_authentication' => :'payer_authentication',
87
- :'digital_payments' => :'digital_payments',
88
- :'secure_acceptance' => :'secure_acceptance',
89
- :'virtual_terminal' => :'virtual_terminal',
90
- :'currency_conversion' => :'currency_conversion',
91
- :'tax' => :'tax',
92
- :'customer_invoicing' => :'customer_invoicing',
93
- :'recurring_billing' => :'recurring_billing',
94
- :'cybs_ready_terminal' => :'cybs_ready_terminal',
95
- :'payment_orchestration' => :'payment_orchestration',
96
- :'payouts' => :'payouts',
97
- :'pay_by_link' => :'pay_by_link',
98
- :'unified_checkout' => :'unified_checkout',
99
- :'receivables_manager' => :'receivables_manager',
100
- :'service_fee' => :'service_fee'
101
- }
102
- end
103
-
104
- # Attribute type mapping.
105
- def self.swagger_types
106
- {
107
- :'card_processing' => :'InlineResponse2013SetupsPaymentsCardProcessing',
108
- :'alternative_payment_methods' => :'InlineResponse2013SetupsPaymentsAlternativePaymentMethods',
109
- :'card_present_connect' => :'InlineResponse2013SetupsPaymentsCardProcessing',
110
- :'e_check' => :'InlineResponse2013SetupsPaymentsCardProcessing',
111
- :'payer_authentication' => :'InlineResponse2013SetupsPaymentsCardProcessing',
112
- :'digital_payments' => :'InlineResponse2013SetupsPaymentsDigitalPayments',
113
- :'secure_acceptance' => :'InlineResponse2013SetupsPaymentsCardProcessing',
114
- :'virtual_terminal' => :'InlineResponse2013SetupsPaymentsCardProcessing',
115
- :'currency_conversion' => :'InlineResponse2013SetupsPaymentsCardProcessing',
116
- :'tax' => :'InlineResponse2013SetupsPaymentsDigitalPayments',
117
- :'customer_invoicing' => :'InlineResponse2013SetupsPaymentsDigitalPayments',
118
- :'recurring_billing' => :'InlineResponse2013SetupsPaymentsCardProcessing',
119
- :'cybs_ready_terminal' => :'InlineResponse2013SetupsPaymentsCardProcessing',
120
- :'payment_orchestration' => :'InlineResponse2013SetupsPaymentsDigitalPayments',
121
- :'payouts' => :'InlineResponse2013SetupsPaymentsCardProcessing',
122
- :'pay_by_link' => :'InlineResponse2013SetupsPaymentsDigitalPayments',
123
- :'unified_checkout' => :'InlineResponse2013SetupsPaymentsDigitalPayments',
124
- :'receivables_manager' => :'InlineResponse2013SetupsPaymentsDigitalPayments',
125
- :'service_fee' => :'InlineResponse2013SetupsPaymentsCardProcessing'
126
- }
127
- end
128
-
129
- # Initializes the object
130
- # @param [Hash] attributes Model attributes in the form of hash
131
- def initialize(attributes = {})
132
- return unless attributes.is_a?(Hash)
133
-
134
- # convert string to symbol for hash key
135
- attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
136
-
137
- if attributes.has_key?(:'cardProcessing')
138
- self.card_processing = attributes[:'cardProcessing']
139
- end
140
-
141
- if attributes.has_key?(:'alternativePaymentMethods')
142
- self.alternative_payment_methods = attributes[:'alternativePaymentMethods']
143
- end
144
-
145
- if attributes.has_key?(:'cardPresentConnect')
146
- self.card_present_connect = attributes[:'cardPresentConnect']
147
- end
148
-
149
- if attributes.has_key?(:'eCheck')
150
- self.e_check = attributes[:'eCheck']
151
- end
152
-
153
- if attributes.has_key?(:'payerAuthentication')
154
- self.payer_authentication = attributes[:'payerAuthentication']
155
- end
156
-
157
- if attributes.has_key?(:'digitalPayments')
158
- self.digital_payments = attributes[:'digitalPayments']
159
- end
160
-
161
- if attributes.has_key?(:'secureAcceptance')
162
- self.secure_acceptance = attributes[:'secureAcceptance']
163
- end
164
-
165
- if attributes.has_key?(:'virtualTerminal')
166
- self.virtual_terminal = attributes[:'virtualTerminal']
167
- end
168
-
169
- if attributes.has_key?(:'currencyConversion')
170
- self.currency_conversion = attributes[:'currencyConversion']
171
- end
172
-
173
- if attributes.has_key?(:'tax')
174
- self.tax = attributes[:'tax']
175
- end
176
-
177
- if attributes.has_key?(:'customerInvoicing')
178
- self.customer_invoicing = attributes[:'customerInvoicing']
179
- end
180
-
181
- if attributes.has_key?(:'recurringBilling')
182
- self.recurring_billing = attributes[:'recurringBilling']
183
- end
184
-
185
- if attributes.has_key?(:'cybsReadyTerminal')
186
- self.cybs_ready_terminal = attributes[:'cybsReadyTerminal']
187
- end
188
-
189
- if attributes.has_key?(:'paymentOrchestration')
190
- self.payment_orchestration = attributes[:'paymentOrchestration']
191
- end
192
-
193
- if attributes.has_key?(:'payouts')
194
- self.payouts = attributes[:'payouts']
195
- end
196
-
197
- if attributes.has_key?(:'payByLink')
198
- self.pay_by_link = attributes[:'payByLink']
199
- end
200
-
201
- if attributes.has_key?(:'unifiedCheckout')
202
- self.unified_checkout = attributes[:'unifiedCheckout']
203
- end
204
-
205
- if attributes.has_key?(:'receivablesManager')
206
- self.receivables_manager = attributes[:'receivablesManager']
207
- end
208
-
209
- if attributes.has_key?(:'serviceFee')
210
- self.service_fee = attributes[:'serviceFee']
211
- end
212
- end
213
-
214
- # Show invalid properties with the reasons. Usually used together with valid?
215
- # @return Array for valid properties with the reasons
216
- def list_invalid_properties
217
- invalid_properties = Array.new
218
- invalid_properties
219
- end
220
-
221
- # Check to see if the all the properties in the model are valid
222
- # @return true if the model is valid
223
- def valid?
224
- true
225
- end
226
-
227
- # Checks equality by comparing each attribute.
228
- # @param [Object] Object to be compared
229
- def ==(o)
230
- return true if self.equal?(o)
231
- self.class == o.class &&
232
- card_processing == o.card_processing &&
233
- alternative_payment_methods == o.alternative_payment_methods &&
234
- card_present_connect == o.card_present_connect &&
235
- e_check == o.e_check &&
236
- payer_authentication == o.payer_authentication &&
237
- digital_payments == o.digital_payments &&
238
- secure_acceptance == o.secure_acceptance &&
239
- virtual_terminal == o.virtual_terminal &&
240
- currency_conversion == o.currency_conversion &&
241
- tax == o.tax &&
242
- customer_invoicing == o.customer_invoicing &&
243
- recurring_billing == o.recurring_billing &&
244
- cybs_ready_terminal == o.cybs_ready_terminal &&
245
- payment_orchestration == o.payment_orchestration &&
246
- payouts == o.payouts &&
247
- pay_by_link == o.pay_by_link &&
248
- unified_checkout == o.unified_checkout &&
249
- receivables_manager == o.receivables_manager &&
250
- service_fee == o.service_fee
251
- end
252
-
253
- # @see the `==` method
254
- # @param [Object] Object to be compared
255
- def eql?(o)
256
- self == o
257
- end
258
-
259
- # Calculates hash code according to all attributes.
260
- # @return [Fixnum] Hash code
261
- def hash
262
- [card_processing, alternative_payment_methods, card_present_connect, e_check, payer_authentication, digital_payments, secure_acceptance, virtual_terminal, currency_conversion, tax, customer_invoicing, recurring_billing, cybs_ready_terminal, payment_orchestration, payouts, pay_by_link, unified_checkout, receivables_manager, service_fee].hash
263
- end
264
-
265
- # Builds the object from hash
266
- # @param [Hash] attributes Model attributes in the form of hash
267
- # @return [Object] Returns the model itself
268
- def build_from_hash(attributes)
269
- return nil unless attributes.is_a?(Hash)
270
- self.class.swagger_types.each_pair do |key, type|
271
- if type =~ /\AArray<(.*)>/i
272
- # check to ensure the input is an array given that the the attribute
273
- # is documented as an array but the input is not
274
- if attributes[self.class.attribute_map[key]].is_a?(Array)
275
- self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
276
- end
277
- elsif !attributes[self.class.attribute_map[key]].nil?
278
- self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
279
- end # or else data not found in attributes(hash), not an issue as the data can be optional
280
- end
281
-
282
- self
283
- end
284
-
285
- # Deserializes the data based on type
286
- # @param string type Data type
287
- # @param string value Value to be deserialized
288
- # @return [Object] Deserialized data
289
- def _deserialize(type, value)
290
- case type.to_sym
291
- when :DateTime
292
- DateTime.parse(value)
293
- when :Date
294
- Date.parse(value)
295
- when :String
296
- value.to_s
297
- when :Integer
298
- value.to_i
299
- when :Float
300
- value.to_f
301
- when :BOOLEAN
302
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
303
- true
304
- else
305
- false
306
- end
307
- when :Object
308
- # generic object (usually a Hash), return directly
309
- value
310
- when /\AArray<(?<inner_type>.+)>\z/
311
- inner_type = Regexp.last_match[:inner_type]
312
- value.map { |v| _deserialize(inner_type, v) }
313
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
314
- k_type = Regexp.last_match[:k_type]
315
- v_type = Regexp.last_match[:v_type]
316
- {}.tap do |hash|
317
- value.each do |k, v|
318
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
319
- end
320
- end
321
- else # model
322
- temp_model = CyberSource.const_get(type).new
323
- temp_model.build_from_hash(value)
324
- end
325
- end
326
-
327
- # Returns the string representation of the object
328
- # @return [String] String presentation of the object
329
- def to_s
330
- to_hash.to_s
331
- end
332
-
333
- # to_body is an alias to to_hash (backward compatibility)
334
- # @return [Hash] Returns the object in the form of hash
335
- def to_body
336
- to_hash
337
- end
338
-
339
- # Returns the object in the form of hash
340
- # @return [Hash] Returns the object in the form of hash
341
- def to_hash
342
- hash = {}
343
- self.class.attribute_map.each_pair do |attr, param|
344
- value = self.send(attr)
345
- next if value.nil?
346
- hash[param] = _to_hash(value)
347
- end
348
- hash
349
- end
350
-
351
- # Outputs non-array value in the form of hash
352
- # For object, use to_hash. Otherwise, just return the value
353
- # @param [Object] value Any valid value
354
- # @return [Hash] Returns the value in the form of hash
355
- def _to_hash(value)
356
- if value.is_a?(Array)
357
- value.compact.map { |v| _to_hash(v) }
358
- elsif value.is_a?(Hash)
359
- {}.tap do |hash|
360
- value.each { |k, v| hash[k] = _to_hash(v) }
361
- end
362
- elsif value.respond_to? :to_hash
363
- value.to_hash
364
- else
365
- value
366
- end
367
- end
368
- end
369
- 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 InlineResponse2013SetupsPayments
16
+ attr_accessor :card_processing
17
+
18
+ attr_accessor :alternative_payment_methods
19
+
20
+ attr_accessor :card_present_connect
21
+
22
+ attr_accessor :e_check
23
+
24
+ attr_accessor :payer_authentication
25
+
26
+ attr_accessor :digital_payments
27
+
28
+ attr_accessor :secure_acceptance
29
+
30
+ attr_accessor :virtual_terminal
31
+
32
+ attr_accessor :currency_conversion
33
+
34
+ attr_accessor :tax
35
+
36
+ attr_accessor :customer_invoicing
37
+
38
+ attr_accessor :recurring_billing
39
+
40
+ attr_accessor :cybs_ready_terminal
41
+
42
+ attr_accessor :payment_orchestration
43
+
44
+ attr_accessor :payouts
45
+
46
+ attr_accessor :pay_by_link
47
+
48
+ attr_accessor :unified_checkout
49
+
50
+ attr_accessor :receivables_manager
51
+
52
+ attr_accessor :service_fee
53
+
54
+ # Attribute mapping from ruby-style variable name to JSON key.
55
+ def self.attribute_map
56
+ {
57
+ :'card_processing' => :'cardProcessing',
58
+ :'alternative_payment_methods' => :'alternativePaymentMethods',
59
+ :'card_present_connect' => :'cardPresentConnect',
60
+ :'e_check' => :'eCheck',
61
+ :'payer_authentication' => :'payerAuthentication',
62
+ :'digital_payments' => :'digitalPayments',
63
+ :'secure_acceptance' => :'secureAcceptance',
64
+ :'virtual_terminal' => :'virtualTerminal',
65
+ :'currency_conversion' => :'currencyConversion',
66
+ :'tax' => :'tax',
67
+ :'customer_invoicing' => :'customerInvoicing',
68
+ :'recurring_billing' => :'recurringBilling',
69
+ :'cybs_ready_terminal' => :'cybsReadyTerminal',
70
+ :'payment_orchestration' => :'paymentOrchestration',
71
+ :'payouts' => :'payouts',
72
+ :'pay_by_link' => :'payByLink',
73
+ :'unified_checkout' => :'unifiedCheckout',
74
+ :'receivables_manager' => :'receivablesManager',
75
+ :'service_fee' => :'serviceFee'
76
+ }
77
+ end
78
+
79
+ # Attribute mapping from JSON key to ruby-style variable name.
80
+ def self.json_map
81
+ {
82
+ :'card_processing' => :'card_processing',
83
+ :'alternative_payment_methods' => :'alternative_payment_methods',
84
+ :'card_present_connect' => :'card_present_connect',
85
+ :'e_check' => :'e_check',
86
+ :'payer_authentication' => :'payer_authentication',
87
+ :'digital_payments' => :'digital_payments',
88
+ :'secure_acceptance' => :'secure_acceptance',
89
+ :'virtual_terminal' => :'virtual_terminal',
90
+ :'currency_conversion' => :'currency_conversion',
91
+ :'tax' => :'tax',
92
+ :'customer_invoicing' => :'customer_invoicing',
93
+ :'recurring_billing' => :'recurring_billing',
94
+ :'cybs_ready_terminal' => :'cybs_ready_terminal',
95
+ :'payment_orchestration' => :'payment_orchestration',
96
+ :'payouts' => :'payouts',
97
+ :'pay_by_link' => :'pay_by_link',
98
+ :'unified_checkout' => :'unified_checkout',
99
+ :'receivables_manager' => :'receivables_manager',
100
+ :'service_fee' => :'service_fee'
101
+ }
102
+ end
103
+
104
+ # Attribute type mapping.
105
+ def self.swagger_types
106
+ {
107
+ :'card_processing' => :'InlineResponse2013SetupsPaymentsCardProcessing',
108
+ :'alternative_payment_methods' => :'InlineResponse2013SetupsPaymentsAlternativePaymentMethods',
109
+ :'card_present_connect' => :'InlineResponse2013SetupsPaymentsCardProcessing',
110
+ :'e_check' => :'InlineResponse2013SetupsPaymentsCardProcessing',
111
+ :'payer_authentication' => :'InlineResponse2013SetupsPaymentsCardProcessing',
112
+ :'digital_payments' => :'InlineResponse2013SetupsPaymentsDigitalPayments',
113
+ :'secure_acceptance' => :'InlineResponse2013SetupsPaymentsCardProcessing',
114
+ :'virtual_terminal' => :'InlineResponse2013SetupsPaymentsCardProcessing',
115
+ :'currency_conversion' => :'InlineResponse2013SetupsPaymentsCardProcessing',
116
+ :'tax' => :'InlineResponse2013SetupsPaymentsDigitalPayments',
117
+ :'customer_invoicing' => :'InlineResponse2013SetupsPaymentsDigitalPayments',
118
+ :'recurring_billing' => :'InlineResponse2013SetupsPaymentsCardProcessing',
119
+ :'cybs_ready_terminal' => :'InlineResponse2013SetupsPaymentsCardProcessing',
120
+ :'payment_orchestration' => :'InlineResponse2013SetupsPaymentsDigitalPayments',
121
+ :'payouts' => :'InlineResponse2013SetupsPaymentsCardProcessing',
122
+ :'pay_by_link' => :'InlineResponse2013SetupsPaymentsDigitalPayments',
123
+ :'unified_checkout' => :'InlineResponse2013SetupsPaymentsDigitalPayments',
124
+ :'receivables_manager' => :'InlineResponse2013SetupsPaymentsDigitalPayments',
125
+ :'service_fee' => :'InlineResponse2013SetupsPaymentsCardProcessing'
126
+ }
127
+ end
128
+
129
+ # Initializes the object
130
+ # @param [Hash] attributes Model attributes in the form of hash
131
+ def initialize(attributes = {})
132
+ return unless attributes.is_a?(Hash)
133
+
134
+ # convert string to symbol for hash key
135
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
136
+
137
+ if attributes.has_key?(:'cardProcessing')
138
+ self.card_processing = attributes[:'cardProcessing']
139
+ end
140
+
141
+ if attributes.has_key?(:'alternativePaymentMethods')
142
+ self.alternative_payment_methods = attributes[:'alternativePaymentMethods']
143
+ end
144
+
145
+ if attributes.has_key?(:'cardPresentConnect')
146
+ self.card_present_connect = attributes[:'cardPresentConnect']
147
+ end
148
+
149
+ if attributes.has_key?(:'eCheck')
150
+ self.e_check = attributes[:'eCheck']
151
+ end
152
+
153
+ if attributes.has_key?(:'payerAuthentication')
154
+ self.payer_authentication = attributes[:'payerAuthentication']
155
+ end
156
+
157
+ if attributes.has_key?(:'digitalPayments')
158
+ self.digital_payments = attributes[:'digitalPayments']
159
+ end
160
+
161
+ if attributes.has_key?(:'secureAcceptance')
162
+ self.secure_acceptance = attributes[:'secureAcceptance']
163
+ end
164
+
165
+ if attributes.has_key?(:'virtualTerminal')
166
+ self.virtual_terminal = attributes[:'virtualTerminal']
167
+ end
168
+
169
+ if attributes.has_key?(:'currencyConversion')
170
+ self.currency_conversion = attributes[:'currencyConversion']
171
+ end
172
+
173
+ if attributes.has_key?(:'tax')
174
+ self.tax = attributes[:'tax']
175
+ end
176
+
177
+ if attributes.has_key?(:'customerInvoicing')
178
+ self.customer_invoicing = attributes[:'customerInvoicing']
179
+ end
180
+
181
+ if attributes.has_key?(:'recurringBilling')
182
+ self.recurring_billing = attributes[:'recurringBilling']
183
+ end
184
+
185
+ if attributes.has_key?(:'cybsReadyTerminal')
186
+ self.cybs_ready_terminal = attributes[:'cybsReadyTerminal']
187
+ end
188
+
189
+ if attributes.has_key?(:'paymentOrchestration')
190
+ self.payment_orchestration = attributes[:'paymentOrchestration']
191
+ end
192
+
193
+ if attributes.has_key?(:'payouts')
194
+ self.payouts = attributes[:'payouts']
195
+ end
196
+
197
+ if attributes.has_key?(:'payByLink')
198
+ self.pay_by_link = attributes[:'payByLink']
199
+ end
200
+
201
+ if attributes.has_key?(:'unifiedCheckout')
202
+ self.unified_checkout = attributes[:'unifiedCheckout']
203
+ end
204
+
205
+ if attributes.has_key?(:'receivablesManager')
206
+ self.receivables_manager = attributes[:'receivablesManager']
207
+ end
208
+
209
+ if attributes.has_key?(:'serviceFee')
210
+ self.service_fee = attributes[:'serviceFee']
211
+ end
212
+ end
213
+
214
+ # Show invalid properties with the reasons. Usually used together with valid?
215
+ # @return Array for valid properties with the reasons
216
+ def list_invalid_properties
217
+ invalid_properties = Array.new
218
+ invalid_properties
219
+ end
220
+
221
+ # Check to see if the all the properties in the model are valid
222
+ # @return true if the model is valid
223
+ def valid?
224
+ true
225
+ end
226
+
227
+ # Checks equality by comparing each attribute.
228
+ # @param [Object] Object to be compared
229
+ def ==(o)
230
+ return true if self.equal?(o)
231
+ self.class == o.class &&
232
+ card_processing == o.card_processing &&
233
+ alternative_payment_methods == o.alternative_payment_methods &&
234
+ card_present_connect == o.card_present_connect &&
235
+ e_check == o.e_check &&
236
+ payer_authentication == o.payer_authentication &&
237
+ digital_payments == o.digital_payments &&
238
+ secure_acceptance == o.secure_acceptance &&
239
+ virtual_terminal == o.virtual_terminal &&
240
+ currency_conversion == o.currency_conversion &&
241
+ tax == o.tax &&
242
+ customer_invoicing == o.customer_invoicing &&
243
+ recurring_billing == o.recurring_billing &&
244
+ cybs_ready_terminal == o.cybs_ready_terminal &&
245
+ payment_orchestration == o.payment_orchestration &&
246
+ payouts == o.payouts &&
247
+ pay_by_link == o.pay_by_link &&
248
+ unified_checkout == o.unified_checkout &&
249
+ receivables_manager == o.receivables_manager &&
250
+ service_fee == o.service_fee
251
+ end
252
+
253
+ # @see the `==` method
254
+ # @param [Object] Object to be compared
255
+ def eql?(o)
256
+ self == o
257
+ end
258
+
259
+ # Calculates hash code according to all attributes.
260
+ # @return [Fixnum] Hash code
261
+ def hash
262
+ [card_processing, alternative_payment_methods, card_present_connect, e_check, payer_authentication, digital_payments, secure_acceptance, virtual_terminal, currency_conversion, tax, customer_invoicing, recurring_billing, cybs_ready_terminal, payment_orchestration, payouts, pay_by_link, unified_checkout, receivables_manager, service_fee].hash
263
+ end
264
+
265
+ # Builds the object from hash
266
+ # @param [Hash] attributes Model attributes in the form of hash
267
+ # @return [Object] Returns the model itself
268
+ def build_from_hash(attributes)
269
+ return nil unless attributes.is_a?(Hash)
270
+ self.class.swagger_types.each_pair do |key, type|
271
+ if type =~ /\AArray<(.*)>/i
272
+ # check to ensure the input is an array given that the the attribute
273
+ # is documented as an array but the input is not
274
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
275
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
276
+ end
277
+ elsif !attributes[self.class.attribute_map[key]].nil?
278
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
279
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
280
+ end
281
+
282
+ self
283
+ end
284
+
285
+ # Deserializes the data based on type
286
+ # @param string type Data type
287
+ # @param string value Value to be deserialized
288
+ # @return [Object] Deserialized data
289
+ def _deserialize(type, value)
290
+ case type.to_sym
291
+ when :DateTime
292
+ DateTime.parse(value)
293
+ when :Date
294
+ Date.parse(value)
295
+ when :String
296
+ value.to_s
297
+ when :Integer
298
+ value.to_i
299
+ when :Float
300
+ value.to_f
301
+ when :BOOLEAN
302
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
303
+ true
304
+ else
305
+ false
306
+ end
307
+ when :Object
308
+ # generic object (usually a Hash), return directly
309
+ value
310
+ when /\AArray<(?<inner_type>.+)>\z/
311
+ inner_type = Regexp.last_match[:inner_type]
312
+ value.map { |v| _deserialize(inner_type, v) }
313
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
314
+ k_type = Regexp.last_match[:k_type]
315
+ v_type = Regexp.last_match[:v_type]
316
+ {}.tap do |hash|
317
+ value.each do |k, v|
318
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
319
+ end
320
+ end
321
+ else # model
322
+ temp_model = CyberSource.const_get(type).new
323
+ temp_model.build_from_hash(value)
324
+ end
325
+ end
326
+
327
+ # Returns the string representation of the object
328
+ # @return [String] String presentation of the object
329
+ def to_s
330
+ to_hash.to_s
331
+ end
332
+
333
+ # to_body is an alias to to_hash (backward compatibility)
334
+ # @return [Hash] Returns the object in the form of hash
335
+ def to_body
336
+ to_hash
337
+ end
338
+
339
+ # Returns the object in the form of hash
340
+ # @return [Hash] Returns the object in the form of hash
341
+ def to_hash
342
+ hash = {}
343
+ self.class.attribute_map.each_pair do |attr, param|
344
+ value = self.send(attr)
345
+ next if value.nil?
346
+ hash[param] = _to_hash(value)
347
+ end
348
+ hash
349
+ end
350
+
351
+ # Outputs non-array value in the form of hash
352
+ # For object, use to_hash. Otherwise, just return the value
353
+ # @param [Object] value Any valid value
354
+ # @return [Hash] Returns the value in the form of hash
355
+ def _to_hash(value)
356
+ if value.is_a?(Array)
357
+ value.compact.map { |v| _to_hash(v) }
358
+ elsif value.is_a?(Hash)
359
+ {}.tap do |hash|
360
+ value.each { |k, v| hash[k] = _to_hash(v) }
361
+ end
362
+ elsif value.respond_to? :to_hash
363
+ value.to_hash
364
+ else
365
+ value
366
+ end
367
+ end
368
+ end
369
+ end