connect-sdk-ruby 1.36.0 → 2.0.0

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 (462) hide show
  1. checksums.yaml +4 -4
  2. data/connect-sdk-ruby.gemspec +1 -1
  3. data/examples/merchant/captures/get_capture_example.rb +1 -1
  4. data/examples/merchant/disputes/cancel_dispute_example.rb +1 -1
  5. data/examples/merchant/disputes/get_dispute_example.rb +1 -1
  6. data/examples/merchant/disputes/submit_dispute_example.rb +1 -1
  7. data/examples/merchant/disputes/upload_dispute_file_example.rb +30 -0
  8. data/examples/merchant/{products/get_payment_product_public_key_example.rb → files/get_file_example.rb} +7 -1
  9. data/examples/merchant/hostedcheckouts/create_hosted_checkout_example.rb +1 -1
  10. data/examples/merchant/hostedcheckouts/get_hosted_checkout_example.rb +1 -1
  11. data/examples/merchant/hostedmandatemanagements/create_hosted_mandate_management_example.rb +1 -1
  12. data/examples/merchant/hostedmandatemanagements/get_hosted_mandate_management_example.rb +1 -1
  13. data/examples/merchant/mandates/block_mandate_example.rb +1 -1
  14. data/examples/merchant/mandates/create_mandate_example.rb +1 -1
  15. data/examples/merchant/mandates/create_mandate_with_reference_example.rb +1 -1
  16. data/examples/merchant/mandates/get_mandate_example.rb +1 -1
  17. data/examples/merchant/mandates/revoke_mandate_example.rb +1 -1
  18. data/examples/merchant/mandates/unblock_mandate_example.rb +1 -1
  19. data/examples/merchant/payments/approve_payment_example.rb +1 -1
  20. data/examples/merchant/payments/cancel_approval_payment_example.rb +1 -1
  21. data/examples/merchant/payments/cancel_payment_example.rb +1 -1
  22. data/examples/merchant/payments/capture_payment_example.rb +1 -1
  23. data/examples/merchant/payments/complete_payment_example.rb +1 -1
  24. data/examples/merchant/payments/create_payment_dispute_example.rb +1 -1
  25. data/examples/merchant/payments/create_payment_example.rb +3 -3
  26. data/examples/merchant/payments/find_payments_example.rb +1 -1
  27. data/examples/merchant/payments/get_payment_captures_example.rb +1 -1
  28. data/examples/merchant/payments/get_payment_disputes_example.rb +1 -1
  29. data/examples/merchant/payments/get_payment_example.rb +1 -1
  30. data/examples/merchant/payments/get_refunds_example.rb +1 -1
  31. data/examples/merchant/payments/get_third_party_status_example.rb +1 -1
  32. data/examples/merchant/payments/process_challenged_payment_example.rb +1 -1
  33. data/examples/merchant/payments/refund_payment_example.rb +2 -2
  34. data/examples/merchant/payments/tokenize_payment_example.rb +1 -1
  35. data/examples/merchant/payouts/approve_payout_example.rb +1 -1
  36. data/examples/merchant/payouts/cancel_approval_payout_example.rb +1 -1
  37. data/examples/merchant/payouts/cancel_payout_example.rb +1 -1
  38. data/examples/merchant/payouts/create_payout_example.rb +2 -2
  39. data/examples/merchant/payouts/find_payouts_example.rb +1 -1
  40. data/examples/merchant/payouts/get_payout_example.rb +1 -1
  41. data/examples/merchant/productgroups/get_device_fingerprint_for_groups_example.rb +1 -1
  42. data/examples/merchant/productgroups/get_payment_product_group_example.rb +1 -1
  43. data/examples/merchant/productgroups/get_payment_product_groups_example.rb +1 -1
  44. data/examples/merchant/products/get_customer_details_example.rb +1 -1
  45. data/examples/merchant/products/get_device_fingerprint_example.rb +1 -1
  46. data/examples/merchant/products/get_directory_example.rb +1 -1
  47. data/examples/merchant/products/get_networks_example.rb +1 -1
  48. data/examples/merchant/products/get_payment_product_example.rb +1 -1
  49. data/examples/merchant/products/get_payment_products_example.rb +1 -1
  50. data/examples/merchant/refunds/approve_refund_example.rb +1 -1
  51. data/examples/merchant/refunds/cancel_approval_refund_example.rb +1 -1
  52. data/examples/merchant/refunds/cancel_refund_example.rb +1 -1
  53. data/examples/merchant/refunds/find_refunds_example.rb +1 -1
  54. data/examples/merchant/refunds/get_refund_example.rb +1 -1
  55. data/examples/merchant/riskassessments/risk_assessment_bank_account_example.rb +1 -1
  56. data/examples/merchant/riskassessments/risk_assessment_cards_example.rb +1 -1
  57. data/examples/merchant/services/convert_amount_example.rb +1 -1
  58. data/examples/merchant/services/convert_bank_account_example.rb +1 -1
  59. data/examples/merchant/services/get_privacy_policy_example.rb +1 -1
  60. data/examples/merchant/services/iin_details_example.rb +1 -1
  61. data/examples/merchant/services/test_connection_example.rb +1 -1
  62. data/examples/merchant/sessions/create_session_example.rb +1 -1
  63. data/examples/merchant/tokens/approve_sepa_direct_debit_token_example.rb +1 -1
  64. data/examples/merchant/tokens/create_token_example.rb +1 -1
  65. data/examples/merchant/tokens/delete_token_example.rb +1 -1
  66. data/examples/merchant/tokens/get_token_example.rb +1 -1
  67. data/examples/merchant/tokens/update_token_example.rb +1 -1
  68. data/lib/ingenico/connect/sdk.rb +3 -1
  69. data/lib/ingenico/connect/sdk/api_exception.rb +12 -14
  70. data/lib/ingenico/connect/sdk/api_resource.rb +14 -13
  71. data/lib/ingenico/connect/sdk/authenticator.rb +5 -4
  72. data/lib/ingenico/connect/sdk/call_context.rb +6 -6
  73. data/lib/ingenico/connect/sdk/client.rb +12 -11
  74. data/lib/ingenico/connect/sdk/communication_exception.rb +2 -1
  75. data/lib/ingenico/connect/sdk/communicator.rb +331 -128
  76. data/lib/ingenico/connect/sdk/communicator_configuration.rb +21 -39
  77. data/lib/ingenico/connect/sdk/connection.rb +16 -6
  78. data/lib/ingenico/connect/sdk/data_object.rb +2 -13
  79. data/lib/ingenico/connect/sdk/declined_payment_exception.rb +1 -1
  80. data/lib/ingenico/connect/sdk/declined_payout_exception.rb +1 -1
  81. data/lib/ingenico/connect/sdk/declined_refund_exception.rb +1 -1
  82. data/lib/ingenico/connect/sdk/defaultimpl/authorization_type.rb +2 -1
  83. data/lib/ingenico/connect/sdk/defaultimpl/default_authenticator.rb +9 -7
  84. data/lib/ingenico/connect/sdk/defaultimpl/default_connection.rb +212 -68
  85. data/lib/ingenico/connect/sdk/defaultimpl/default_marshaller.rb +2 -2
  86. data/lib/ingenico/connect/sdk/domain/capture/capture.rb +12 -15
  87. data/lib/ingenico/connect/sdk/domain/capture/capture_output.rb +43 -60
  88. data/lib/ingenico/connect/sdk/domain/capture/capture_status_output.rb +4 -3
  89. data/lib/ingenico/connect/sdk/domain/capture/captures_response.rb +5 -6
  90. data/lib/ingenico/connect/sdk/domain/definitions/abstract_order_status.rb +4 -3
  91. data/lib/ingenico/connect/sdk/domain/definitions/abstract_payment_method_specific_input.rb +4 -3
  92. data/lib/ingenico/connect/sdk/domain/definitions/additional_order_input_airline_data.rb +5 -6
  93. data/lib/ingenico/connect/sdk/domain/definitions/address.rb +25 -24
  94. data/lib/ingenico/connect/sdk/domain/definitions/airline_data.rb +76 -79
  95. data/lib/ingenico/connect/sdk/domain/definitions/airline_flight_leg.rb +62 -61
  96. data/lib/ingenico/connect/sdk/domain/definitions/airline_passenger.rb +13 -12
  97. data/lib/ingenico/connect/sdk/domain/definitions/amount_of_money.rb +7 -6
  98. data/lib/ingenico/connect/sdk/domain/definitions/bank_account.rb +4 -3
  99. data/lib/ingenico/connect/sdk/domain/definitions/bank_account_bban.rb +19 -18
  100. data/lib/ingenico/connect/sdk/domain/definitions/bank_account_iban.rb +4 -3
  101. data/lib/ingenico/connect/sdk/domain/definitions/card.rb +4 -3
  102. data/lib/ingenico/connect/sdk/domain/definitions/card_essentials.rb +7 -6
  103. data/lib/ingenico/connect/sdk/domain/definitions/card_fraud_results.rb +15 -18
  104. data/lib/ingenico/connect/sdk/domain/definitions/card_without_cvv.rb +7 -6
  105. data/lib/ingenico/connect/sdk/domain/definitions/company_information.rb +7 -6
  106. data/lib/ingenico/connect/sdk/domain/definitions/contact_details_base.rb +7 -6
  107. data/lib/ingenico/connect/sdk/domain/definitions/customer_base.rb +12 -13
  108. data/lib/ingenico/connect/sdk/domain/definitions/fraud_fields.rb +70 -75
  109. data/lib/ingenico/connect/sdk/domain/definitions/fraud_fields_shipping_details.rb +14 -13
  110. data/lib/ingenico/connect/sdk/domain/definitions/fraud_results.rb +4 -3
  111. data/lib/ingenico/connect/sdk/domain/definitions/fraud_results_retail_decisions.rb +10 -9
  112. data/lib/ingenico/connect/sdk/domain/definitions/fraugster_results.rb +7 -6
  113. data/lib/ingenico/connect/sdk/domain/definitions/key_value_pair.rb +7 -6
  114. data/lib/ingenico/connect/sdk/domain/definitions/order_status_output.rb +17 -18
  115. data/lib/ingenico/connect/sdk/domain/definitions/payment_product_filter.rb +9 -12
  116. data/lib/ingenico/connect/sdk/domain/definitions/personal_name_base.rb +10 -9
  117. data/lib/ingenico/connect/sdk/domain/definitions/redirect_data_base.rb +7 -6
  118. data/lib/ingenico/connect/sdk/domain/definitions/result_do_risk_assessment.rb +15 -18
  119. data/lib/ingenico/connect/sdk/domain/definitions/retail_decisions_cc_fraud_check_output.rb +10 -9
  120. data/lib/ingenico/connect/sdk/domain/definitions/validation_bank_account_check.rb +10 -9
  121. data/lib/ingenico/connect/sdk/domain/definitions/validation_bank_account_output.rb +17 -18
  122. data/lib/ingenico/connect/sdk/domain/dispute/create_dispute_request.rb +17 -18
  123. data/lib/ingenico/connect/sdk/domain/dispute/dispute.rb +18 -21
  124. data/lib/ingenico/connect/sdk/domain/dispute/dispute_creation_detail.rb +10 -9
  125. data/lib/ingenico/connect/sdk/domain/dispute/dispute_output.rb +32 -39
  126. data/lib/ingenico/connect/sdk/domain/dispute/dispute_reference.rb +16 -15
  127. data/lib/ingenico/connect/sdk/domain/dispute/dispute_status_output.rb +13 -12
  128. data/lib/ingenico/connect/sdk/domain/dispute/disputes_response.rb +5 -6
  129. data/lib/ingenico/connect/sdk/domain/dispute/upload_dispute_file_response.rb +39 -0
  130. data/lib/ingenico/connect/sdk/domain/errors/api_error.rb +22 -21
  131. data/lib/ingenico/connect/sdk/domain/errors/error_response.rb +8 -9
  132. data/lib/ingenico/connect/sdk/domain/file/hosted_file.rb +13 -12
  133. data/lib/ingenico/connect/sdk/domain/hostedcheckout/create_hosted_checkout_request.rb +45 -66
  134. data/lib/ingenico/connect/sdk/domain/hostedcheckout/create_hosted_checkout_response.rb +17 -18
  135. data/lib/ingenico/connect/sdk/domain/hostedcheckout/created_payment_output.rb +23 -28
  136. data/lib/ingenico/connect/sdk/domain/hostedcheckout/displayed_data.rb +11 -12
  137. data/lib/ingenico/connect/sdk/domain/hostedcheckout/get_hosted_checkout_response.rb +8 -9
  138. data/lib/ingenico/connect/sdk/domain/hostedcheckout/hosted_checkout_specific_input.rb +29 -30
  139. data/lib/ingenico/connect/sdk/domain/hostedcheckout/mobile_payment_method_specific_input_hosted_checkout.rb +5 -6
  140. data/lib/ingenico/connect/sdk/domain/hostedcheckout/mobile_payment_product320_specific_input_hosted_checkout.rb +7 -6
  141. data/lib/ingenico/connect/sdk/domain/hostedcheckout/payment_product_filters_hosted_checkout.rb +12 -15
  142. data/lib/ingenico/connect/sdk/domain/hostedmandatemanagement/create_hosted_mandate_management_request.rb +9 -12
  143. data/lib/ingenico/connect/sdk/domain/hostedmandatemanagement/create_hosted_mandate_management_response.rb +10 -9
  144. data/lib/ingenico/connect/sdk/domain/hostedmandatemanagement/get_hosted_mandate_management_response.rb +8 -9
  145. data/lib/ingenico/connect/sdk/domain/hostedmandatemanagement/hosted_mandate_info.rb +20 -21
  146. data/lib/ingenico/connect/sdk/domain/hostedmandatemanagement/hosted_mandate_management_specific_input.rb +13 -12
  147. data/lib/ingenico/connect/sdk/domain/mandates/create_mandate_base.rb +23 -24
  148. data/lib/ingenico/connect/sdk/domain/mandates/create_mandate_response.rb +9 -12
  149. data/lib/ingenico/connect/sdk/domain/mandates/create_mandate_with_return_url.rb +4 -3
  150. data/lib/ingenico/connect/sdk/domain/mandates/get_mandate_response.rb +5 -6
  151. data/lib/ingenico/connect/sdk/domain/mandates/mandate_address.rb +16 -15
  152. data/lib/ingenico/connect/sdk/domain/mandates/mandate_contact_details.rb +4 -3
  153. data/lib/ingenico/connect/sdk/domain/mandates/mandate_customer.rb +20 -27
  154. data/lib/ingenico/connect/sdk/domain/mandates/mandate_merchant_action.rb +8 -9
  155. data/lib/ingenico/connect/sdk/domain/mandates/mandate_personal_information.rb +8 -9
  156. data/lib/ingenico/connect/sdk/domain/mandates/mandate_personal_name.rb +7 -6
  157. data/lib/ingenico/connect/sdk/domain/mandates/mandate_response.rb +20 -21
  158. data/lib/ingenico/connect/sdk/domain/metadata/shopping_cart_extension.rb +8 -8
  159. data/lib/ingenico/connect/sdk/domain/payment/abstract_bank_transfer_payment_method_specific_input.rb +4 -3
  160. data/lib/ingenico/connect/sdk/domain/payment/abstract_card_payment_method_specific_input.rb +44 -45
  161. data/lib/ingenico/connect/sdk/domain/payment/abstract_e_invoice_payment_method_specific_input.rb +4 -3
  162. data/lib/ingenico/connect/sdk/domain/payment/abstract_payment_method_specific_output.rb +4 -3
  163. data/lib/ingenico/connect/sdk/domain/payment/abstract_redirect_payment_method_specific_input.rb +16 -15
  164. data/lib/ingenico/connect/sdk/domain/payment/abstract_redirect_payment_product840_specific_input.rb +4 -3
  165. data/lib/ingenico/connect/sdk/domain/payment/abstract_sepa_direct_debit_payment_product771_specific_input.rb +5 -4
  166. data/lib/ingenico/connect/sdk/domain/payment/abstract_three_d_secure.rb +21 -24
  167. data/lib/ingenico/connect/sdk/domain/payment/additional_order_input.rb +20 -25
  168. data/lib/ingenico/connect/sdk/domain/payment/address_personal.rb +5 -6
  169. data/lib/ingenico/connect/sdk/domain/payment/amount_breakdown.rb +7 -6
  170. data/lib/ingenico/connect/sdk/domain/payment/approve_payment_card_payment_method_specific_output.rb +4 -3
  171. data/lib/ingenico/connect/sdk/domain/payment/approve_payment_mobile_payment_method_specific_output.rb +4 -3
  172. data/lib/ingenico/connect/sdk/domain/payment/approve_payment_payment_method_specific_input.rb +7 -6
  173. data/lib/ingenico/connect/sdk/domain/payment/approve_payment_request.rb +16 -21
  174. data/lib/ingenico/connect/sdk/domain/payment/browser_data.rb +22 -21
  175. data/lib/ingenico/connect/sdk/domain/payment/cancel_approval_payment_response.rb +5 -6
  176. data/lib/ingenico/connect/sdk/domain/payment/cancel_payment_card_payment_method_specific_output.rb +4 -3
  177. data/lib/ingenico/connect/sdk/domain/payment/cancel_payment_mobile_payment_method_specific_output.rb +4 -3
  178. data/lib/ingenico/connect/sdk/domain/payment/cancel_payment_response.rb +13 -18
  179. data/lib/ingenico/connect/sdk/domain/payment/capture_payment_request.rb +7 -6
  180. data/lib/ingenico/connect/sdk/domain/payment/card_payment_method_specific_input.rb +21 -26
  181. data/lib/ingenico/connect/sdk/domain/payment/card_payment_method_specific_input_base.rb +5 -6
  182. data/lib/ingenico/connect/sdk/domain/payment/card_payment_method_specific_output.rb +19 -24
  183. data/lib/ingenico/connect/sdk/domain/payment/card_recurrence_details.rb +10 -9
  184. data/lib/ingenico/connect/sdk/domain/payment/cash_payment_method_specific_input.rb +30 -43
  185. data/lib/ingenico/connect/sdk/domain/payment/cash_payment_product1503_specific_input.rb +6 -5
  186. data/lib/ingenico/connect/sdk/domain/payment/cash_payment_product1504_specific_input.rb +4 -3
  187. data/lib/ingenico/connect/sdk/domain/payment/cash_payment_product1521_specific_input.rb +4 -3
  188. data/lib/ingenico/connect/sdk/domain/payment/cash_payment_product1522_specific_input.rb +4 -3
  189. data/lib/ingenico/connect/sdk/domain/payment/cash_payment_product1523_specific_input.rb +4 -3
  190. data/lib/ingenico/connect/sdk/domain/payment/cash_payment_product1524_specific_input.rb +4 -3
  191. data/lib/ingenico/connect/sdk/domain/payment/cash_payment_product1526_specific_input.rb +4 -3
  192. data/lib/ingenico/connect/sdk/domain/payment/complete_payment_card_payment_method_specific_input.rb +5 -6
  193. data/lib/ingenico/connect/sdk/domain/payment/complete_payment_request.rb +13 -18
  194. data/lib/ingenico/connect/sdk/domain/payment/contact_details.rb +13 -12
  195. data/lib/ingenico/connect/sdk/domain/payment/create_payment_request.rb +52 -75
  196. data/lib/ingenico/connect/sdk/domain/payment/create_payment_result.rb +13 -18
  197. data/lib/ingenico/connect/sdk/domain/payment/customer.rb +38 -49
  198. data/lib/ingenico/connect/sdk/domain/payment/customer_account.rb +40 -45
  199. data/lib/ingenico/connect/sdk/domain/payment/customer_account_authentication.rb +7 -6
  200. data/lib/ingenico/connect/sdk/domain/payment/customer_approve_payment.rb +4 -3
  201. data/lib/ingenico/connect/sdk/domain/payment/customer_device.rb +26 -27
  202. data/lib/ingenico/connect/sdk/domain/payment/customer_payment_activity.rb +10 -9
  203. data/lib/ingenico/connect/sdk/domain/payment/decrypted_payment_data.rb +22 -21
  204. data/lib/ingenico/connect/sdk/domain/payment/device_render_options.rb +7 -6
  205. data/lib/ingenico/connect/sdk/domain/payment/e_invoice_payment_method_specific_input.rb +8 -9
  206. data/lib/ingenico/connect/sdk/domain/payment/e_invoice_payment_method_specific_output.rb +5 -6
  207. data/lib/ingenico/connect/sdk/domain/payment/e_invoice_payment_product9000_specific_input.rb +8 -9
  208. data/lib/ingenico/connect/sdk/domain/payment/e_invoice_payment_product9000_specific_output.rb +4 -3
  209. data/lib/ingenico/connect/sdk/domain/payment/external_cardholder_authentication_data.rb +25 -24
  210. data/lib/ingenico/connect/sdk/domain/payment/find_payments_response.rb +14 -15
  211. data/lib/ingenico/connect/sdk/domain/payment/gift_card_purchase.rb +8 -9
  212. data/lib/ingenico/connect/sdk/domain/payment/hosted_checkout_specific_output.rb +7 -6
  213. data/lib/ingenico/connect/sdk/domain/payment/invoice_payment_method_specific_input.rb +4 -3
  214. data/lib/ingenico/connect/sdk/domain/payment/level3_summary_data.rb +14 -13
  215. data/lib/ingenico/connect/sdk/domain/payment/line_item.rb +18 -25
  216. data/lib/ingenico/connect/sdk/domain/payment/line_item_invoice_data.rb +16 -15
  217. data/lib/ingenico/connect/sdk/domain/payment/line_item_level3_interchange_information.rb +25 -24
  218. data/lib/ingenico/connect/sdk/domain/payment/merchant.rb +11 -12
  219. data/lib/ingenico/connect/sdk/domain/payment/merchant_action.rb +27 -36
  220. data/lib/ingenico/connect/sdk/domain/payment/mobile_payment_data.rb +7 -6
  221. data/lib/ingenico/connect/sdk/domain/payment/mobile_payment_method_specific_input.rb +17 -18
  222. data/lib/ingenico/connect/sdk/domain/payment/mobile_payment_method_specific_output.rb +19 -24
  223. data/lib/ingenico/connect/sdk/domain/payment/mobile_three_d_secure_challenge_parameters.rb +13 -12
  224. data/lib/ingenico/connect/sdk/domain/payment/non_sepa_direct_debit_payment_method_specific_input.rb +27 -30
  225. data/lib/ingenico/connect/sdk/domain/payment/non_sepa_direct_debit_payment_method_specific_output.rb +5 -6
  226. data/lib/ingenico/connect/sdk/domain/payment/non_sepa_direct_debit_payment_product705_specific_input.rb +11 -12
  227. data/lib/ingenico/connect/sdk/domain/payment/non_sepa_direct_debit_payment_product730_specific_input.rb +5 -6
  228. data/lib/ingenico/connect/sdk/domain/payment/order.rb +35 -50
  229. data/lib/ingenico/connect/sdk/domain/payment/order_approve_payment.rb +13 -18
  230. data/lib/ingenico/connect/sdk/domain/payment/order_invoice_data.rb +14 -15
  231. data/lib/ingenico/connect/sdk/domain/payment/order_line_details.rb +34 -33
  232. data/lib/ingenico/connect/sdk/domain/payment/order_output.rb +9 -12
  233. data/lib/ingenico/connect/sdk/domain/payment/order_references.rb +14 -15
  234. data/lib/ingenico/connect/sdk/domain/payment/order_references_approve_payment.rb +4 -3
  235. data/lib/ingenico/connect/sdk/domain/payment/order_type_information.rb +10 -9
  236. data/lib/ingenico/connect/sdk/domain/payment/payment.rb +16 -21
  237. data/lib/ingenico/connect/sdk/domain/payment/payment_account_on_file.rb +7 -6
  238. data/lib/ingenico/connect/sdk/domain/payment/payment_approval_response.rb +18 -25
  239. data/lib/ingenico/connect/sdk/domain/payment/payment_creation_output.rb +10 -9
  240. data/lib/ingenico/connect/sdk/domain/payment/payment_creation_references.rb +7 -6
  241. data/lib/ingenico/connect/sdk/domain/payment/payment_error_response.rb +12 -15
  242. data/lib/ingenico/connect/sdk/domain/payment/payment_output.rb +43 -60
  243. data/lib/ingenico/connect/sdk/domain/payment/payment_product3201_specific_output.rb +5 -6
  244. data/lib/ingenico/connect/sdk/domain/payment/payment_product771_specific_output.rb +4 -3
  245. data/lib/ingenico/connect/sdk/domain/payment/payment_product836_specific_output.rb +4 -3
  246. data/lib/ingenico/connect/sdk/domain/payment/payment_product840_customer_account.rb +31 -30
  247. data/lib/ingenico/connect/sdk/domain/payment/payment_product840_specific_output.rb +13 -18
  248. data/lib/ingenico/connect/sdk/domain/payment/payment_product863_third_party_data.rb +22 -21
  249. data/lib/ingenico/connect/sdk/domain/payment/payment_references.rb +19 -18
  250. data/lib/ingenico/connect/sdk/domain/payment/payment_status_output.rb +10 -9
  251. data/lib/ingenico/connect/sdk/domain/payment/personal_information.rb +11 -12
  252. data/lib/ingenico/connect/sdk/domain/payment/personal_name.rb +4 -3
  253. data/lib/ingenico/connect/sdk/domain/payment/protection_eligibility.rb +7 -6
  254. data/lib/ingenico/connect/sdk/domain/payment/redirect_payment_method_specific_input.rb +36 -49
  255. data/lib/ingenico/connect/sdk/domain/payment/redirect_payment_method_specific_input_base.rb +5 -6
  256. data/lib/ingenico/connect/sdk/domain/payment/redirect_payment_method_specific_output.rb +24 -33
  257. data/lib/ingenico/connect/sdk/domain/payment/redirect_payment_product809_specific_input.rb +8 -7
  258. data/lib/ingenico/connect/sdk/domain/payment/redirect_payment_product816_specific_input.rb +5 -6
  259. data/lib/ingenico/connect/sdk/domain/payment/redirect_payment_product840_specific_input.rb +8 -7
  260. data/lib/ingenico/connect/sdk/domain/payment/redirect_payment_product861_specific_input.rb +4 -3
  261. data/lib/ingenico/connect/sdk/domain/payment/redirect_payment_product863_specific_input.rb +7 -6
  262. data/lib/ingenico/connect/sdk/domain/payment/redirect_payment_product882_specific_input.rb +4 -3
  263. data/lib/ingenico/connect/sdk/domain/payment/redirection_data.rb +7 -6
  264. data/lib/ingenico/connect/sdk/domain/payment/refund_e_wallet_method_specific_output.rb +5 -6
  265. data/lib/ingenico/connect/sdk/domain/payment/refund_method_specific_output.rb +7 -6
  266. data/lib/ingenico/connect/sdk/domain/payment/refund_mobile_method_specific_output.rb +4 -3
  267. data/lib/ingenico/connect/sdk/domain/payment/refund_output.rb +27 -36
  268. data/lib/ingenico/connect/sdk/domain/payment/refund_payment_product840_customer_account.rb +10 -9
  269. data/lib/ingenico/connect/sdk/domain/payment/refund_payment_product840_specific_output.rb +5 -6
  270. data/lib/ingenico/connect/sdk/domain/payment/sdk_data_input.rb +26 -27
  271. data/lib/ingenico/connect/sdk/domain/payment/sdk_data_output.rb +4 -3
  272. data/lib/ingenico/connect/sdk/domain/payment/seller.rb +29 -30
  273. data/lib/ingenico/connect/sdk/domain/payment/sepa_direct_debit_payment_method_specific_input.rb +23 -24
  274. data/lib/ingenico/connect/sdk/domain/payment/sepa_direct_debit_payment_method_specific_input_base.rb +5 -6
  275. data/lib/ingenico/connect/sdk/domain/payment/sepa_direct_debit_payment_method_specific_output.rb +9 -12
  276. data/lib/ingenico/connect/sdk/domain/payment/sepa_direct_debit_payment_product771_specific_input.rb +8 -9
  277. data/lib/ingenico/connect/sdk/domain/payment/sepa_direct_debit_payment_product771_specific_input_base.rb +8 -9
  278. data/lib/ingenico/connect/sdk/domain/payment/shipping.rb +26 -27
  279. data/lib/ingenico/connect/sdk/domain/payment/shopping_cart.rb +22 -27
  280. data/lib/ingenico/connect/sdk/domain/payment/third_party_data.rb +5 -6
  281. data/lib/ingenico/connect/sdk/domain/payment/third_party_status_response.rb +4 -3
  282. data/lib/ingenico/connect/sdk/domain/payment/three_d_secure.rb +9 -12
  283. data/lib/ingenico/connect/sdk/domain/payment/three_d_secure_data.rb +10 -9
  284. data/lib/ingenico/connect/sdk/domain/payment/three_d_secure_results.rb +27 -30
  285. data/lib/ingenico/connect/sdk/domain/payment/tokenize_payment_request.rb +4 -3
  286. data/lib/ingenico/connect/sdk/domain/payout/approve_payout_request.rb +4 -3
  287. data/lib/ingenico/connect/sdk/domain/payout/bank_transfer_payout_method_specific_input.rb +22 -27
  288. data/lib/ingenico/connect/sdk/domain/payout/card_payout_method_specific_input.rb +11 -12
  289. data/lib/ingenico/connect/sdk/domain/payout/create_payout_request.rb +44 -57
  290. data/lib/ingenico/connect/sdk/domain/payout/find_payouts_response.rb +14 -15
  291. data/lib/ingenico/connect/sdk/domain/payout/payout_customer.rb +20 -27
  292. data/lib/ingenico/connect/sdk/domain/payout/payout_error_response.rb +12 -15
  293. data/lib/ingenico/connect/sdk/domain/payout/payout_references.rb +10 -9
  294. data/lib/ingenico/connect/sdk/domain/payout/payout_result.rb +12 -15
  295. data/lib/ingenico/connect/sdk/domain/product/abstract_indicator.rb +7 -6
  296. data/lib/ingenico/connect/sdk/domain/product/account_on_file.rb +15 -18
  297. data/lib/ingenico/connect/sdk/domain/product/account_on_file_attribute.rb +7 -6
  298. data/lib/ingenico/connect/sdk/domain/product/account_on_file_display_hints.rb +8 -9
  299. data/lib/ingenico/connect/sdk/domain/product/boleto_bancario_requiredness_validator.rb +4 -3
  300. data/lib/ingenico/connect/sdk/domain/product/device_fingerprint_request.rb +4 -3
  301. data/lib/ingenico/connect/sdk/domain/product/device_fingerprint_response.rb +7 -6
  302. data/lib/ingenico/connect/sdk/domain/product/directory.rb +5 -6
  303. data/lib/ingenico/connect/sdk/domain/product/directory_entry.rb +14 -15
  304. data/lib/ingenico/connect/sdk/domain/product/fixed_list_validator.rb +5 -6
  305. data/lib/ingenico/connect/sdk/domain/product/get_customer_details_request.rb +8 -9
  306. data/lib/ingenico/connect/sdk/domain/product/get_customer_details_response.rb +31 -30
  307. data/lib/ingenico/connect/sdk/domain/product/label_template_element.rb +7 -6
  308. data/lib/ingenico/connect/sdk/domain/product/length_validator.rb +7 -6
  309. data/lib/ingenico/connect/sdk/domain/product/payment_product.rb +71 -84
  310. data/lib/ingenico/connect/sdk/domain/product/payment_product302_specific_data.rb +5 -6
  311. data/lib/ingenico/connect/sdk/domain/product/payment_product320_specific_data.rb +8 -9
  312. data/lib/ingenico/connect/sdk/domain/product/payment_product863_specific_data.rb +5 -6
  313. data/lib/ingenico/connect/sdk/domain/product/payment_product_display_hints.rb +10 -9
  314. data/lib/ingenico/connect/sdk/domain/product/payment_product_field.rb +18 -21
  315. data/lib/ingenico/connect/sdk/domain/product/payment_product_field_data_restrictions.rb +8 -9
  316. data/lib/ingenico/connect/sdk/domain/product/payment_product_field_display_element.rb +13 -12
  317. data/lib/ingenico/connect/sdk/domain/product/payment_product_field_display_hints.rb +33 -36
  318. data/lib/ingenico/connect/sdk/domain/product/payment_product_field_form_element.rb +8 -9
  319. data/lib/ingenico/connect/sdk/domain/product/payment_product_field_tooltip.rb +7 -6
  320. data/lib/ingenico/connect/sdk/domain/product/payment_product_field_validators.rb +41 -60
  321. data/lib/ingenico/connect/sdk/domain/product/payment_product_group.rb +19 -24
  322. data/lib/ingenico/connect/sdk/domain/product/payment_product_groups.rb +5 -6
  323. data/lib/ingenico/connect/sdk/domain/product/payment_product_networks_response.rb +5 -6
  324. data/lib/ingenico/connect/sdk/domain/product/payment_products.rb +5 -6
  325. data/lib/ingenico/connect/sdk/domain/product/range_validator.rb +7 -6
  326. data/lib/ingenico/connect/sdk/domain/product/regular_expression_validator.rb +4 -3
  327. data/lib/ingenico/connect/sdk/domain/product/value_mapping_element.rb +12 -13
  328. data/lib/ingenico/connect/sdk/domain/refund/approve_refund_request.rb +4 -3
  329. data/lib/ingenico/connect/sdk/domain/refund/bank_account_bban_refund.rb +10 -9
  330. data/lib/ingenico/connect/sdk/domain/refund/bank_refund_method_specific_input.rb +12 -15
  331. data/lib/ingenico/connect/sdk/domain/refund/find_refunds_response.rb +14 -15
  332. data/lib/ingenico/connect/sdk/domain/refund/refund_customer.rb +16 -21
  333. data/lib/ingenico/connect/sdk/domain/refund/refund_error_response.rb +12 -15
  334. data/lib/ingenico/connect/sdk/domain/refund/refund_references.rb +4 -3
  335. data/lib/ingenico/connect/sdk/domain/refund/refund_request.rb +20 -27
  336. data/lib/ingenico/connect/sdk/domain/refund/refund_result.rb +12 -15
  337. data/lib/ingenico/connect/sdk/domain/refund/refunds_response.rb +5 -6
  338. data/lib/ingenico/connect/sdk/domain/riskassessments/contact_details_risk_assessment.rb +4 -3
  339. data/lib/ingenico/connect/sdk/domain/riskassessments/customer_account_risk_assessment.rb +7 -6
  340. data/lib/ingenico/connect/sdk/domain/riskassessments/customer_device_risk_assessment.rb +7 -6
  341. data/lib/ingenico/connect/sdk/domain/riskassessments/customer_risk_assessment.rb +35 -46
  342. data/lib/ingenico/connect/sdk/domain/riskassessments/merchant_risk_assessment.rb +4 -3
  343. data/lib/ingenico/connect/sdk/domain/riskassessments/order_risk_assessment.rb +17 -24
  344. data/lib/ingenico/connect/sdk/domain/riskassessments/personal_information_risk_assessment.rb +5 -6
  345. data/lib/ingenico/connect/sdk/domain/riskassessments/risk_assessment.rb +16 -21
  346. data/lib/ingenico/connect/sdk/domain/riskassessments/risk_assessment_bank_account.rb +9 -12
  347. data/lib/ingenico/connect/sdk/domain/riskassessments/risk_assessment_card.rb +5 -6
  348. data/lib/ingenico/connect/sdk/domain/riskassessments/risk_assessment_response.rb +5 -6
  349. data/lib/ingenico/connect/sdk/domain/riskassessments/shipping_risk_assessment.rb +11 -12
  350. data/lib/ingenico/connect/sdk/domain/services/bank_data.rb +13 -12
  351. data/lib/ingenico/connect/sdk/domain/services/bank_details.rb +9 -12
  352. data/lib/ingenico/connect/sdk/domain/services/bank_details_response.rb +17 -24
  353. data/lib/ingenico/connect/sdk/domain/services/convert_amount.rb +4 -3
  354. data/lib/ingenico/connect/sdk/domain/services/get_iin_details_request.rb +8 -9
  355. data/lib/ingenico/connect/sdk/domain/services/get_iin_details_response.rb +14 -15
  356. data/lib/ingenico/connect/sdk/domain/services/get_privacy_policy_response.rb +4 -3
  357. data/lib/ingenico/connect/sdk/domain/services/iin_detail.rb +7 -6
  358. data/lib/ingenico/connect/sdk/domain/services/payment_context.rb +11 -12
  359. data/lib/ingenico/connect/sdk/domain/services/swift.rb +31 -30
  360. data/lib/ingenico/connect/sdk/domain/services/test_connection.rb +4 -3
  361. data/lib/ingenico/connect/sdk/domain/sessions/payment_product_filters_client_session.rb +9 -12
  362. data/lib/ingenico/connect/sdk/domain/sessions/session_request.rb +9 -12
  363. data/lib/ingenico/connect/sdk/domain/sessions/session_response.rb +20 -21
  364. data/lib/ingenico/connect/sdk/domain/token/abstract_token.rb +4 -3
  365. data/lib/ingenico/connect/sdk/domain/token/create_token_request.rb +20 -27
  366. data/lib/ingenico/connect/sdk/domain/token/create_token_response.rb +7 -6
  367. data/lib/ingenico/connect/sdk/domain/token/creditor.rb +34 -33
  368. data/lib/ingenico/connect/sdk/domain/token/customer_token.rb +9 -12
  369. data/lib/ingenico/connect/sdk/domain/token/customer_token_with_contact_details.rb +5 -6
  370. data/lib/ingenico/connect/sdk/domain/token/debtor.rb +34 -33
  371. data/lib/ingenico/connect/sdk/domain/token/mandate_approval.rb +10 -9
  372. data/lib/ingenico/connect/sdk/domain/token/mandate_non_sepa_direct_debit.rb +9 -12
  373. data/lib/ingenico/connect/sdk/domain/token/mandate_sepa_direct_debit.rb +5 -6
  374. data/lib/ingenico/connect/sdk/domain/token/mandate_sepa_direct_debit_with_mandate_id.rb +4 -3
  375. data/lib/ingenico/connect/sdk/domain/token/mandate_sepa_direct_debit_without_creditor.rb +22 -27
  376. data/lib/ingenico/connect/sdk/domain/token/personal_information_token.rb +5 -6
  377. data/lib/ingenico/connect/sdk/domain/token/token_card.rb +9 -12
  378. data/lib/ingenico/connect/sdk/domain/token/token_card_data.rb +11 -12
  379. data/lib/ingenico/connect/sdk/domain/token/token_e_wallet.rb +9 -12
  380. data/lib/ingenico/connect/sdk/domain/token/token_e_wallet_data.rb +4 -3
  381. data/lib/ingenico/connect/sdk/domain/token/token_non_sepa_direct_debit.rb +9 -12
  382. data/lib/ingenico/connect/sdk/domain/token/token_non_sepa_direct_debit_payment_product705_specific_data.rb +8 -9
  383. data/lib/ingenico/connect/sdk/domain/token/token_non_sepa_direct_debit_payment_product730_specific_data.rb +5 -6
  384. data/lib/ingenico/connect/sdk/domain/token/token_response.rb +23 -30
  385. data/lib/ingenico/connect/sdk/domain/token/token_sepa_direct_debit.rb +9 -12
  386. data/lib/ingenico/connect/sdk/domain/token/token_sepa_direct_debit_without_creditor.rb +9 -12
  387. data/lib/ingenico/connect/sdk/domain/token/update_token_request.rb +20 -27
  388. data/lib/ingenico/connect/sdk/endpoint_configuration.rb +12 -20
  389. data/lib/ingenico/connect/sdk/factory.rb +34 -32
  390. data/lib/ingenico/connect/sdk/idempotence_exception.rb +3 -3
  391. data/lib/ingenico/connect/sdk/logging/communicator_logger.rb +5 -2
  392. data/lib/ingenico/connect/sdk/logging/log_message_builder.rb +25 -13
  393. data/lib/ingenico/connect/sdk/logging/logging_util.rb +14 -14
  394. data/lib/ingenico/connect/sdk/logging/request_log_message_builder.rb +4 -5
  395. data/lib/ingenico/connect/sdk/logging/response_log_message_builder.rb +7 -6
  396. data/lib/ingenico/connect/sdk/logging/ruby_communicator_logger.rb +5 -4
  397. data/lib/ingenico/connect/sdk/logging/stdout_communicator_logger.rb +2 -1
  398. data/lib/ingenico/connect/sdk/marshaller.rb +8 -3
  399. data/lib/ingenico/connect/sdk/merchant/captures/captures_client.rb +17 -17
  400. data/lib/ingenico/connect/sdk/merchant/disputes/disputes_client.rb +80 -47
  401. data/lib/ingenico/connect/sdk/merchant/disputes/upload_file_request.rb +27 -0
  402. data/lib/ingenico/connect/sdk/merchant/files/files_client.rb +55 -0
  403. data/lib/ingenico/connect/sdk/merchant/hostedcheckouts/hostedcheckouts_client.rb +31 -31
  404. data/lib/ingenico/connect/sdk/merchant/hostedmandatemanagements/hostedmandatemanagements_client.rb +31 -31
  405. data/lib/ingenico/connect/sdk/merchant/mandates/mandates_client.rb +92 -92
  406. data/lib/ingenico/connect/sdk/merchant/merchant_client.rb +37 -30
  407. data/lib/ingenico/connect/sdk/merchant/payments/find_payments_params.rb +12 -11
  408. data/lib/ingenico/connect/sdk/merchant/payments/payments_client.rb +248 -248
  409. data/lib/ingenico/connect/sdk/merchant/payouts/find_payouts_params.rb +10 -9
  410. data/lib/ingenico/connect/sdk/merchant/payouts/payouts_client.rb +90 -90
  411. data/lib/ingenico/connect/sdk/merchant/productgroups/find_productgroups_params.rb +17 -13
  412. data/lib/ingenico/connect/sdk/merchant/productgroups/get_productgroup_params.rb +17 -13
  413. data/lib/ingenico/connect/sdk/merchant/productgroups/productgroups_client.rb +48 -48
  414. data/lib/ingenico/connect/sdk/merchant/products/directory_params.rb +6 -5
  415. data/lib/ingenico/connect/sdk/merchant/products/find_products_params.rb +17 -13
  416. data/lib/ingenico/connect/sdk/merchant/products/get_product_params.rb +19 -15
  417. data/lib/ingenico/connect/sdk/merchant/products/networks_params.rb +10 -9
  418. data/lib/ingenico/connect/sdk/merchant/products/products_client.rb +96 -127
  419. data/lib/ingenico/connect/sdk/merchant/refunds/find_refunds_params.rb +12 -11
  420. data/lib/ingenico/connect/sdk/merchant/refunds/refunds_client.rb +74 -74
  421. data/lib/ingenico/connect/sdk/merchant/riskassessments/riskassessments_client.rb +30 -30
  422. data/lib/ingenico/connect/sdk/merchant/services/convert_amount_params.rb +8 -7
  423. data/lib/ingenico/connect/sdk/merchant/services/privacypolicy_params.rb +6 -5
  424. data/lib/ingenico/connect/sdk/merchant/services/services_client.rb +71 -71
  425. data/lib/ingenico/connect/sdk/merchant/sessions/sessions_client.rb +16 -16
  426. data/lib/ingenico/connect/sdk/merchant/tokens/delete_token_params.rb +4 -3
  427. data/lib/ingenico/connect/sdk/merchant/tokens/tokens_client.rb +76 -76
  428. data/lib/ingenico/connect/sdk/meta_data_provider.rb +19 -20
  429. data/lib/ingenico/connect/sdk/modules.rb +5 -4
  430. data/lib/ingenico/connect/sdk/multipart_form_data_object.rb +44 -0
  431. data/lib/ingenico/connect/sdk/multipart_form_data_request.rb +9 -0
  432. data/lib/ingenico/connect/sdk/not_found_exception.rb +4 -7
  433. data/lib/ingenico/connect/sdk/param_request.rb +3 -25
  434. data/lib/ingenico/connect/sdk/proxy_configuration.rb +16 -17
  435. data/lib/ingenico/connect/sdk/request_header.rb +22 -3
  436. data/lib/ingenico/connect/sdk/request_param.rb +3 -2
  437. data/lib/ingenico/connect/sdk/response_exception.rb +24 -27
  438. data/lib/ingenico/connect/sdk/response_header.rb +49 -2
  439. data/lib/ingenico/connect/sdk/session.rb +11 -10
  440. data/lib/ingenico/connect/sdk/uploadable_file.rb +30 -0
  441. data/lib/ingenico/connect/sdk/webhooks/api_version_mismatch_exception.rb +3 -3
  442. data/lib/ingenico/connect/sdk/webhooks/in_memory_secret_key_store.rb +5 -5
  443. data/lib/ingenico/connect/sdk/webhooks/secret_key_not_available_exception.rb +2 -0
  444. data/lib/ingenico/connect/sdk/webhooks/secret_key_store.rb +2 -2
  445. data/lib/ingenico/connect/sdk/webhooks/signature_validation_exception.rb +1 -1
  446. data/lib/ingenico/connect/sdk/webhooks/webhooks_event.rb +19 -25
  447. data/lib/ingenico/connect/sdk/webhooks/webhooks_helper.rb +11 -10
  448. data/spec/integration/multipart_form_data_spec.rb +214 -0
  449. data/spec/lib/defaultimpl/default_connection_idempotence_spec.rb +7 -7
  450. data/spec/lib/defaultimpl/default_connection_logger_spec.rb +0 -4
  451. data/spec/lib/defaultimpl/default_connection_spec.rb +48 -25
  452. data/spec/lib/logging/header_obfuscator_spec.rb +1 -1
  453. data/spec/lib/logging/logging_util_spec.rb +7 -7
  454. data/spec/lib/logging/obfuscator_spec.rb +4 -4
  455. data/spec/lib/logging/ruby_communicator_logger_spec.rb +8 -8
  456. data/spec/lib/logging/stdout_communicator_logger_spec.rb +1 -1
  457. data/spec/lib/logging/value_obfuscator_spec.rb +1 -1
  458. data/spec/lib/payments_client_spec.rb +8 -9
  459. metadata +12 -7
  460. data/lib/ingenico/connect/sdk/domain/publickey/public_key.rb +0 -38
  461. data/lib/ingenico/connect/sdk/response.rb +0 -59
  462. data/spec/lib/requestparams/param_request_spec.rb +0 -57
