cybersource_rest_client 0.0.79 → 0.0.81

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 (291) hide show
  1. checksums.yaml +4 -4
  2. data/lib/AuthenticationSDK/authentication/jwt/JwtToken.rb +17 -7
  3. data/lib/AuthenticationSDK/core/Authorization.rb +2 -2
  4. data/lib/AuthenticationSDK/core/MerchantConfig.rb +278 -23
  5. data/lib/AuthenticationSDK/util/Cache.rb +158 -8
  6. data/lib/AuthenticationSDK/util/CachedMLEKId.rb +17 -0
  7. data/lib/AuthenticationSDK/util/CertificateUtility.rb +109 -29
  8. data/lib/AuthenticationSDK/util/Constants.rb +6 -0
  9. data/lib/AuthenticationSDK/util/JWT/JWTExceptions.rb +81 -0
  10. data/lib/AuthenticationSDK/util/JWT/JWTUtility.rb +154 -0
  11. data/lib/AuthenticationSDK/util/MLEUtility.rb +167 -11
  12. data/lib/AuthenticationSDK/util/Utility.rb +37 -1
  13. data/lib/cybersource_rest_client/api/bank_account_validation_api.rb +13 -5
  14. data/lib/cybersource_rest_client/api/batches_api.rb +50 -18
  15. data/lib/cybersource_rest_client/api/billing_agreements_api.rb +33 -9
  16. data/lib/cybersource_rest_client/api/bin_lookup_api.rb +11 -3
  17. data/lib/cybersource_rest_client/api/capture_api.rb +11 -3
  18. data/lib/cybersource_rest_client/api/chargeback_details_api.rb +11 -3
  19. data/lib/cybersource_rest_client/api/chargeback_summaries_api.rb +11 -3
  20. data/lib/cybersource_rest_client/api/conversion_details_api.rb +11 -3
  21. data/lib/cybersource_rest_client/api/create_new_webhooks_api.rb +35 -11
  22. data/lib/cybersource_rest_client/api/credit_api.rb +11 -3
  23. data/lib/cybersource_rest_client/api/customer_api.rb +44 -12
  24. data/lib/cybersource_rest_client/api/customer_payment_instrument_api.rb +55 -15
  25. data/lib/cybersource_rest_client/api/customer_shipping_address_api.rb +55 -15
  26. data/lib/cybersource_rest_client/api/decision_manager_api.rb +57 -17
  27. data/lib/cybersource_rest_client/api/device_de_association_api.rb +24 -8
  28. data/lib/cybersource_rest_client/api/device_search_api.rb +26 -10
  29. data/lib/cybersource_rest_client/api/download_dtd_api.rb +11 -3
  30. data/lib/cybersource_rest_client/api/download_xsd_api.rb +11 -3
  31. data/lib/cybersource_rest_client/api/emv_tag_details_api.rb +22 -6
  32. data/lib/cybersource_rest_client/api/enrollment_api.rb +104 -0
  33. data/lib/cybersource_rest_client/api/flex_api_api.rb +11 -3
  34. data/lib/cybersource_rest_client/api/instructions_api.rb +452 -0
  35. data/lib/cybersource_rest_client/api/instrument_identifier_api.rb +66 -18
  36. data/lib/cybersource_rest_client/api/interchange_clearing_level_details_api.rb +11 -3
  37. data/lib/cybersource_rest_client/api/invoice_settings_api.rb +22 -6
  38. data/lib/cybersource_rest_client/api/invoices_api.rb +77 -21
  39. data/lib/cybersource_rest_client/api/manage_webhooks_api.rb +81 -25
  40. data/lib/cybersource_rest_client/api/merchant_boarding_api.rb +24 -8
  41. data/lib/cybersource_rest_client/api/merchant_defined_fields_api.rb +50 -18
  42. data/lib/cybersource_rest_client/api/microform_integration_api.rb +11 -3
  43. data/lib/cybersource_rest_client/api/net_fundings_api.rb +11 -3
  44. data/lib/cybersource_rest_client/api/notification_of_changes_api.rb +11 -3
  45. data/lib/cybersource_rest_client/api/offers_api.rb +24 -8
  46. data/lib/cybersource_rest_client/api/orders_api.rb +22 -6
  47. data/lib/cybersource_rest_client/api/payer_authentication_api.rb +33 -9
  48. data/lib/cybersource_rest_client/api/payment_batch_summaries_api.rb +11 -3
  49. data/lib/cybersource_rest_client/api/payment_instrument_api.rb +44 -12
  50. data/lib/cybersource_rest_client/api/payment_links_api.rb +44 -12
  51. data/lib/cybersource_rest_client/api/payment_tokens_api.rb +11 -3
  52. data/lib/cybersource_rest_client/api/payments_api.rb +66 -18
  53. data/lib/cybersource_rest_client/api/payouts_api.rb +11 -3
  54. data/lib/cybersource_rest_client/api/plans_api.rb +88 -24
  55. data/lib/cybersource_rest_client/api/purchase_and_refund_details_api.rb +11 -3
  56. data/lib/cybersource_rest_client/api/push_funds_api.rb +11 -3
  57. data/lib/cybersource_rest_client/api/refund_api.rb +22 -6
  58. data/lib/cybersource_rest_client/api/report_definitions_api.rb +22 -6
  59. data/lib/cybersource_rest_client/api/report_downloads_api.rb +11 -3
  60. data/lib/cybersource_rest_client/api/report_subscriptions_api.rb +55 -15
  61. data/lib/cybersource_rest_client/api/reports_api.rb +33 -9
  62. data/lib/cybersource_rest_client/api/retrieval_details_api.rb +11 -3
  63. data/lib/cybersource_rest_client/api/retrieval_summaries_api.rb +11 -3
  64. data/lib/cybersource_rest_client/api/reversal_api.rb +22 -6
  65. data/lib/cybersource_rest_client/api/search_transactions_api.rb +22 -6
  66. data/lib/cybersource_rest_client/api/secure_file_share_api.rb +22 -6
  67. data/lib/cybersource_rest_client/api/subscriptions_api.rb +97 -33
  68. data/lib/cybersource_rest_client/api/subscriptions_follow_ons_api.rb +22 -6
  69. data/lib/cybersource_rest_client/api/taxes_api.rb +22 -6
  70. data/lib/cybersource_rest_client/api/token_api.rb +24 -8
  71. data/lib/cybersource_rest_client/api/tokenize_api.rb +107 -0
  72. data/lib/cybersource_rest_client/api/tokenized_card_api.rb +126 -9
  73. data/lib/cybersource_rest_client/api/transaction_batches_api.rb +44 -12
  74. data/lib/cybersource_rest_client/api/transaction_details_api.rb +11 -3
  75. data/lib/cybersource_rest_client/api/transient_token_data_api.rb +22 -6
  76. data/lib/cybersource_rest_client/api/unified_checkout_capture_context_api.rb +11 -3
  77. data/lib/cybersource_rest_client/api/user_management_api.rb +11 -3
  78. data/lib/cybersource_rest_client/api/user_management_search_api.rb +11 -3
  79. data/lib/cybersource_rest_client/api/verification_api.rb +22 -6
  80. data/lib/cybersource_rest_client/api/void_api.rb +55 -15
  81. data/lib/cybersource_rest_client/api_client.rb +20 -3
  82. data/lib/cybersource_rest_client/models/acpv1instructions_decline_threshold.rb +232 -0
  83. data/lib/cybersource_rest_client/models/acpv1instructions_mandates.rb +405 -0
  84. data/lib/cybersource_rest_client/models/acpv1instructions_recurring_payment_information.rb +191 -0
  85. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idconf_processor_info_payment_instrument_verifi_results.rb +213 -0
  86. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idconfirmations_confirmation_data.rb +229 -0
  87. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idconfirmations_merchant_information.rb +258 -0
  88. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idconfirmations_order_information.rb +377 -0
  89. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idconfirmations_order_information_shipping_details.rb +206 -0
  90. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idconfirmations_processor_information.rb +425 -0
  91. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idconfirmations_processor_information_payment_instrument.rb +190 -0
  92. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idcredentials_attachments.rb +258 -0
  93. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idcredentials_client_reference_information.rb +215 -0
  94. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idcredentials_mandate_reference_data.rb +205 -0
  95. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idcredentials_merchant_information.rb +334 -0
  96. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idcredentials_merchant_information_merchant_descriptor.rb +250 -0
  97. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idcredentials_order_information.rb +228 -0
  98. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idcredentials_order_information_amount_detail.rb +354 -0
  99. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idcredentials_order_information_items.rb +367 -0
  100. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idcredentials_order_information_items_additional_info.rb +231 -0
  101. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idcredentials_order_information_items_policies.rb +346 -0
  102. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idcredentials_order_information_line_items.rb +190 -0
  103. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idcredentials_order_information_ship_to.rb +686 -0
  104. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idcredentials_payment_options.rb +217 -0
  105. data/lib/cybersource_rest_client/models/acpv1instructionsinstruction_idcredentials_transaction_data.rb +348 -0
  106. data/lib/cybersource_rest_client/models/acpv1tokens_assurance_data.rb +313 -0
  107. data/lib/cybersource_rest_client/models/acpv1tokens_authenticated_identities.rb +237 -0
  108. data/lib/cybersource_rest_client/models/acpv1tokens_authentication_context.rb +191 -0
  109. data/lib/cybersource_rest_client/models/acpv1tokens_bill_to.rb +400 -0
  110. data/lib/cybersource_rest_client/models/acpv1tokens_buyer_information.rb +229 -0
  111. data/lib/cybersource_rest_client/models/acpv1tokens_buyer_information_personal_identification.rb +212 -0
  112. data/lib/cybersource_rest_client/models/acpv1tokens_consent_data.rb +297 -0
  113. data/lib/cybersource_rest_client/models/{rbsv1subscriptions_client_reference_information.rb → acpv1tokens_consumer_identity.rb} +73 -61
  114. data/lib/cybersource_rest_client/models/acpv1tokens_device_information.rb +378 -0
  115. data/lib/cybersource_rest_client/models/acpv1tokens_device_information_device_data.rb +302 -0
  116. data/lib/cybersource_rest_client/models/acpv1tokens_enrollment_reference_data.rb +207 -0
  117. data/lib/cybersource_rest_client/models/acpv1tokens_payment_information.rb +215 -0
  118. data/lib/cybersource_rest_client/models/acpv1tokens_payment_information_customer.rb +197 -0
  119. data/lib/cybersource_rest_client/models/acpv1tokens_payment_information_instrument_identifier.rb +206 -0
  120. data/lib/cybersource_rest_client/models/acpv1tokens_payment_information_payment_instrument.rb +197 -0
  121. data/lib/cybersource_rest_client/models/agentic_cancel_purchase_intent_request.rb +257 -0
  122. data/lib/cybersource_rest_client/models/agentic_card_enrollment_bad_request_response400.rb +189 -0
  123. data/lib/cybersource_rest_client/models/agentic_card_enrollment_bad_request_response400_error.rb +238 -0
  124. data/lib/cybersource_rest_client/models/agentic_card_enrollment_bad_request_response400_error_detail.rb +224 -0
  125. data/lib/cybersource_rest_client/models/agentic_card_enrollment_request.rb +325 -0
  126. data/lib/cybersource_rest_client/models/agentic_card_enrollment_response200.rb +206 -0
  127. data/lib/cybersource_rest_client/models/agentic_card_enrollment_response202.rb +219 -0
  128. data/lib/cybersource_rest_client/models/agentic_confirm_transaction_events_request.rb +247 -0
  129. data/lib/cybersource_rest_client/models/agentic_confirm_transaction_events_response202.rb +195 -0
  130. data/lib/cybersource_rest_client/models/agentic_create_purchase_intent_request.rb +327 -0
  131. data/lib/cybersource_rest_client/models/agentic_create_purchase_intent_response200.rb +222 -0
  132. data/lib/cybersource_rest_client/models/agentic_pending_purchase_intent_response202.rb +241 -0
  133. data/lib/cybersource_rest_client/models/agentic_retrieve_payment_credentials_request.rb +247 -0
  134. data/lib/cybersource_rest_client/models/agentic_retrieve_payment_credentials_response200.rb +200 -0
  135. data/lib/cybersource_rest_client/models/{rbsv1plans_client_reference_information.rb → agentic_retrieve_payment_credentials_response200_transaction_response_complete.rb} +52 -47
  136. data/lib/cybersource_rest_client/models/agentic_retrieve_payment_credentials_response200_transaction_response_with_pending_events.rb +235 -0
  137. data/lib/cybersource_rest_client/models/agentic_update_purchase_intent_request.rb +315 -0
  138. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_business_information.rb +36 -1
  139. data/lib/cybersource_rest_client/models/boardingv1registrations_organization_information_business_information_localized_names.rb +254 -0
  140. data/lib/cybersource_rest_client/models/create_plan_request.rb +1 -11
  141. data/lib/cybersource_rest_client/models/create_subscription_request.rb +1 -1
  142. data/lib/cybersource_rest_client/models/create_subscription_request_1.rb +1 -1
  143. data/lib/cybersource_rest_client/models/create_subscription_response.rb +15 -5
  144. data/lib/cybersource_rest_client/models/generate_unified_checkout_capture_context_request.rb +13 -2
  145. data/lib/cybersource_rest_client/models/get_all_subscriptions_response_client_reference_information.rb +196 -0
  146. data/lib/cybersource_rest_client/models/get_all_subscriptions_response_subscriptions.rb +11 -1
  147. data/lib/cybersource_rest_client/models/get_subscription_response.rb +11 -1
  148. data/lib/cybersource_rest_client/models/get_subscription_response_1_payment_instrument.rb +1 -1
  149. data/lib/cybersource_rest_client/models/get_subscription_response_1_payment_instrument_buyer_information.rb +1 -1
  150. data/lib/cybersource_rest_client/models/get_subscription_response_1_shipping_address.rb +1 -1
  151. data/lib/cybersource_rest_client/models/get_subscription_response_reactivation_information.rb +22 -22
  152. data/lib/cybersource_rest_client/models/inline_response_200.rb +9 -44
  153. data/lib/cybersource_rest_client/models/inline_response_200_1.rb +29 -31
  154. data/lib/cybersource_rest_client/models/inline_response_200_10.rb +33 -37
  155. data/lib/cybersource_rest_client/models/{inline_response_200_9_devices.rb → inline_response_200_10_devices.rb} +2 -2
  156. data/lib/cybersource_rest_client/models/{inline_response_200_9_payment_processor_to_terminal_map.rb → inline_response_200_10_payment_processor_to_terminal_map.rb} +1 -1
  157. data/lib/cybersource_rest_client/models/inline_response_200_11.rb +47 -86
  158. data/lib/cybersource_rest_client/models/{inline_response_200_10__embedded.rb → inline_response_200_11__embedded.rb} +2 -2
  159. data/lib/cybersource_rest_client/models/{inline_response_200_10__embedded__links.rb → inline_response_200_11__embedded__links.rb} +2 -2
  160. data/lib/cybersource_rest_client/models/{inline_response_200_10__embedded__links_reports.rb → inline_response_200_11__embedded__links_reports.rb} +1 -1
  161. data/lib/cybersource_rest_client/models/{inline_response_200_10__embedded_batches.rb → inline_response_200_11__embedded_batches.rb} +3 -3
  162. data/lib/cybersource_rest_client/models/{inline_response_200_10__embedded_totals.rb → inline_response_200_11__embedded_totals.rb} +1 -1
  163. data/lib/cybersource_rest_client/models/inline_response_200_11__links.rb +16 -17
  164. data/lib/cybersource_rest_client/models/inline_response_200_12.rb +47 -49
  165. data/lib/cybersource_rest_client/models/inline_response_200_12__links.rb +201 -0
  166. data/lib/cybersource_rest_client/models/{inline_response_200_11__links_report.rb → inline_response_200_12__links_report.rb} +1 -1
  167. data/lib/cybersource_rest_client/models/{inline_response_200_11_billing.rb → inline_response_200_12_billing.rb} +1 -1
  168. data/lib/cybersource_rest_client/models/inline_response_200_13.rb +102 -31
  169. data/lib/cybersource_rest_client/models/{inline_response_200_12_records.rb → inline_response_200_13_records.rb} +3 -3
  170. data/lib/cybersource_rest_client/models/{inline_response_200_12_response_record.rb → inline_response_200_13_response_record.rb} +2 -2
  171. data/lib/cybersource_rest_client/models/{inline_response_200_12_response_record_additional_updates.rb → inline_response_200_13_response_record_additional_updates.rb} +1 -1
  172. data/lib/cybersource_rest_client/models/{inline_response_200_12_source_record.rb → inline_response_200_13_source_record.rb} +1 -1
  173. data/lib/cybersource_rest_client/models/inline_response_200_14.rb +18 -84
  174. data/lib/cybersource_rest_client/models/inline_response_200_15.rb +287 -0
  175. data/lib/cybersource_rest_client/models/{inline_response_200_14_client_reference_information.rb → inline_response_200_15_client_reference_information.rb} +1 -1
  176. data/lib/cybersource_rest_client/models/{inline_response_200_content.rb → inline_response_200_1_content.rb} +1 -1
  177. data/lib/cybersource_rest_client/models/inline_response_200_2.rb +32 -103
  178. data/lib/cybersource_rest_client/models/{inline_response_200_1__embedded.rb → inline_response_200_2__embedded.rb} +3 -3
  179. data/lib/cybersource_rest_client/models/{inline_response_200_1__embedded_capture.rb → inline_response_200_2__embedded_capture.rb} +2 -2
  180. data/lib/cybersource_rest_client/models/{inline_response_200_1__embedded_capture__links.rb → inline_response_200_2__embedded_capture__links.rb} +2 -2
  181. data/lib/cybersource_rest_client/models/{inline_response_200_1__embedded_capture__links_self.rb → inline_response_200_2__embedded_capture__links_self.rb} +1 -1
  182. data/lib/cybersource_rest_client/models/{inline_response_200_1__embedded_reversal.rb → inline_response_200_2__embedded_reversal.rb} +2 -2
  183. data/lib/cybersource_rest_client/models/{inline_response_200_1__embedded_reversal__links.rb → inline_response_200_2__embedded_reversal__links.rb} +2 -2
  184. data/lib/cybersource_rest_client/models/{inline_response_200_1__embedded_reversal__links_self.rb → inline_response_200_2__embedded_reversal__links_self.rb} +1 -1
  185. data/lib/cybersource_rest_client/models/inline_response_200_3.rb +100 -54
  186. data/lib/cybersource_rest_client/models/inline_response_200_4.rb +65 -25
  187. data/lib/cybersource_rest_client/models/{inline_response_200_3_integration_information.rb → inline_response_200_4_integration_information.rb} +2 -2
  188. data/lib/cybersource_rest_client/models/{inline_response_200_3_integration_information_tenant_configurations.rb → inline_response_200_4_integration_information_tenant_configurations.rb} +1 -1
  189. data/lib/cybersource_rest_client/models/inline_response_200_5.rb +25 -126
  190. data/lib/cybersource_rest_client/models/inline_response_200_6.rb +1 -12
  191. data/lib/cybersource_rest_client/models/inline_response_200_7.rb +129 -51
  192. data/lib/cybersource_rest_client/models/inline_response_200_8.rb +55 -10
  193. data/lib/cybersource_rest_client/models/{inline_response_200_7_devices.rb → inline_response_200_8_devices.rb} +1 -1
  194. data/lib/cybersource_rest_client/models/inline_response_200_9.rb +10 -55
  195. data/lib/cybersource_rest_client/models/{inline_response_200_10__links.rb → inline_response_200_details.rb} +18 -17
  196. data/lib/cybersource_rest_client/models/inline_response_200_errors.rb +213 -0
  197. data/lib/cybersource_rest_client/models/inline_response_200_responses.rb +224 -0
  198. data/lib/cybersource_rest_client/models/inline_response_201_3_setups_payments.rb +15 -5
  199. data/lib/cybersource_rest_client/models/patch_customer_payment_instrument_request.rb +9 -9
  200. data/lib/cybersource_rest_client/models/patch_customer_request.rb +9 -9
  201. data/lib/cybersource_rest_client/models/patch_customer_shipping_address_request.rb +3 -3
  202. data/lib/cybersource_rest_client/models/patch_payment_instrument_request.rb +9 -9
  203. data/lib/cybersource_rest_client/models/payment_instrument_list_1__embedded_payment_instruments.rb +8 -8
  204. data/lib/cybersource_rest_client/models/payment_instrument_list__embedded.rb +1 -1
  205. data/lib/cybersource_rest_client/models/payments_products.rb +15 -5
  206. data/lib/cybersource_rest_client/models/post_customer_payment_instrument_request.rb +9 -9
  207. data/lib/cybersource_rest_client/models/post_customer_request.rb +9 -9
  208. data/lib/cybersource_rest_client/models/post_customer_shipping_address_request.rb +3 -3
  209. data/lib/cybersource_rest_client/models/post_issuer_life_cycle_simulation_request.rb +211 -0
  210. data/lib/cybersource_rest_client/models/post_payment_instrument_request.rb +9 -9
  211. data/lib/cybersource_rest_client/models/post_tokenize_request.rb +199 -0
  212. data/lib/cybersource_rest_client/models/ptsv2payments_aggregator_information.rb +22 -5
  213. data/lib/cybersource_rest_client/models/ptsv2payments_travel_information_transit_airline_ancillary_information.rb +22 -5
  214. data/lib/cybersource_rest_client/models/ptsv2payments_travel_information_transit_airline_ancillary_information_service.rb +39 -5
  215. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_travel_information.rb +246 -0
  216. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_travel_information_transit.rb +189 -0
  217. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_travel_information_transit_airline.rb +889 -0
  218. data/lib/cybersource_rest_client/models/ptsv2paymentsidrefunds_travel_information_transit_airline_ancillary_information.rb +259 -0
  219. data/lib/cybersource_rest_client/models/{rbsv1subscriptions_client_reference_information_partner.rb → ptsv2paymentsidrefunds_travel_information_transit_airline_ancillary_information_service.rb} +24 -24
  220. data/lib/cybersource_rest_client/models/refund_capture_request.rb +1 -1
  221. data/lib/cybersource_rest_client/models/refund_payment_request.rb +1 -1
  222. data/lib/cybersource_rest_client/models/shipping_address_list_for_customer__embedded.rb +1 -1
  223. data/lib/cybersource_rest_client/models/tms_issuerlifecycleeventsimulations_metadata_card_art_combined_asset.rb +190 -0
  224. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_payment_instrument_merchant_information.rb → tms_merchant_information.rb} +2 -2
  225. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_payment_instrument_merchant_information_merchant_descriptor.rb → tms_merchant_information_merchant_descriptor.rb} +1 -1
  226. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_payment_instrument_buyer_information_issued_by.rb → tmsv2tokenize_default_payment_instrument_buyer_info_issued_by.rb} +1 -1
  227. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_payment_instrument_buyer_information_personal_identification.rb → tmsv2tokenize_default_payment_instrument_buyer_info_personal_identification.rb} +2 -2
  228. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_payment_instrument_card_tokenized_information.rb → tmsv2tokenize_default_payment_instrument_card_tokenized_info.rb} +1 -1
  229. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_payment_instrument_instrument_identifier.rb → tmsv2tokenize_default_payment_instrument_instrument_identifier.rb} +1 -1
  230. data/lib/cybersource_rest_client/models/tmsv2tokenize_processing_information.rb +205 -0
  231. data/lib/cybersource_rest_client/models/tmsv2tokenize_token_information.rb +247 -0
  232. data/lib/cybersource_rest_client/models/tmsv2tokenize_token_information_customer.rb +289 -0
  233. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded.rb → tmsv2tokenize_token_information_customer__embedded.rb} +3 -3
  234. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_payment_instrument.rb → tmsv2tokenize_token_information_customer__embedded_default_payment_instrument.rb} +10 -10
  235. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_payment_instrument__embedded.rb → tmsv2tokenize_token_information_customer__embedded_default_payment_instrument__embedded.rb} +1 -1
  236. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_payment_instrument__links.rb → tmsv2tokenize_token_information_customer__embedded_default_payment_instrument__links.rb} +3 -3
  237. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_payment_instrument__links_self.rb → tmsv2tokenize_token_information_customer__embedded_default_payment_instrument__links_self.rb} +1 -1
  238. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_payment_instrument_bank_account.rb → tmsv2tokenize_token_information_customer__embedded_default_payment_instrument_bank_account.rb} +1 -1
  239. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_payment_instrument_bill_to.rb → tmsv2tokenize_token_information_customer__embedded_default_payment_instrument_bill_to.rb} +1 -1
  240. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_payment_instrument_buyer_information.rb → tmsv2tokenize_token_information_customer__embedded_default_payment_instrument_buyer_information.rb} +2 -2
  241. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_payment_instrument_card.rb → tmsv2tokenize_token_information_customer__embedded_default_payment_instrument_card.rb} +2 -2
  242. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_payment_instrument_metadata.rb → tmsv2tokenize_token_information_customer__embedded_default_payment_instrument_metadata.rb} +1 -1
  243. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_shipping_address.rb → tmsv2tokenize_token_information_customer__embedded_default_shipping_address.rb} +4 -4
  244. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_shipping_address__links.rb → tmsv2tokenize_token_information_customer__embedded_default_shipping_address__links.rb} +3 -3
  245. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_shipping_address__links_customer.rb → tmsv2tokenize_token_information_customer__embedded_default_shipping_address__links_customer.rb} +1 -1
  246. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_shipping_address__links_self.rb → tmsv2tokenize_token_information_customer__embedded_default_shipping_address__links_self.rb} +1 -1
  247. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_shipping_address_metadata.rb → tmsv2tokenize_token_information_customer__embedded_default_shipping_address_metadata.rb} +1 -1
  248. data/lib/cybersource_rest_client/models/{tmsv2customers__embedded_default_shipping_address_ship_to.rb → tmsv2tokenize_token_information_customer__embedded_default_shipping_address_ship_to.rb} +1 -1
  249. data/lib/cybersource_rest_client/models/{tmsv2customers__links.rb → tmsv2tokenize_token_information_customer__links.rb} +4 -4
  250. data/lib/cybersource_rest_client/models/{tmsv2customers__links_payment_instruments.rb → tmsv2tokenize_token_information_customer__links_payment_instruments.rb} +1 -1
  251. data/lib/cybersource_rest_client/models/{tmsv2customers__links_self.rb → tmsv2tokenize_token_information_customer__links_self.rb} +1 -1
  252. data/lib/cybersource_rest_client/models/{tmsv2customers__links_shipping_address.rb → tmsv2tokenize_token_information_customer__links_shipping_address.rb} +1 -1
  253. data/lib/cybersource_rest_client/models/{tmsv2customers_buyer_information.rb → tmsv2tokenize_token_information_customer_buyer_information.rb} +1 -1
  254. data/lib/cybersource_rest_client/models/{tmsv2customers_client_reference_information.rb → tmsv2tokenize_token_information_customer_client_reference_information.rb} +1 -1
  255. data/lib/cybersource_rest_client/models/{tmsv2customers_default_payment_instrument.rb → tmsv2tokenize_token_information_customer_default_payment_instrument.rb} +1 -1
  256. data/lib/cybersource_rest_client/models/{tmsv2customers_default_shipping_address.rb → tmsv2tokenize_token_information_customer_default_shipping_address.rb} +1 -1
  257. data/lib/cybersource_rest_client/models/{tmsv2customers_merchant_defined_information.rb → tmsv2tokenize_token_information_customer_merchant_defined_information.rb} +1 -1
  258. data/lib/cybersource_rest_client/models/{tmsv2customers_metadata.rb → tmsv2tokenize_token_information_customer_metadata.rb} +1 -1
  259. data/lib/cybersource_rest_client/models/{tmsv2customers_object_information.rb → tmsv2tokenize_token_information_customer_object_information.rb} +1 -1
  260. data/lib/cybersource_rest_client/models/tmsv2tokenizedcardstokenized_card_idissuerlifecycleeventsimulations_card.rb +230 -0
  261. data/lib/cybersource_rest_client/models/tmsv2tokenizedcardstokenized_card_idissuerlifecycleeventsimulations_metadata.rb +189 -0
  262. data/lib/cybersource_rest_client/models/tmsv2tokenizedcardstokenized_card_idissuerlifecycleeventsimulations_metadata_card_art.rb +189 -0
  263. data/lib/cybersource_rest_client/models/update_subscription.rb +1 -1
  264. data/lib/cybersource_rest_client/models/upv1capturecontexts_data.rb +28 -6
  265. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_buyer_information.rb +41 -5
  266. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_buyer_information_personal_identification.rb +1 -0
  267. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_client_reference_information_partner.rb +3 -3
  268. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_consumer_authentication_information.rb +24 -5
  269. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_device_information.rb +196 -0
  270. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_merchant_defined_information.rb +3 -2
  271. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_merchant_information_merchant_descriptor.rb +124 -5
  272. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_order_information.rb +15 -5
  273. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_order_information_amount_details.rb +15 -5
  274. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_order_information_amount_details_tax_details.rb +213 -0
  275. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_order_information_invoice_details.rb +213 -0
  276. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_order_information_line_items.rb +30 -0
  277. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_order_information_line_items_passenger.rb +8 -0
  278. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_order_information_line_items_tax_details.rb +7 -0
  279. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_payment_information.rb +189 -0
  280. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_payment_information_card.rb +196 -0
  281. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_processing_information.rb +1 -0
  282. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_processing_information_authorization_options.rb +74 -5
  283. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_processing_information_authorization_options_initiator.rb +1 -0
  284. data/lib/cybersource_rest_client/models/upv1capturecontexts_data_recipient_information.rb +39 -5
  285. data/lib/cybersource_rest_client/models/upv1capturecontexts_order_information.rb +1 -0
  286. data/lib/cybersource_rest_client/utilities/capture_context/capture_context_parsing_utility.rb +113 -0
  287. data/lib/cybersource_rest_client/utilities/capture_context/public_key_fetcher.rb +131 -0
  288. data/lib/cybersource_rest_client/utilities/jwe_utility.rb +1 -1
  289. data/lib/cybersource_rest_client.rb +144 -62
  290. metadata +151 -65
  291. /data/lib/AuthenticationSDK/util/{JWEUtility.rb → AuthJWEUtility.rb} +0 -0