@@ -8,83 +8,84 @@ module Ingenico::Connect::SDK
8
8
  module Domain
9
9
  module Product
10
10
 
11
+ # @attr [String] city
12
+ # @attr [String] country
13
+ # @attr [String] email_address
14
+ # @attr [String] first_name
15
+ # @attr [String] fiscal_number
16
+ # @attr [String] language_code
17
+ # @attr [String] phone_number
18
+ # @attr [String] street
19
+ # @attr [String] surname
20
+ # @attr [String] zip
11
21
  class GetCustomerDetailsResponse < Ingenico::Connect::SDK::DataObject
12
22
 
13
- # String
14
23
  attr_accessor :city
15
24
 
16
- # String
17
25
  attr_accessor :country
18
26
 
19
- # String
20
27
  attr_accessor :email_address
21
28
 
22
- # String
23
29
  attr_accessor :first_name
24
30
 
25
- # String
26
31
  attr_accessor :fiscal_number
27
32
 
28
- # String
29
33
  attr_accessor :language_code
30
34
 
31
- # String
32
35
  attr_accessor :phone_number
33
36
 
34
- # String
35
37
  attr_accessor :street
36
38
 
37
- # String
38
39
  attr_accessor :surname
39
40
 
40
- # String
41
41
  attr_accessor :zip
42
42
 
43
+ # @return (Hash)
43
44
  def to_h
44
45
  hash = super
45
- add_to_hash(hash, 'city', @city)
46
- add_to_hash(hash, 'country', @country)
47
- add_to_hash(hash, 'emailAddress', @email_address)
48
- add_to_hash(hash, 'firstName', @first_name)
49
- add_to_hash(hash, 'fiscalNumber', @fiscal_number)
50
- add_to_hash(hash, 'languageCode', @language_code)
51
- add_to_hash(hash, 'phoneNumber', @phone_number)
52
- add_to_hash(hash, 'street', @street)
53
- add_to_hash(hash, 'surname', @surname)
54
- add_to_hash(hash, 'zip', @zip)
46
+ hash['city'] = @city unless @city.nil?
47
+ hash['country'] = @country unless @country.nil?
48
+ hash['emailAddress'] = @email_address unless @email_address.nil?
49
+ hash['firstName'] = @first_name unless @first_name.nil?
50
+ hash['fiscalNumber'] = @fiscal_number unless @fiscal_number.nil?
51
+ hash['languageCode'] = @language_code unless @language_code.nil?
52
+ hash['phoneNumber'] = @phone_number unless @phone_number.nil?
53
+ hash['street'] = @street unless @street.nil?
54
+ hash['surname'] = @surname unless @surname.nil?
55
+ hash['zip'] = @zip unless @zip.nil?
55
56
  hash