@@ -0,0 +1,205 @@
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 Tmsv2tokenizeProcessingInformation
16
+ # Array of actions (one or more) to be included in the tokenize request. Possible Values: - `TOKEN_CREATE`: Use this when you want to create a token from the card/bank data in your tokenize request.
17
+ attr_accessor :action_list
18
+
19
+ # TMS tokens types you want to perform the action on. Possible Values: - customer - paymentInstrument - instrumentIdentifier - shippingAddress - tokenizedCard
20
+ attr_accessor :action_token_types
21
+
22
+ # Attribute mapping from ruby-style variable name to JSON key.
23
+ def self.attribute_map
24
+ {
25
+ :'action_list' => :'actionList',
26
+ :'action_token_types' => :'actionTokenTypes'
27
+ }
28
+ end
29
+
30
+ # Attribute mapping from JSON key to ruby-style variable name.
31
+ def self.json_map
32
+ {
33
+ :'action_list' => :'action_list',
34
+ :'action_token_types' => :'action_token_types'
35
+ }
36
+ end
37
+
38
+ # Attribute type mapping.
39
+ def self.swagger_types
40
+ {
41
+ :'action_list' => :'Array<String>',
42
+ :'action_token_types' => :'Array<String>'
43
+ }
44
+ end
45
+
46
+ # Initializes the object
47
+ # @param [Hash] attributes Model attributes in the form of hash
48
+ def initialize(attributes = {})
49
+ return unless attributes.is_a?(Hash)
50
+
51
+ # convert string to symbol for hash key
52
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
53
+
54
+ if attributes.has_key?(:'actionList')
55
+ if (value = attributes[:'actionList']).is_a?(Array)
56
+ self.action_list = value
57
+ end
58
+ end
59
+
60
+ if attributes.has_key?(:'actionTokenTypes')
61
+ if (value = attributes[:'actionTokenTypes']).is_a?(Array)
62
+ self.action_token_types = value
63
+ end
64
+ end
65
+ end
66
+
67
+ # Show invalid properties with the reasons. Usually used together with valid?
68
+ # @return Array for valid properties with the reasons
69
+ def list_invalid_properties
70
+ invalid_properties = Array.new
71
+ invalid_properties
72
+ end
73
+
74
+ # Check to see if the all the properties in the model are valid
75
+ # @return true if the model is valid
76
+ def valid?
77
+ true
78
+ end
79
+
80
+ # Checks equality by comparing each attribute.
81
+ # @param [Object] Object to be compared
82
+ def ==(o)
83
+ return true if self.equal?(o)
84
+ self.class == o.class &&
85
+ action_list == o.action_list &&
86
+ action_token_types == o.action_token_types
87
+ end
88
+
89
+ # @see the `==` method
90
+ # @param [Object] Object to be compared
91
+ def eql?(o)
92
+ self == o
93
+ end
94
+
95
+ # Calculates hash code according to all attributes.
96
+ # @return [Fixnum] Hash code
97
+ def hash
98
+ [action_list, action_token_types].hash
99
+ end
100
+
101
+ # Builds the object from hash
102
+ # @param [Hash] attributes Model attributes in the form of hash
103
+ # @return [Object] Returns the model itself
104
+ def build_from_hash(attributes)
105
+ return nil unless attributes.is_a?(Hash)
106
+ self.class.swagger_types.each_pair do |key, type|
107
+ if type =~ /\AArray<(.*)>/i
108
+ # check to ensure the input is an array given that the the attribute
109
+ # is documented as an array but the input is not
110
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
111
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
112
+ end
113
+ elsif !attributes[self.class.attribute_map[key]].nil?
114
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
115
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
116
+ end
117
+
118
+ self
119
+ end
120
+
121
+ # Deserializes the data based on type
122
+ # @param string type Data type
123
+ # @param string value Value to be deserialized
124
+ # @return [Object] Deserialized data
125
+ def _deserialize(type, value)
126
+ case type.to_sym
127
+ when :DateTime
128
+ DateTime.parse(value)
129
+ when :Date
130
+ Date.parse(value)
131
+ when :String
132
+ value.to_s
133
+ when :Integer
134
+ value.to_i
135
+ when :Float
136
+ value.to_f
137
+ when :BOOLEAN
138
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
139
+ true
140
+ else
141
+ false
142
+ end
143
+ when :Object
144
+ # generic object (usually a Hash), return directly
145
+ value
146
+ when /\AArray<(?<inner_type>.+)>\z/
147
+ inner_type = Regexp.last_match[:inner_type]
148
+ value.map { |v| _deserialize(inner_type, v) }
149
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
150
+ k_type = Regexp.last_match[:k_type]
151
+ v_type = Regexp.last_match[:v_type]
152
+ {}.tap do |hash|
153
+ value.each do |k, v|
154
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
155
+ end
156
+ end
157
+ else # model
158
+ temp_model = CyberSource.const_get(type).new
159
+ temp_model.build_from_hash(value)
160
+ end
161
+ end
162
+
163
+ # Returns the string representation of the object
164
+ # @return [String] String presentation of the object
165
+ def to_s
166
+ to_hash.to_s
167
+ end
168
+
169
+ # to_body is an alias to to_hash (backward compatibility)
170
+ # @return [Hash] Returns the object in the form of hash
171
+ def to_body
172
+ to_hash
173
+ end
174
+
175
+ # Returns the object in the form of hash
176
+ # @return [Hash] Returns the object in the form of hash
177
+ def to_hash
178
+ hash = {}
179
+ self.class.attribute_map.each_pair do |attr, param|
180
+ value = self.send(attr)
181
+ next if value.nil?
182
+ hash[param] = _to_hash(value)
183
+ end
184
+ hash
185
+ end
186
+
187
+ # Outputs non-array value in the form of hash
188
+ # For object, use to_hash. Otherwise, just return the value
189
+ # @param [Object] value Any valid value
190
+ # @return [Hash] Returns the value in the form of hash
191
+ def _to_hash(value)
192
+ if value.is_a?(Array)
193
+ value.compact.map { |v| _to_hash(v) }
194
+ elsif value.is_a?(Hash)
195
+ {}.tap do |hash|
196
+ value.each { |k, v| hash[k] = _to_hash(v) }
197
+ end
198
+ elsif value.respond_to? :to_hash
199
+ value.to_hash
200
+ else
201
+ value
202
+ end
203
+ end
204
+ end
205
+ end
@@ -0,0 +1,247 @@
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 Tmsv2tokenizeTokenInformation
16
+ # TMS Transient Token, 64 hexadecimal id value representing captured payment credentials (including Sensitive Authentication Data, e.g. CVV).
17
+ attr_accessor :jti
18
+
19
+ # Flex API Transient Token encoded as JWT (JSON Web Token), e.g. Flex microform or Unified Payment checkout result.
20
+ attr_accessor :transient_token_jwt
21
+
22
+ attr_accessor :customer
23
+
24
+ attr_accessor :shipping_address
25
+
26
+ attr_accessor :payment_instrument
27
+
28
+ attr_accessor :instrument_identifier
29
+
30
+ # Attribute mapping from ruby-style variable name to JSON key.
31
+ def self.attribute_map
32
+ {
33
+ :'jti' => :'jti',
34
+ :'transient_token_jwt' => :'transientTokenJwt',
35
+ :'customer' => :'customer',
36
+ :'shipping_address' => :'shippingAddress',
37
+ :'payment_instrument' => :'paymentInstrument',
38
+ :'instrument_identifier' => :'instrumentIdentifier'
39
+ }
40
+ end
41
+
42
+ # Attribute mapping from JSON key to ruby-style variable name.
43
+ def self.json_map
44
+ {
45
+ :'jti' => :'jti',
46
+ :'transient_token_jwt' => :'transient_token_jwt',
47
+ :'customer' => :'customer',
48
+ :'shipping_address' => :'shipping_address',
49
+ :'payment_instrument' => :'payment_instrument',
50
+ :'instrument_identifier' => :'instrument_identifier'
51
+ }
52
+ end
53
+
54
+ # Attribute type mapping.
55
+ def self.swagger_types
56
+ {
57
+ :'jti' => :'String',
58
+ :'transient_token_jwt' => :'String',
59
+ :'customer' => :'Tmsv2tokenizeTokenInformationCustomer',
60
+ :'shipping_address' => :'Tmsv2tokenizeTokenInformationCustomerEmbeddedDefaultShippingAddress',
61
+ :'payment_instrument' => :'Tmsv2tokenizeTokenInformationCustomerEmbeddedDefaultPaymentInstrument',
62
+ :'instrument_identifier' => :'TmsEmbeddedInstrumentIdentifier'
63
+ }
64
+ end
65
+
66
+ # Initializes the object
67
+ # @param [Hash] attributes Model attributes in the form of hash
68
+ def initialize(attributes = {})
69
+ return unless attributes.is_a?(Hash)
70
+
71
+ # convert string to symbol for hash key
72
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
73
+
74
+ if attributes.has_key?(:'jti')
75
+ self.jti = attributes[:'jti']
76
+ end
77
+
78
+ if attributes.has_key?(:'transientTokenJwt')
79
+ self.transient_token_jwt = attributes[:'transientTokenJwt']
80
+ end
81
+
82
+ if attributes.has_key?(:'customer')
83
+ self.customer = attributes[:'customer']
84
+ end
85
+
86
+ if attributes.has_key?(:'shippingAddress')
87
+ self.shipping_address = attributes[:'shippingAddress']
88
+ end
89
+
90
+ if attributes.has_key?(:'paymentInstrument')
91
+ self.payment_instrument = attributes[:'paymentInstrument']
92
+ end
93
+
94
+ if attributes.has_key?(:'instrumentIdentifier')
95
+ self.instrument_identifier = attributes[:'instrumentIdentifier']
96
+ end
97
+ end
98
+
99
+ # Show invalid properties with the reasons. Usually used together with valid?
100
+ # @return Array for valid properties with the reasons
101
+ def list_invalid_properties
102
+ invalid_properties = Array.new
103
+ invalid_properties
104
+ end
105
+
106
+ # Check to see if the all the properties in the model are valid
107
+ # @return true if the model is valid
108
+ def valid?
109
+ true
110
+ end
111
+
112
+ # Custom attribute writer method with validation
113
+ # @param [Object] jti Value to be assigned
114
+ def jti=(jti)
115
+ @jti = jti
116
+ end
117
+
118
+ # Checks equality by comparing each attribute.
119
+ # @param [Object] Object to be compared
120
+ def ==(o)
121
+ return true if self.equal?(o)
122
+ self.class == o.class &&
123
+ jti == o.jti &&
124
+ transient_token_jwt == o.transient_token_jwt &&
125
+ customer == o.customer &&
126
+ shipping_address == o.shipping_address &&
127
+ payment_instrument == o.payment_instrument &&
128
+ instrument_identifier == o.instrument_identifier
129
+ end
130
+
131
+ # @see the `==` method
132
+ # @param [Object] Object to be compared
133
+ def eql?(o)
134
+ self == o
135
+ end
136
+
137
+ # Calculates hash code according to all attributes.
138
+ # @return [Fixnum] Hash code
139
+ def hash
140
+ [jti, transient_token_jwt, customer, shipping_address, payment_instrument, instrument_identifier].hash
141
+ end
142
+
143
+ # Builds the object from hash
144
+ # @param [Hash] attributes Model attributes in the form of hash
145
+ # @return [Object] Returns the model itself
146
+ def build_from_hash(attributes)
147
+ return nil unless attributes.is_a?(Hash)
148
+ self.class.swagger_types.each_pair do |key, type|
149
+ if type =~ /\AArray<(.*)>/i
150
+ # check to ensure the input is an array given that the the attribute
151
+ # is documented as an array but the input is not
152
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
153
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
154
+ end
155
+ elsif !attributes[self.class.attribute_map[key]].nil?
156
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
157
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
158
+ end
159
+
160
+ self
161
+ end
162
+
163
+ # Deserializes the data based on type
164
+ # @param string type Data type
165
+ # @param string value Value to be deserialized
166
+ # @return [Object] Deserialized data
167
+ def _deserialize(type, value)
168
+ case type.to_sym
169
+ when :DateTime
170
+ DateTime.parse(value)
171
+ when :Date
172
+ Date.parse(value)
173
+ when :String
174
+ value.to_s
175
+ when :Integer
176
+ value.to_i
177
+ when :Float
178
+ value.to_f
179
+ when :BOOLEAN
180
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
181
+ true
182
+ else
183
+ false
184
+ end
185
+ when :Object
186
+ # generic object (usually a Hash), return directly
187
+ value
188
+ when /\AArray<(?<inner_type>.+)>\z/
189
+ inner_type = Regexp.last_match[:inner_type]
190
+ value.map { |v| _deserialize(inner_type, v) }
191
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
192
+ k_type = Regexp.last_match[:k_type]
193
+ v_type = Regexp.last_match[:v_type]
194
+ {}.tap do |hash|
195
+ value.each do |k, v|
196
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
197
+ end
198
+ end
199
+ else # model
200
+ temp_model = CyberSource.const_get(type).new
201
+ temp_model.build_from_hash(value)
202
+ end
203
+ end
204
+
205
+ # Returns the string representation of the object
206
+ # @return [String] String presentation of the object
207
+ def to_s
208
+ to_hash.to_s
209
+ end
210
+
211
+ # to_body is an alias to to_hash (backward compatibility)
212
+ # @return [Hash] Returns the object in the form of hash
213
+ def to_body
214
+ to_hash
215
+ end
216
+
217
+ # Returns the object in the form of hash
218
+ # @return [Hash] Returns the object in the form of hash
219
+ def to_hash
220
+ hash = {}
221
+ self.class.attribute_map.each_pair do |attr, param|
222
+ value = self.send(attr)
223
+ next if value.nil?
224
+ hash[param] = _to_hash(value)
225
+ end
226
+ hash
227
+ end
228
+
229
+ # Outputs non-array value in the form of hash
230
+ # For object, use to_hash. Otherwise, just return the value
231
+ # @param [Object] value Any valid value
232
+ # @return [Hash] Returns the value in the form of hash
233
+ def _to_hash(value)
234
+ if value.is_a?(Array)
235
+ value.compact.map { |v| _to_hash(v) }
236
+ elsif value.is_a?(Hash)
237
+ {}.tap do |hash|
238
+ value.each { |k, v| hash[k] = _to_hash(v) }
239
+ end
240
+ elsif value.respond_to? :to_hash
241
+ value.to_hash
242
+ else
243
+ value
244
+ end
245
+ end
246
+ end
247
+ end