56
57
  end
57
58
 
58
59
  def from_hash(hash)
59
60
  super
60
- if hash.has_key?('city')
61
+ if hash.has_key? 'city'
61
62
  @city = hash['city']
62
63
  end
63
- if hash.has_key?('country')
64
+ if hash.has_key? 'country'
64
65
  @country = hash['country']
65
66
  end
66
- if hash.has_key?('emailAddress')
67
+ if hash.has_key? 'emailAddress'
67
68
  @email_address = hash['emailAddress']
68
69
  end
69
- if hash.has_key?('firstName')
70
+ if hash.has_key? 'firstName'
70
71
  @first_name = hash['firstName']
71
72
  end
72
- if hash.has_key?('fiscalNumber')
73
+ if hash.has_key? 'fiscalNumber'
73
74
  @fiscal_number = hash['fiscalNumber']
74
75
  end
75
- if hash.has_key?('languageCode')
76
+ if hash.has_key? 'languageCode'
76
77
  @language_code = hash['languageCode']
77
78
  end
78
- if hash.has_key?('phoneNumber')
79
+ if hash.has_key? 'phoneNumber'
79
80
  @phone_number = hash['phoneNumber']
80
81
  end
81
- if hash.has_key?('street')
82
+ if hash.has_key? 'street'
82
83
  @street = hash['street']
83
84
  end
84
- if hash.has_key?('surname')
85
+ if hash.has_key? 'surname'
85
86
  @surname = hash['surname']
86
87
  end
87
- if hash.has_key?('zip')
88
+ if hash.has_key? 'zip'
88
89
  @zip = hash['zip']
89
90
  end
90
91
  end
@@ -8,27 +8,28 @@ module Ingenico::Connect::SDK
8
8
  module Domain
9
9
  module Product
10
10
 
11
+ # @attr [String] attribute_key
12
+ # @attr [String] mask
11
13
  class LabelTemplateElement < Ingenico::Connect::SDK::DataObject
12
14
 
13
- # String
14
15
  attr_accessor :attribute_key
15
16
 
16
- # String
17
17
  attr_accessor :mask
18
18
 
19
+ # @return (Hash)
19
20
  def to_h
20
21
  hash = super
21
- add_to_hash(hash, 'attributeKey', @attribute_key)
22
- add_to_hash(hash, 'mask', @mask)
22
+ hash['attributeKey'] = @attribute_key unless @attribute_key.nil?
23
+ hash['mask'] = @mask unless @mask.nil?
23
24
  hash
24
25
  end
25
26
 
26
27
  def from_hash(hash)
27
28
  super
28
- if hash.has_key?('attributeKey')
29
+ if hash.has_key? 'attributeKey'
29
30
  @attribute_key = hash['attributeKey']
30
31
  end
31
- if hash.has_key?('mask')
32
+ if hash.has_key? 'mask'
32
33
  @mask = hash['mask']
33
34
  end
34
35
  end
@@ -8,27 +8,28 @@ module Ingenico::Connect::SDK
8
8
  module Domain
9
9
  module Product
10
10
 
11
+ # @attr [Integer] max_length
12
+ # @attr [Integer] min_length
11
13
  class LengthValidator < Ingenico::Connect::SDK::DataObject
12
14
 
13
- # Integer
14
15
  attr_accessor :max_length
15
16
 
16
- # Integer
17
17
  attr_accessor :min_length
18
18
 
19
+ # @return (Hash)
19
20
  def to_h
20
21
  hash = super
21
- add_to_hash(hash, 'maxLength', @max_length)
22
- add_to_hash(hash, 'minLength', @min_length)
22
+ hash['maxLength'] = @max_length unless @max_length.nil?
23
+ hash['minLength'] = @min_length unless @min_length.nil?
23
24
  hash
24
25
  end
25
26
 
26
27
  def from_hash(hash)
27
28
  super
28
- if hash.has_key?('maxLength')
29
+ if hash.has_key? 'maxLength'
29
30
  @max_length = hash['maxLength']
30
31
  end
31
- if hash.has_key?('minLength')
32
+ if hash.has_key? 'minLength'
32
33
  @min_length = hash['minLength']
33
34
  end
34
35
  end
@@ -15,187 +15,174 @@ module Ingenico::Connect::SDK
15
15
  module Domain
16
16
  module Product
17
17
 
18
+ # @attr [Array<Ingenico::Connect::SDK::Domain::Product::AccountOnFile>] accounts_on_file
19
+ # @attr [true/false] allows_recurring
20
+ # @attr [true/false] allows_tokenization
21
+ # @attr [Ingenico::Connect::SDK::Domain::Product::AuthenticationIndicator] authentication_indicator
22
+ # @attr [true/false] auto_tokenized
23
+ # @attr [true/false] can_be_iframed
24
+ # @attr [true/false] device_fingerprint_enabled
25
+ # @attr [Ingenico::Connect::SDK::Domain::Product::PaymentProductDisplayHints] display_hints
26
+ # @attr [Array<Ingenico::Connect::SDK::Domain::Product::PaymentProductField>] fields
27
+ # @attr [String] fields_warning
28
+ # @attr [Integer] id
29
+ # @attr [true/false] is_java_script_required
30
+ # @attr [Integer] max_amount
31
+ # @attr [Integer] min_amount
32
+ # @attr [String] mobile_integration_level
33
+ # @attr [String] payment_method
34
+ # @attr [Ingenico::Connect::SDK::Domain::Product::PaymentProduct302SpecificData] payment_product302_specific_data
35
+ # @attr [Ingenico::Connect::SDK::Domain::Product::PaymentProduct320SpecificData] payment_product320_specific_data
36
+ # @attr [Ingenico::Connect::SDK::Domain::Product::PaymentProduct863SpecificData] payment_product863_specific_data
37
+ # @attr [String] payment_product_group
38
+ # @attr [true/false] uses_redirection_to3rd_party
18
39
  class PaymentProduct < Ingenico::Connect::SDK::DataObject
19
40
 
20
- # Array of {Ingenico::Connect::SDK::Domain::Product::AccountOnFile}
21
41
  attr_accessor :accounts_on_file
22
42
 
23
- # true/false
24
43
  attr_accessor :allows_recurring
25
44
 
26
- # true/false
27
45
  attr_accessor :allows_tokenization
28
46
 
29
- # {Ingenico::Connect::SDK::Domain::Product::AuthenticationIndicator}
30
47
  attr_accessor :authentication_indicator
31
48
 
32
- # true/false
33
49
  attr_accessor :auto_tokenized
34
50
 
35
- # true/false
36
51
  attr_accessor :can_be_iframed
37
52
 
38
- # true/false
39
53
  attr_accessor :device_fingerprint_enabled
40
54
 
41
- # {Ingenico::Connect::SDK::Domain::Product::PaymentProductDisplayHints}
42
55
  attr_accessor :display_hints
43
56
 
44
- # Array of {Ingenico::Connect::SDK::Domain::Product::PaymentProductField}
45
57
  attr_accessor :fields
46
58
 
47
- # String
48
59
  attr_accessor :fields_warning
49
60
 
50
- # Integer
51
61
  attr_accessor :id
52
62
 
53
- # true/false
54
63
  attr_accessor :is_java_script_required
55
64
 
56
- # Integer
57
65
  attr_accessor :max_amount
58
66
 
59
- # Integer
60
67
  attr_accessor :min_amount
61
68
 
62
- # String
63
69
  attr_accessor :mobile_integration_level
64
70
 
65
- # String
66
71
  attr_accessor :payment_method
67
72
 
68
- # {Ingenico::Connect::SDK::Domain::Product::PaymentProduct302SpecificData}
69
73
  attr_accessor :payment_product302_specific_data
70
74
 
71
- # {Ingenico::Connect::SDK::Domain::Product::PaymentProduct320SpecificData}
72
75
  attr_accessor :payment_product320_specific_data
73
76
 
74
- # {Ingenico::Connect::SDK::Domain::Product::PaymentProduct863SpecificData}
75
77
  attr_accessor :payment_product863_specific_data
76
78
 
77
- # String
78
79
  attr_accessor :payment_product_group
79
80
 
80
- # true/false
81
81
  attr_accessor :uses_redirection_to3rd_party
82
82
 
83
+ # @return (Hash)
83
84
  def to_h
84
85
  hash = super
85
- add_to_hash(hash, 'accountsOnFile', @accounts_on_file)
86
- add_to_hash(hash, 'allowsRecurring', @allows_recurring)
87
- add_to_hash(hash, 'allowsTokenization', @allows_tokenization)
88
- add_to_hash(hash, 'authenticationIndicator', @authentication_indicator)
89
- add_to_hash(hash, 'autoTokenized', @auto_tokenized)
90
- add_to_hash(hash, 'canBeIframed', @can_be_iframed)
91
- add_to_hash(hash, 'deviceFingerprintEnabled', @device_fingerprint_enabled)
92
- add_to_hash(hash, 'displayHints', @display_hints)
93
- add_to_hash(hash, 'fields', @fields)
94
- add_to_hash(hash, 'fieldsWarning', @fields_warning)
95
- add_to_hash(hash, 'id', @id)
96
- add_to_hash(hash, 'isJavaScriptRequired', @is_java_script_required)
97
- add_to_hash(hash, 'maxAmount', @max_amount)
98
- add_to_hash(hash, 'minAmount', @min_amount)
99
- add_to_hash(hash, 'mobileIntegrationLevel', @mobile_integration_level)
100
- add_to_hash(hash, 'paymentMethod', @payment_method)
101
- add_to_hash(hash, 'paymentProduct302SpecificData', @payment_product302_specific_data)
102
- add_to_hash(hash, 'paymentProduct320SpecificData', @payment_product320_specific_data)
103
- add_to_hash(hash, 'paymentProduct863SpecificData', @payment_product863_specific_data)
104
- add_to_hash(hash, 'paymentProductGroup', @payment_product_group)
105
- add_to_hash(hash, 'usesRedirectionTo3rdParty', @uses_redirection_to3rd_party)
86
+ hash['accountsOnFile'] = @accounts_on_file.collect{|val| val.to_h} unless @accounts_on_file.nil?
87
+ hash['allowsRecurring'] = @allows_recurring unless @allows_recurring.nil?
88
+ hash['allowsTokenization'] = @allows_tokenization unless @allows_tokenization.nil?
89
+ hash['authenticationIndicator'] = @authentication_indicator.to_h unless @authentication_indicator.nil?
90
+ hash['autoTokenized'] = @auto_tokenized unless @auto_tokenized.nil?
91
+ hash['canBeIframed'] = @can_be_iframed unless @can_be_iframed.nil?
92
+ hash['deviceFingerprintEnabled'] = @device_fingerprint_enabled unless @device_fingerprint_enabled.nil?
93
+ hash['displayHints'] = @display_hints.to_h unless @display_hints.nil?
94
+ hash['fields'] = @fields.collect{|val| val.to_h} unless @fields.nil?
95
+ hash['fieldsWarning'] = @fields_warning unless @fields_warning.nil?
96
+ hash['id'] = @id unless @id.nil?
97
+ hash['isJavaScriptRequired'] = @is_java_script_required unless @is_java_script_required.nil?
98
+ hash['maxAmount'] = @max_amount unless @max_amount.nil?
99
+ hash['minAmount'] = @min_amount unless @min_amount.nil?
100
+ hash['mobileIntegrationLevel'] = @mobile_integration_level unless @mobile_integration_level.nil?
101
+ hash['paymentMethod'] = @payment_method unless @payment_method.nil?
102
+ hash['paymentProduct302SpecificData'] = @payment_product302_specific_data.to_h unless @payment_product302_specific_data.nil?
103
+ hash['paymentProduct320SpecificData'] = @payment_product320_specific_data.to_h unless @payment_product320_specific_data.nil?
104
+ hash['paymentProduct863SpecificData'] = @payment_product863_specific_data.to_h unless @payment_product863_specific_data.nil?
105
+ hash['paymentProductGroup'] = @payment_product_group unless @payment_product_group.nil?
106
+ hash['usesRedirectionTo3rdParty'] = @uses_redirection_to3rd_party unless @uses_redirection_to3rd_party.nil?
106
107
  hash
107
108
  end
108
109
 
109
110
  def from_hash(hash)
110
111
  super
111
- if hash.has_key?('accountsOnFile')
112
- if !(hash['accountsOnFile'].is_a? Array)
113
- raise TypeError, "value '%s' is not an Array" % [hash['accountsOnFile']]
114
- end
112
+ if hash.has_key? 'accountsOnFile'
113
+ raise TypeError, "value '%s' is not an Array" % [hash['accountsOnFile']] unless hash['accountsOnFile'].is_a? Array
115
114
  @accounts_on_file = []
116
115
  hash['accountsOnFile'].each do |e|
117
116
  @accounts_on_file << Ingenico::Connect::SDK::Domain::Product::AccountOnFile.new_from_hash(e)
118
117
  end
119
118
  end
120
- if hash.has_key?('allowsRecurring')
119
+ if hash.has_key? 'allowsRecurring'
121
120
  @allows_recurring = hash['allowsRecurring']
122
121
  end
123
- if hash.has_key?('allowsTokenization')
122
+ if hash.has_key? 'allowsTokenization'
124
123
  @allows_tokenization = hash['allowsTokenization']
125
124
  end
126
- if hash.has_key?('authenticationIndicator')
127
- if !(hash['authenticationIndicator'].is_a? Hash)
128
- raise TypeError, "value '%s' is not a Hash" % [hash['authenticationIndicator']]
129
- end
125
+ if hash.has_key? 'authenticationIndicator'
126
+ raise TypeError, "value '%s' is not a Hash" % [hash['authenticationIndicator']] unless hash['authenticationIndicator'].is_a? Hash
130
127
  @authentication_indicator = Ingenico::Connect::SDK::Domain::Product::AuthenticationIndicator.new_from_hash(hash['authenticationIndicator'])
131
128
  end
132
- if hash.has_key?('autoTokenized')
129
+ if hash.has_key? 'autoTokenized'
133
130
  @auto_tokenized = hash['autoTokenized']
134
131
  end
135
- if hash.has_key?('canBeIframed')
132
+ if hash.has_key? 'canBeIframed'
136
133
  @can_be_iframed = hash['canBeIframed']
137
134
  end
138
- if hash.has_key?('deviceFingerprintEnabled')
135
+ if hash.has_key? 'deviceFingerprintEnabled'
139
136
  @device_fingerprint_enabled = hash['deviceFingerprintEnabled']
140
137
  end
141
- if hash.has_key?('displayHints')
142
- if !(hash['displayHints'].is_a? Hash)
143
- raise TypeError, "value '%s' is not a Hash" % [hash['displayHints']]
144
- end
138
+ if hash.has_key? 'displayHints'
139
+ raise TypeError, "value '%s' is not a Hash" % [hash['displayHints']] unless hash['displayHints'].is_a? Hash
145
140
  @display_hints = Ingenico::Connect::SDK::Domain::Product::PaymentProductDisplayHints.new_from_hash(hash['displayHints'])
146
141
  end
147
- if hash.has_key?('fields')
148
- if !(hash['fields'].is_a? Array)
149
- raise TypeError, "value '%s' is not an Array" % [hash['fields']]
150
- end
142
+ if hash.has_key? 'fields'
143
+ raise TypeError, "value '%s' is not an Array" % [hash['fields']] unless hash['fields'].is_a? Array
151
144
  @fields = []
152
145
  hash['fields'].each do |e|
153
146
  @fields << Ingenico::Connect::SDK::Domain::Product::PaymentProductField.new_from_hash(e)
154
147
  end
155
148
  end
156
- if hash.has_key?('fieldsWarning')
149
+ if hash.has_key? 'fieldsWarning'
157
150
  @fields_warning = hash['fieldsWarning']
158
151
  end
159
- if hash.has_key?('id')
152
+ if hash.has_key? 'id'
160
153
  @id = hash['id']
161
154
  end
162
- if hash.has_key?('isJavaScriptRequired')
155
+ if hash.has_key? 'isJavaScriptRequired'
163
156
  @is_java_script_required = hash['isJavaScriptRequired']
164
157
  end
165
- if hash.has_key?('maxAmount')
158
+ if hash.has_key? 'maxAmount'
166
159
  @max_amount = hash['maxAmount']
167
160
  end
168
- if hash.has_key?('minAmount')
161
+ if hash.has_key? 'minAmount'
169
162
  @min_amount = hash['minAmount']
170
163
  end
171
- if hash.has_key?('mobileIntegrationLevel')
164
+ if hash.has_key? 'mobileIntegrationLevel'
172
165
  @mobile_integration_level = hash['mobileIntegrationLevel']
173
166
  end
174
- if hash.has_key?('paymentMethod')
167
+ if hash.has_key? 'paymentMethod'
175
168
  @payment_method = hash['paymentMethod']
176
169
  end
177
- if hash.has_key?('paymentProduct302SpecificData')
178
- if !(hash['paymentProduct302SpecificData'].is_a? Hash)
179
- raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct302SpecificData']]
180
- end
170
+ if hash.has_key? 'paymentProduct302SpecificData'
171
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct302SpecificData']] unless hash['paymentProduct302SpecificData'].is_a? Hash
181
172
  @payment_product302_specific_data = Ingenico::Connect::SDK::Domain::Product::PaymentProduct302SpecificData.new_from_hash(hash['paymentProduct302SpecificData'])
182
173
  end
183
- if hash.has_key?('paymentProduct320SpecificData')
184
- if !(hash['paymentProduct320SpecificData'].is_a? Hash)
185
- raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct320SpecificData']]
186
- end
174
+ if hash.has_key? 'paymentProduct320SpecificData'
175
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct320SpecificData']] unless hash['paymentProduct320SpecificData'].is_a? Hash
187
176
  @payment_product320_specific_data = Ingenico::Connect::SDK::Domain::Product::PaymentProduct320SpecificData.new_from_hash(hash['paymentProduct320SpecificData'])
188
177
  end
189
- if hash.has_key?('paymentProduct863SpecificData')
190
- if !(hash['paymentProduct863SpecificData'].is_a? Hash)
191
- raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct863SpecificData']]
192
- end
178
+ if hash.has_key? 'paymentProduct863SpecificData'
179
+ raise TypeError, "value '%s' is not a Hash" % [hash['paymentProduct863SpecificData']] unless hash['paymentProduct863SpecificData'].is_a? Hash
193
180
  @payment_product863_specific_data = Ingenico::Connect::SDK::Domain::Product::PaymentProduct863SpecificData.new_from_hash(hash['paymentProduct863SpecificData'])
194
181
  end
195
- if hash.has_key?('paymentProductGroup')
182
+ if hash.has_key? 'paymentProductGroup'
196
183
  @payment_product_group = hash['paymentProductGroup']
197
184
  end
198
- if hash.has_key?('usesRedirectionTo3rdParty')
185
+ if hash.has_key? 'usesRedirectionTo3rdParty'
199
186
  @uses_redirection_to3rd_party = hash['usesRedirectionTo3rdParty']
200
187
  end
201
188
  end
@@ -8,23 +8,22 @@ module Ingenico::Connect::SDK
8
8
  module Domain
9
9
  module Product
10
10
 
11
+ # @attr [Array<String>] networks
11
12
  class PaymentProduct302SpecificData < Ingenico::Connect::SDK::DataObject
12
13
 
13
- # Array of String
14
14
  attr_accessor :networks
15
15
 
16
+ # @return (Hash)
16
17
  def to_h
17
18
  hash = super
18
- add_to_hash(hash, 'networks', @networks)
19
+ hash['networks'] = @networks unless @networks.nil?
19
20
  hash
20
21
  end
21
22
 
22
23
  def from_hash(hash)
23
24
  super
24
- if hash.has_key?('networks')
25
- if !(hash['networks'].is_a? Array)
26
- raise TypeError, "value '%s' is not an Array" % [hash['networks']]
27
- end
25
+ if hash.has_key? 'networks'
26
+ raise TypeError, "value '%s' is not an Array" % [hash['networks']] unless hash['networks'].is_a? Array
28
27
  @networks = []
29
28
  hash['networks'].each do |e|
30
29
  @networks << e