card-management-sdk 1.2.0 → 1.4.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 (210) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +15 -15
  4. data/lib/shell_card_management_ap_is/controllers/card_controller.rb +25 -25
  5. data/lib/shell_card_management_ap_is/controllers/customer_controller.rb +15 -15
  6. data/lib/shell_card_management_ap_is/controllers/o_auth_authorization_controller.rb +1 -1
  7. data/lib/shell_card_management_ap_is/controllers/restriction_controller.rb +6 -6
  8. data/lib/shell_card_management_ap_is/exceptions/api_exception.rb +11 -0
  9. data/lib/shell_card_management_ap_is/exceptions/error_object_exception.rb +13 -0
  10. data/lib/shell_card_management_ap_is/exceptions/fleetmanagement_v1_customer_customer403_error_exception.rb +12 -0
  11. data/lib/shell_card_management_ap_is/exceptions/fleetmanagement_v1_customer_payers400_error_exception.rb +12 -0
  12. data/lib/shell_card_management_ap_is/exceptions/fleetmanagement_v1_customer_payers404_error_exception.rb +12 -0
  13. data/lib/shell_card_management_ap_is/exceptions/fleetmanagement_v1_user_loggedinuser400_error_exception.rb +12 -0
  14. data/lib/shell_card_management_ap_is/exceptions/fleetmanagement_v1_user_loggedinuser401_error_exception.rb +12 -0
  15. data/lib/shell_card_management_ap_is/exceptions/fleetmanagement_v1_user_loggedinuser403_error_exception.rb +12 -0
  16. data/lib/shell_card_management_ap_is/exceptions/fleetmanagement_v1_user_loggedinuser404_error_exception.rb +12 -0
  17. data/lib/shell_card_management_ap_is/exceptions/fleetmanagement_v1_user_loggedinuser500_error_exception.rb +12 -0
  18. data/lib/shell_card_management_ap_is/exceptions/fleetmanagement_v2_restriction_searchcard401_error_exception.rb +12 -0
  19. data/lib/shell_card_management_ap_is/exceptions/fleetmanagement_v2_restriction_searchcard500_error_exception.rb +12 -0
  20. data/lib/shell_card_management_ap_is/exceptions/o_auth_provider_exception.rb +14 -0
  21. data/lib/shell_card_management_ap_is/models/account_access.rb +17 -0
  22. data/lib/shell_card_management_ap_is/models/account_request.rb +26 -0
  23. data/lib/shell_card_management_ap_is/models/account_response.rb +16 -0
  24. data/lib/shell_card_management_ap_is/models/account_response_accounts_items.rb +79 -0
  25. data/lib/shell_card_management_ap_is/models/account_restriction_request.rb +19 -0
  26. data/lib/shell_card_management_ap_is/models/account_restriction_response.rb +17 -0
  27. data/lib/shell_card_management_ap_is/models/account_velocity_limit.rb +17 -0
  28. data/lib/shell_card_management_ap_is/models/accounts.rb +13 -0
  29. data/lib/shell_card_management_ap_is/models/address.rb +21 -0
  30. data/lib/shell_card_management_ap_is/models/audit_request.rb +21 -0
  31. data/lib/shell_card_management_ap_is/models/audit_response.rb +16 -0
  32. data/lib/shell_card_management_ap_is/models/audit_response_audits_items.rb +46 -0
  33. data/lib/shell_card_management_ap_is/models/auto_renew_card_request.rb +15 -0
  34. data/lib/shell_card_management_ap_is/models/auto_renew_card_request_auto_renew_cards_items.rb +15 -0
  35. data/lib/shell_card_management_ap_is/models/auto_renew_card_response.rb +14 -0
  36. data/lib/shell_card_management_ap_is/models/auto_renew_card_response_data_items.rb +14 -0
  37. data/lib/shell_card_management_ap_is/models/bank_account.rb +22 -0
  38. data/lib/shell_card_management_ap_is/models/base_model.rb +76 -28
  39. data/lib/shell_card_management_ap_is/models/budle_details_request.rb +17 -0
  40. data/lib/shell_card_management_ap_is/models/bundle_card_restriction_status.rb +12 -0
  41. data/lib/shell_card_management_ap_is/models/bundle_details_response.rb +23 -0
  42. data/lib/shell_card_management_ap_is/models/bundle_restriction.rb +20 -0
  43. data/lib/shell_card_management_ap_is/models/bundle_restriction_update.rb +25 -0
  44. data/lib/shell_card_management_ap_is/models/bundled_details_product_list.rb +19 -0
  45. data/lib/shell_card_management_ap_is/models/bundled_restrictions_list.rb +16 -0
  46. data/lib/shell_card_management_ap_is/models/cancel_card_request.rb +13 -0
  47. data/lib/shell_card_management_ap_is/models/cancel_card_response.rb +17 -0
  48. data/lib/shell_card_management_ap_is/models/card.rb +62 -0
  49. data/lib/shell_card_management_ap_is/models/card_block_schedule.rb +12 -0
  50. data/lib/shell_card_management_ap_is/models/card_bundle.rb +15 -0
  51. data/lib/shell_card_management_ap_is/models/card_contact.rb +29 -0
  52. data/lib/shell_card_management_ap_is/models/card_day_time_restrictions.rb +17 -0
  53. data/lib/shell_card_management_ap_is/models/card_delivery_address.rb +25 -0
  54. data/lib/shell_card_management_ap_is/models/card_delivery_contact.rb +29 -0
  55. data/lib/shell_card_management_ap_is/models/card_detail.rb +53 -0
  56. data/lib/shell_card_management_ap_is/models/card_details_request.rb +29 -0
  57. data/lib/shell_card_management_ap_is/models/card_details_response.rb +86 -0
  58. data/lib/shell_card_management_ap_is/models/card_details_response_card_block_schedules_items_all_of0.rb +12 -0
  59. data/lib/shell_card_management_ap_is/models/card_details_response_card_delivery_address.rb +25 -0
  60. data/lib/shell_card_management_ap_is/models/card_details_response_fuel_sets_items.rb +14 -0
  61. data/lib/shell_card_management_ap_is/models/card_details_response_non_fuel_sets_items.rb +14 -0
  62. data/lib/shell_card_management_ap_is/models/card_details_response_pin_delivery_address.rb +25 -0
  63. data/lib/shell_card_management_ap_is/models/card_group_request.rb +19 -0
  64. data/lib/shell_card_management_ap_is/models/card_group_response.rb +16 -0
  65. data/lib/shell_card_management_ap_is/models/card_group_response_card_groups_items.rb +34 -0
  66. data/lib/shell_card_management_ap_is/models/card_management_v1_cancel_request.rb +13 -0
  67. data/lib/shell_card_management_ap_is/models/card_management_v1_ordercard_request.rb +12 -0
  68. data/lib/shell_card_management_ap_is/models/card_management_v1_pinreminder_request.rb +18 -0
  69. data/lib/shell_card_management_ap_is/models/card_management_v1_updatestatus_request.rb +14 -0
  70. data/lib/shell_card_management_ap_is/models/card_move_request.rb +21 -0
  71. data/lib/shell_card_management_ap_is/models/card_move_request_cards_items.rb +14 -0
  72. data/lib/shell_card_management_ap_is/models/card_move_response.rb +16 -0
  73. data/lib/shell_card_management_ap_is/models/card_move_response_error_cards_items.rb +17 -0
  74. data/lib/shell_card_management_ap_is/models/card_move_response_successful_requests_items.rb +15 -0
  75. data/lib/shell_card_management_ap_is/models/card_restriction_req.rb +15 -0
  76. data/lib/shell_card_management_ap_is/models/card_restriction_response.rb +15 -0
  77. data/lib/shell_card_management_ap_is/models/card_search_response.rb +16 -0
  78. data/lib/shell_card_management_ap_is/models/card_settings.rb +64 -0
  79. data/lib/shell_card_management_ap_is/models/card_summary_request.rb +12 -0
  80. data/lib/shell_card_management_ap_is/models/card_summary_response.rb +13 -0
  81. data/lib/shell_card_management_ap_is/models/card_type_request.rb +19 -0
  82. data/lib/shell_card_management_ap_is/models/card_type_response.rb +14 -0
  83. data/lib/shell_card_management_ap_is/models/card_type_response_customer_card_types_items.rb +52 -0
  84. data/lib/shell_card_management_ap_is/models/card_type_response_error.rb +12 -0
  85. data/lib/shell_card_management_ap_is/models/card_usage_restrictions.rb +38 -0
  86. data/lib/shell_card_management_ap_is/models/col_co_access.rb +16 -0
  87. data/lib/shell_card_management_ap_is/models/country_restriction.rb +12 -0
  88. data/lib/shell_card_management_ap_is/models/create_bundle_request.rb +19 -0
  89. data/lib/shell_card_management_ap_is/models/create_bundle_response.rb +27 -0
  90. data/lib/shell_card_management_ap_is/models/create_card_group_request.rb +19 -0
  91. data/lib/shell_card_management_ap_is/models/create_card_group_request_cards_items.rb +14 -0
  92. data/lib/shell_card_management_ap_is/models/create_card_group_response.rb +17 -0
  93. data/lib/shell_card_management_ap_is/models/create_card_group_response_error_cards_items.rb +14 -0
  94. data/lib/shell_card_management_ap_is/models/create_card_group_response_successful_requests_items.rb +13 -0
  95. data/lib/shell_card_management_ap_is/models/create_card_response.rb +14 -0
  96. data/lib/shell_card_management_ap_is/models/customer_contract.rb +13 -0
  97. data/lib/shell_card_management_ap_is/models/customer_detail_request.rb +16 -0
  98. data/lib/shell_card_management_ap_is/models/customer_detail_response.rb +43 -0
  99. data/lib/shell_card_management_ap_is/models/day_time_restriction.rb +17 -0
  100. data/lib/shell_card_management_ap_is/models/day_time_restrictions.rb +17 -0
  101. data/lib/shell_card_management_ap_is/models/default_error.rb +12 -0
  102. data/lib/shell_card_management_ap_is/models/default_error_fault.rb +12 -0
  103. data/lib/shell_card_management_ap_is/models/default_error_fault_detail.rb +12 -0
  104. data/lib/shell_card_management_ap_is/models/delete_bundle_request.rb +17 -0
  105. data/lib/shell_card_management_ap_is/models/delete_bundle_response.rb +12 -0
  106. data/lib/shell_card_management_ap_is/models/delivery_address_update.rb +17 -0
  107. data/lib/shell_card_management_ap_is/models/delivery_address_update_references.rb +16 -0
  108. data/lib/shell_card_management_ap_is/models/delivery_address_update_references2.rb +16 -0
  109. data/lib/shell_card_management_ap_is/models/delivery_address_update_request.rb +17 -0
  110. data/lib/shell_card_management_ap_is/models/delivery_address_update_response.rb +16 -0
  111. data/lib/shell_card_management_ap_is/models/delivery_addresses.rb +28 -0
  112. data/lib/shell_card_management_ap_is/models/detail.rb +12 -0
  113. data/lib/shell_card_management_ap_is/models/eid_access.rb +14 -0
  114. data/lib/shell_card_management_ap_is/models/error_details.rb +14 -0
  115. data/lib/shell_card_management_ap_is/models/error_status.rb +12 -0
  116. data/lib/shell_card_management_ap_is/models/error_user_access.rb +12 -0
  117. data/lib/shell_card_management_ap_is/models/error_user_access_error.rb +12 -0
  118. data/lib/shell_card_management_ap_is/models/fault.rb +12 -0
  119. data/lib/shell_card_management_ap_is/models/filters.rb +59 -0
  120. data/lib/shell_card_management_ap_is/models/filters1.rb +49 -0
  121. data/lib/shell_card_management_ap_is/models/filters2.rb +22 -0
  122. data/lib/shell_card_management_ap_is/models/finance_currency.rb +16 -0
  123. data/lib/shell_card_management_ap_is/models/finance_currency2.rb +16 -0
  124. data/lib/shell_card_management_ap_is/models/fleetmanagement_v1_customer_payers400_error1.rb +12 -0
  125. data/lib/shell_card_management_ap_is/models/fleetmanagement_v1_customer_payers404_error1.rb +12 -0
  126. data/lib/shell_card_management_ap_is/models/fleetmanagement_v1_user_loggedinuser400_error1.rb +12 -0
  127. data/lib/shell_card_management_ap_is/models/fleetmanagement_v1_user_loggedinuser401_error1.rb +12 -0
  128. data/lib/shell_card_management_ap_is/models/fleetmanagement_v1_user_loggedinuser404_error1.rb +12 -0
  129. data/lib/shell_card_management_ap_is/models/fleetmanagement_v1_user_loggedinuser500_error1.rb +12 -0
  130. data/lib/shell_card_management_ap_is/models/fleetmanagement_v1_user_loggedinuser_request.rb +16 -0
  131. data/lib/shell_card_management_ap_is/models/fleetmanagement_v2_restriction_searchcard401_error1.rb +12 -0
  132. data/lib/shell_card_management_ap_is/models/fleetmanagement_v2_restriction_searchcard500_error1.rb +12 -0
  133. data/lib/shell_card_management_ap_is/models/generate_pin_key_response.rb +12 -0
  134. data/lib/shell_card_management_ap_is/models/invoice_distribution_method.rb +15 -0
  135. data/lib/shell_card_management_ap_is/models/location_restriction.rb +17 -0
  136. data/lib/shell_card_management_ap_is/models/logged_in_user_request.rb +16 -0
  137. data/lib/shell_card_management_ap_is/models/logged_in_user_response.rb +35 -0
  138. data/lib/shell_card_management_ap_is/models/network_restriction.rb +13 -0
  139. data/lib/shell_card_management_ap_is/models/order_card_enquiry.rb +50 -0
  140. data/lib/shell_card_management_ap_is/models/order_card_enquiry_req.rb +22 -0
  141. data/lib/shell_card_management_ap_is/models/order_card_enquiry_request.rb +12 -0
  142. data/lib/shell_card_management_ap_is/models/order_card_enquiry_response.rb +13 -0
  143. data/lib/shell_card_management_ap_is/models/order_card_request.rb +12 -0
  144. data/lib/shell_card_management_ap_is/models/order_card_response.rb +14 -0
  145. data/lib/shell_card_management_ap_is/models/partner_site_restriction.rb +14 -0
  146. data/lib/shell_card_management_ap_is/models/payer_access.rb +19 -0
  147. data/lib/shell_card_management_ap_is/models/payer_details.rb +150 -0
  148. data/lib/shell_card_management_ap_is/models/payer_request.rb +18 -0
  149. data/lib/shell_card_management_ap_is/models/payer_response.rb +16 -0
  150. data/lib/shell_card_management_ap_is/models/payers.rb +16 -0
  151. data/lib/shell_card_management_ap_is/models/pin_advice_types.rb +15 -0
  152. data/lib/shell_card_management_ap_is/models/pin_contact.rb +29 -0
  153. data/lib/shell_card_management_ap_is/models/pin_deliver_to.rb +21 -0
  154. data/lib/shell_card_management_ap_is/models/pin_delivery_address.rb +25 -0
  155. data/lib/shell_card_management_ap_is/models/pin_delivery_contact.rb +29 -0
  156. data/lib/shell_card_management_ap_is/models/pin_delivery_details.rb +21 -0
  157. data/lib/shell_card_management_ap_is/models/pin_reminder_card_details.rb +17 -0
  158. data/lib/shell_card_management_ap_is/models/pin_reminder_reference.rb +15 -0
  159. data/lib/shell_card_management_ap_is/models/pin_reminder_request.rb +18 -0
  160. data/lib/shell_card_management_ap_is/models/pin_reminder_response.rb +14 -0
  161. data/lib/shell_card_management_ap_is/models/product_all_of0.rb +14 -0
  162. data/lib/shell_card_management_ap_is/models/product_group.rb +16 -0
  163. data/lib/shell_card_management_ap_is/models/product_restriction_card.rb +13 -0
  164. data/lib/shell_card_management_ap_is/models/purchase_categories.rb +14 -0
  165. data/lib/shell_card_management_ap_is/models/purchase_category1_all_of0.rb +15 -0
  166. data/lib/shell_card_management_ap_is/models/purchase_category_request.rb +17 -0
  167. data/lib/shell_card_management_ap_is/models/purchase_category_response.rb +13 -0
  168. data/lib/shell_card_management_ap_is/models/replace_card_settings.rb +64 -0
  169. data/lib/shell_card_management_ap_is/models/restriction.rb +16 -0
  170. data/lib/shell_card_management_ap_is/models/restriction_card_list.rb +47 -0
  171. data/lib/shell_card_management_ap_is/models/restriction_cards_list.rb +25 -0
  172. data/lib/shell_card_management_ap_is/models/restriction_product.rb +14 -0
  173. data/lib/shell_card_management_ap_is/models/restrictioncards_res.rb +34 -0
  174. data/lib/shell_card_management_ap_is/models/role.rb +17 -0
  175. data/lib/shell_card_management_ap_is/models/schedule_card_block_cards_items.rb +22 -0
  176. data/lib/shell_card_management_ap_is/models/schedule_card_block_request.rb +14 -0
  177. data/lib/shell_card_management_ap_is/models/schedule_card_block_response.rb +14 -0
  178. data/lib/shell_card_management_ap_is/models/schedule_card_block_response_data_items.rb +14 -0
  179. data/lib/shell_card_management_ap_is/models/search_account_limit_request.rb +16 -0
  180. data/lib/shell_card_management_ap_is/models/search_account_limit_response.rb +17 -0
  181. data/lib/shell_card_management_ap_is/models/search_card.rb +13 -0
  182. data/lib/shell_card_management_ap_is/models/search_card_request.rb +13 -0
  183. data/lib/shell_card_management_ap_is/models/search_card_restriction.rb +12 -0
  184. data/lib/shell_card_management_ap_is/models/search_card_restriction_req.rb +21 -0
  185. data/lib/shell_card_management_ap_is/models/search_card_restriction_res.rb +14 -0
  186. data/lib/shell_card_management_ap_is/models/search_product_restriction.rb +13 -0
  187. data/lib/shell_card_management_ap_is/models/search_request.rb +59 -0
  188. data/lib/shell_card_management_ap_is/models/shell_site_restriction.rb +14 -0
  189. data/lib/shell_card_management_ap_is/models/submitted_card.rb +23 -0
  190. data/lib/shell_card_management_ap_is/models/summary_request.rb +49 -0
  191. data/lib/shell_card_management_ap_is/models/summary_response.rb +24 -0
  192. data/lib/shell_card_management_ap_is/models/summaryofbundle_response.rb +19 -0
  193. data/lib/shell_card_management_ap_is/models/summaryofbundler_request.rb +17 -0
  194. data/lib/shell_card_management_ap_is/models/update_bundle_request.rb +21 -0
  195. data/lib/shell_card_management_ap_is/models/update_bundle_response.rb +21 -0
  196. data/lib/shell_card_management_ap_is/models/update_card.rb +26 -59
  197. data/lib/shell_card_management_ap_is/models/update_card_group_request.rb +27 -0
  198. data/lib/shell_card_management_ap_is/models/update_card_group_response.rb +19 -0
  199. data/lib/shell_card_management_ap_is/models/update_card_group_response_move_card_references_items.rb +13 -0
  200. data/lib/shell_card_management_ap_is/models/update_card_renewal_address.rb +19 -0
  201. data/lib/shell_card_management_ap_is/models/update_card_renewal_address2.rb +19 -0
  202. data/lib/shell_card_management_ap_is/models/update_card_status_request.rb +14 -0
  203. data/lib/shell_card_management_ap_is/models/update_card_status_response.rb +16 -0
  204. data/lib/shell_card_management_ap_is/models/update_m_pay_reg_status_request.rb +15 -0
  205. data/lib/shell_card_management_ap_is/models/update_m_pay_reg_status_request_m_pay_requests_items.rb +17 -0
  206. data/lib/shell_card_management_ap_is/models/update_m_pay_reg_status_response.rb +12 -0
  207. data/lib/shell_card_management_ap_is/models/usage_restriction.rb +135 -0
  208. data/lib/shell_card_management_ap_is/models/usage_restrictions_card.rb +32 -0
  209. data/lib/shell_card_management_ap_is/utilities/file_wrapper.rb +14 -2
  210. metadata +4 -4
@@ -722,5 +722,84 @@ module ShellCardManagementApIs
722
722
  contracts,
723
723
  is_consortium_member)
724
724
  end
725
+
726
+ # Provides a human-readable string representation of the object.
727
+ def to_s
728
+ class_name = self.class.name.split('::').last
729
+ "<#{class_name} account_full_name: #{@account_full_name}, account_id: #{@account_id},"\
730
+ " account_number: #{@account_number}, account_short_name: #{@account_short_name},"\
731
+ " best_of_indicator: #{@best_of_indicator}, billing_frequency_type:"\
732
+ " #{@billing_frequency_type}, billing_frequency_type_id: #{@billing_frequency_type_id},"\
733
+ " billing_run_frequency: #{@billing_run_frequency}, billing_run_frequency_type_id:"\
734
+ " #{@billing_run_frequency_type_id}, col_co_country_code: #{@col_co_country_code},"\
735
+ " currency_code: #{@currency_code}, currency_symbol: #{@currency_symbol}, day1_run:"\
736
+ " #{@day1_run}, day2_run: #{@day2_run}, day3_run: #{@day3_run}, day4_run: #{@day4_run},"\
737
+ " frequency_type: #{@frequency_type}, gross_amount: #{@gross_amount},"\
738
+ " international_pos_language_code: #{@international_pos_language_code},"\
739
+ " international_pos_language_id: #{@international_pos_language_id}, invoice_account_id:"\
740
+ " #{@invoice_account_id}, invoice_account_number: #{@invoice_account_number},"\
741
+ " invoice_account_short_name: #{@invoice_account_short_name}, invoice_distribution_methods:"\
742
+ " #{@invoice_distribution_methods}, is_international: #{@is_international},"\
743
+ " is_invoice_point: #{@is_invoice_point}, last_modified_date: #{@last_modified_date},"\
744
+ " local_currency_code: #{@local_currency_code}, local_currency_symbol:"\
745
+ " #{@local_currency_symbol}, local_pos_language_code: #{@local_pos_language_code},"\
746
+ " local_pos_language_id: #{@local_pos_language_id}, net_amount: #{@net_amount},"\
747
+ " outstanding_balance: #{@outstanding_balance}, paid_amount: #{@paid_amount}, status:"\
748
+ " #{@status}, status_reason: #{@status_reason}, total_active_card_groups:"\
749
+ " #{@total_active_card_groups}, total_active_cards: #{@total_active_cards},"\
750
+ " total_blocked_cards: #{@total_blocked_cards}, total_cancelled_cards:"\
751
+ " #{@total_cancelled_cards}, total_cards: #{@total_cards}, total_expired_cards:"\
752
+ " #{@total_expired_cards}, total_fraud_cards: #{@total_fraud_cards}, total_new_cards:"\
753
+ " #{@total_new_cards}, total_renewal_pending_cards: #{@total_renewal_pending_cards},"\
754
+ " total_replaced_cards: #{@total_replaced_cards}, total_temporary_block_cards_by_customer:"\
755
+ " #{@total_temporary_block_cards_by_customer}, total_temporary_block_cards_by_shell:"\
756
+ " #{@total_temporary_block_cards_by_shell}, vat_amount: #{@vat_amount}, is_partner_card:"\
757
+ " #{@is_partner_card}, tolls_customer_id: #{@tolls_customer_id},"\
758
+ " tolls_colco_country_type_id: #{@tolls_colco_country_type_id}, contracts: #{@contracts},"\
759
+ " is_consortium_member: #{@is_consortium_member}>"
760
+ end
761
+
762
+ # Provides a debugging-friendly string with detailed object information.
763
+ def inspect
764
+ class_name = self.class.name.split('::').last
765
+ "<#{class_name} account_full_name: #{@account_full_name.inspect}, account_id:"\
766
+ " #{@account_id.inspect}, account_number: #{@account_number.inspect}, account_short_name:"\
767
+ " #{@account_short_name.inspect}, best_of_indicator: #{@best_of_indicator.inspect},"\
768
+ " billing_frequency_type: #{@billing_frequency_type.inspect}, billing_frequency_type_id:"\
769
+ " #{@billing_frequency_type_id.inspect}, billing_run_frequency:"\
770
+ " #{@billing_run_frequency.inspect}, billing_run_frequency_type_id:"\
771
+ " #{@billing_run_frequency_type_id.inspect}, col_co_country_code:"\
772
+ " #{@col_co_country_code.inspect}, currency_code: #{@currency_code.inspect},"\
773
+ " currency_symbol: #{@currency_symbol.inspect}, day1_run: #{@day1_run.inspect}, day2_run:"\
774
+ " #{@day2_run.inspect}, day3_run: #{@day3_run.inspect}, day4_run: #{@day4_run.inspect},"\
775
+ " frequency_type: #{@frequency_type.inspect}, gross_amount: #{@gross_amount.inspect},"\
776
+ " international_pos_language_code: #{@international_pos_language_code.inspect},"\
777
+ " international_pos_language_id: #{@international_pos_language_id.inspect},"\
778
+ " invoice_account_id: #{@invoice_account_id.inspect}, invoice_account_number:"\
779
+ " #{@invoice_account_number.inspect}, invoice_account_short_name:"\
780
+ " #{@invoice_account_short_name.inspect}, invoice_distribution_methods:"\
781
+ " #{@invoice_distribution_methods.inspect}, is_international: #{@is_international.inspect},"\
782
+ " is_invoice_point: #{@is_invoice_point.inspect}, last_modified_date:"\
783
+ " #{@last_modified_date.inspect}, local_currency_code: #{@local_currency_code.inspect},"\
784
+ " local_currency_symbol: #{@local_currency_symbol.inspect}, local_pos_language_code:"\
785
+ " #{@local_pos_language_code.inspect}, local_pos_language_id:"\
786
+ " #{@local_pos_language_id.inspect}, net_amount: #{@net_amount.inspect},"\
787
+ " outstanding_balance: #{@outstanding_balance.inspect}, paid_amount:"\
788
+ " #{@paid_amount.inspect}, status: #{@status.inspect}, status_reason:"\
789
+ " #{@status_reason.inspect}, total_active_card_groups: #{@total_active_card_groups.inspect},"\
790
+ " total_active_cards: #{@total_active_cards.inspect}, total_blocked_cards:"\
791
+ " #{@total_blocked_cards.inspect}, total_cancelled_cards: #{@total_cancelled_cards.inspect},"\
792
+ " total_cards: #{@total_cards.inspect}, total_expired_cards:"\
793
+ " #{@total_expired_cards.inspect}, total_fraud_cards: #{@total_fraud_cards.inspect},"\
794
+ " total_new_cards: #{@total_new_cards.inspect}, total_renewal_pending_cards:"\
795
+ " #{@total_renewal_pending_cards.inspect}, total_replaced_cards:"\
796
+ " #{@total_replaced_cards.inspect}, total_temporary_block_cards_by_customer:"\
797
+ " #{@total_temporary_block_cards_by_customer.inspect}, total_temporary_block_cards_by_shell:"\
798
+ " #{@total_temporary_block_cards_by_shell.inspect}, vat_amount: #{@vat_amount.inspect},"\
799
+ " is_partner_card: #{@is_partner_card.inspect}, tolls_customer_id:"\
800
+ " #{@tolls_customer_id.inspect}, tolls_colco_country_type_id:"\
801
+ " #{@tolls_colco_country_type_id.inspect}, contracts: #{@contracts.inspect},"\
802
+ " is_consortium_member: #{@is_consortium_member.inspect}>"
803
+ end
725
804
  end
726
805
  end
@@ -145,5 +145,24 @@ module ShellCardManagementApIs
145
145
  reset_usage_restrictions,
146
146
  usage_restrictions)
147
147
  end
148
+
149
+ # Provides a human-readable string representation of the object.
150
+ def to_s
151
+ class_name = self.class.name.split('::').last
152
+ "<#{class_name} col_co_id: #{@col_co_id}, col_co_code: #{@col_co_code}, payer_id:"\
153
+ " #{@payer_id}, payer_number: #{@payer_number}, account_id: #{@account_id}, account_number:"\
154
+ " #{@account_number}, reset_usage_restrictions: #{@reset_usage_restrictions},"\
155
+ " usage_restrictions: #{@usage_restrictions}>"
156
+ end
157
+
158
+ # Provides a debugging-friendly string with detailed object information.
159
+ def inspect
160
+ class_name = self.class.name.split('::').last
161
+ "<#{class_name} col_co_id: #{@col_co_id.inspect}, col_co_code: #{@col_co_code.inspect},"\
162
+ " payer_id: #{@payer_id.inspect}, payer_number: #{@payer_number.inspect}, account_id:"\
163
+ " #{@account_id.inspect}, account_number: #{@account_number.inspect},"\
164
+ " reset_usage_restrictions: #{@reset_usage_restrictions.inspect}, usage_restrictions:"\
165
+ " #{@usage_restrictions.inspect}>"
166
+ end
148
167
  end
149
168
  end
@@ -105,5 +105,22 @@ module ShellCardManagementApIs
105
105
  usage_restriction_description,
106
106
  error)
107
107
  end
108
+
109
+ # Provides a human-readable string representation of the object.
110
+ def to_s
111
+ class_name = self.class.name.split('::').last
112
+ "<#{class_name} request_id: #{@request_id}, account_id: #{@account_id}, account_number:"\
113
+ " #{@account_number}, usage_restriction_status: #{@usage_restriction_status},"\
114
+ " usage_restriction_description: #{@usage_restriction_description}, error: #{@error}>"
115
+ end
116
+
117
+ # Provides a debugging-friendly string with detailed object information.
118
+ def inspect
119
+ class_name = self.class.name.split('::').last
120
+ "<#{class_name} request_id: #{@request_id.inspect}, account_id: #{@account_id.inspect},"\
121
+ " account_number: #{@account_number.inspect}, usage_restriction_status:"\
122
+ " #{@usage_restriction_status.inspect}, usage_restriction_description:"\
123
+ " #{@usage_restriction_description.inspect}, error: #{@error.inspect}>"
124
+ end
108
125
  end
109
126
  end
@@ -133,5 +133,22 @@ module ShellCardManagementApIs
133
133
  product_group,
134
134
  threshold)
135
135
  end
136
+
137
+ # Provides a human-readable string representation of the object.
138
+ def to_s
139
+ class_name = self.class.name.split('::').last
140
+ "<#{class_name} type: #{@type}, period: #{@period}, limit: #{@limit}, accumulation:"\
141
+ " #{@accumulation}, balance: #{@balance}, override: #{@override}, product_group:"\
142
+ " #{@product_group}, threshold: #{@threshold}>"
143
+ end
144
+
145
+ # Provides a debugging-friendly string with detailed object information.
146
+ def inspect
147
+ class_name = self.class.name.split('::').last
148
+ "<#{class_name} type: #{@type.inspect}, period: #{@period.inspect}, limit:"\
149
+ " #{@limit.inspect}, accumulation: #{@accumulation.inspect}, balance: #{@balance.inspect},"\
150
+ " override: #{@override.inspect}, product_group: #{@product_group.inspect}, threshold:"\
151
+ " #{@threshold.inspect}>"
152
+ end
136
153
  end
137
154
  end
@@ -60,5 +60,18 @@ module ShellCardManagementApIs
60
60
  Accounts.new(account_id,
61
61
  account_number)
62
62
  end
63
+
64
+ # Provides a human-readable string representation of the object.
65
+ def to_s
66
+ class_name = self.class.name.split('::').last
67
+ "<#{class_name} account_id: #{@account_id}, account_number: #{@account_number}>"
68
+ end
69
+
70
+ # Provides a debugging-friendly string with detailed object information.
71
+ def inspect
72
+ class_name = self.class.name.split('::').last
73
+ "<#{class_name} account_id: #{@account_id.inspect}, account_number:"\
74
+ " #{@account_number.inspect}>"
75
+ end
63
76
  end
64
77
  end
@@ -163,5 +163,26 @@ module ShellCardManagementApIs
163
163
  email_address,
164
164
  fax)
165
165
  end
166
+
167
+ # Provides a human-readable string representation of the object.
168
+ def to_s
169
+ class_name = self.class.name.split('::').last
170
+ "<#{class_name} address_id: #{@address_id}, address_line1: #{@address_line1},"\
171
+ " address_line2: #{@address_line2}, address_line3: #{@address_line3}, zip_code:"\
172
+ " #{@zip_code}, city: #{@city}, region_id: #{@region_id}, country_iso_code:"\
173
+ " #{@country_iso_code}, country: #{@country}, telephone: #{@telephone}, email_address:"\
174
+ " #{@email_address}, fax: #{@fax}>"
175
+ end
176
+
177
+ # Provides a debugging-friendly string with detailed object information.
178
+ def inspect
179
+ class_name = self.class.name.split('::').last
180
+ "<#{class_name} address_id: #{@address_id.inspect}, address_line1:"\
181
+ " #{@address_line1.inspect}, address_line2: #{@address_line2.inspect}, address_line3:"\
182
+ " #{@address_line3.inspect}, zip_code: #{@zip_code.inspect}, city: #{@city.inspect},"\
183
+ " region_id: #{@region_id.inspect}, country_iso_code: #{@country_iso_code.inspect}, country:"\
184
+ " #{@country.inspect}, telephone: #{@telephone.inspect}, email_address:"\
185
+ " #{@email_address.inspect}, fax: #{@fax.inspect}>"
186
+ end
166
187
  end
167
188
  end
@@ -256,5 +256,26 @@ module ShellCardManagementApIs
256
256
  from_date,
257
257
  to_date)
258
258
  end
259
+
260
+ # Provides a human-readable string representation of the object.
261
+ def to_s
262
+ class_name = self.class.name.split('::').last
263
+ "<#{class_name} status: #{@status}, payer_number: #{@payer_number}, payer_id: #{@payer_id},"\
264
+ " account_number: #{@account_number}, col_co_code: #{@col_co_code}, col_co_id:"\
265
+ " #{@col_co_id}, accounts: #{@accounts}, page_size: #{@page_size}, requested_operation:"\
266
+ " #{@requested_operation}, sort_order: #{@sort_order}, search_text: #{@search_text},"\
267
+ " current_page: #{@current_page}, from_date: #{@from_date}, to_date: #{@to_date}>"
268
+ end
269
+
270
+ # Provides a debugging-friendly string with detailed object information.
271
+ def inspect
272
+ class_name = self.class.name.split('::').last
273
+ "<#{class_name} status: #{@status.inspect}, payer_number: #{@payer_number.inspect},"\
274
+ " payer_id: #{@payer_id.inspect}, account_number: #{@account_number.inspect}, col_co_code:"\
275
+ " #{@col_co_code.inspect}, col_co_id: #{@col_co_id.inspect}, accounts: #{@accounts.inspect},"\
276
+ " page_size: #{@page_size.inspect}, requested_operation: #{@requested_operation.inspect},"\
277
+ " sort_order: #{@sort_order.inspect}, search_text: #{@search_text.inspect}, current_page:"\
278
+ " #{@current_page.inspect}, from_date: #{@from_date.inspect}, to_date: #{@to_date.inspect}>"
279
+ end
259
280
  end
260
281
  end
@@ -103,5 +103,21 @@ module ShellCardManagementApIs
103
103
  error,
104
104
  request_id)
105
105
  end
106
+
107
+ # Provides a human-readable string representation of the object.
108
+ def to_s
109
+ class_name = self.class.name.split('::').last
110
+ "<#{class_name} audits: #{@audits}, current_page: #{@current_page}, row_count:"\
111
+ " #{@row_count}, total_pages: #{@total_pages}, error: #{@error}, request_id:"\
112
+ " #{@request_id}>"
113
+ end
114
+
115
+ # Provides a debugging-friendly string with detailed object information.
116
+ def inspect
117
+ class_name = self.class.name.split('::').last
118
+ "<#{class_name} audits: #{@audits.inspect}, current_page: #{@current_page.inspect},"\
119
+ " row_count: #{@row_count.inspect}, total_pages: #{@total_pages.inspect}, error:"\
120
+ " #{@error.inspect}, request_id: #{@request_id.inspect}>"
121
+ end
106
122
  end
107
123
  end
@@ -433,5 +433,51 @@ module ShellCardManagementApIs
433
433
  sub_request_reference,
434
434
  user_display_name)
435
435
  end
436
+
437
+ # Provides a human-readable string representation of the object.
438
+ def to_s
439
+ class_name = self.class.name.split('::').last
440
+ "<#{class_name} account_id: #{@account_id}, account_number: #{@account_number},"\
441
+ " additional_information1: #{@additional_information1}, additional_information2:"\
442
+ " #{@additional_information2}, additional_information3: #{@additional_information3},"\
443
+ " additional_information4: #{@additional_information4}, additional_information5:"\
444
+ " #{@additional_information5}, additional_information6: #{@additional_information6},"\
445
+ " additional_information7: #{@additional_information7}, additional_information8:"\
446
+ " #{@additional_information8}, additional_information9: #{@additional_information9},"\
447
+ " card_group_id: #{@card_group_id}, card_group_name: #{@card_group_name}, card_id:"\
448
+ " #{@card_id}, col_co_code: #{@col_co_code}, col_co_id: #{@col_co_id}, error_code:"\
449
+ " #{@error_code}, error_string: #{@error_string}, global_request_id: #{@global_request_id},"\
450
+ " pan: #{@pan}, payer_id: #{@payer_id}, payer_number: #{@payer_number}, processed_on:"\
451
+ " #{@processed_on}, requested_by: #{@requested_by}, requested_operation:"\
452
+ " #{@requested_operation}, request_reference: #{@request_reference}, request_type:"\
453
+ " #{@request_type}, status: #{@status}, submitted_on: #{@submitted_on},"\
454
+ " sub_request_reference: #{@sub_request_reference}, user_display_name:"\
455
+ " #{@user_display_name}>"
456
+ end
457
+
458
+ # Provides a debugging-friendly string with detailed object information.
459
+ def inspect
460
+ class_name = self.class.name.split('::').last
461
+ "<#{class_name} account_id: #{@account_id.inspect}, account_number:"\
462
+ " #{@account_number.inspect}, additional_information1: #{@additional_information1.inspect},"\
463
+ " additional_information2: #{@additional_information2.inspect}, additional_information3:"\
464
+ " #{@additional_information3.inspect}, additional_information4:"\
465
+ " #{@additional_information4.inspect}, additional_information5:"\
466
+ " #{@additional_information5.inspect}, additional_information6:"\
467
+ " #{@additional_information6.inspect}, additional_information7:"\
468
+ " #{@additional_information7.inspect}, additional_information8:"\
469
+ " #{@additional_information8.inspect}, additional_information9:"\
470
+ " #{@additional_information9.inspect}, card_group_id: #{@card_group_id.inspect},"\
471
+ " card_group_name: #{@card_group_name.inspect}, card_id: #{@card_id.inspect}, col_co_code:"\
472
+ " #{@col_co_code.inspect}, col_co_id: #{@col_co_id.inspect}, error_code:"\
473
+ " #{@error_code.inspect}, error_string: #{@error_string.inspect}, global_request_id:"\
474
+ " #{@global_request_id.inspect}, pan: #{@pan.inspect}, payer_id: #{@payer_id.inspect},"\
475
+ " payer_number: #{@payer_number.inspect}, processed_on: #{@processed_on.inspect},"\
476
+ " requested_by: #{@requested_by.inspect}, requested_operation:"\
477
+ " #{@requested_operation.inspect}, request_reference: #{@request_reference.inspect},"\
478
+ " request_type: #{@request_type.inspect}, status: #{@status.inspect}, submitted_on:"\
479
+ " #{@submitted_on.inspect}, sub_request_reference: #{@sub_request_reference.inspect},"\
480
+ " user_display_name: #{@user_display_name.inspect}>"
481
+ end
436
482
  end
437
483
  end
@@ -104,5 +104,20 @@ module ShellCardManagementApIs
104
104
  payer_id,
105
105
  auto_renew_cards)
106
106
  end
107
+
108
+ # Provides a human-readable string representation of the object.
109
+ def to_s
110
+ class_name = self.class.name.split('::').last
111
+ "<#{class_name} col_co_id: #{@col_co_id}, col_co_code: #{@col_co_code}, payer_number:"\
112
+ " #{@payer_number}, payer_id: #{@payer_id}, auto_renew_cards: #{@auto_renew_cards}>"
113
+ end
114
+
115
+ # Provides a debugging-friendly string with detailed object information.
116
+ def inspect
117
+ class_name = self.class.name.split('::').last
118
+ "<#{class_name} col_co_id: #{@col_co_id.inspect}, col_co_code: #{@col_co_code.inspect},"\
119
+ " payer_number: #{@payer_number.inspect}, payer_id: #{@payer_id.inspect}, auto_renew_cards:"\
120
+ " #{@auto_renew_cards.inspect}>"
121
+ end
107
122
  end
108
123
  end
@@ -102,5 +102,20 @@ module ShellCardManagementApIs
102
102
  panid,
103
103
  card_id)
104
104
  end
105
+
106
+ # Provides a human-readable string representation of the object.
107
+ def to_s
108
+ class_name = self.class.name.split('::').last
109
+ "<#{class_name} account_number: #{@account_number}, account_id: #{@account_id}, pan:"\
110
+ " #{@pan}, panid: #{@panid}, card_id: #{@card_id}, reissue_setting: #{@reissue_setting}>"
111
+ end
112
+
113
+ # Provides a debugging-friendly string with detailed object information.
114
+ def inspect
115
+ class_name = self.class.name.split('::').last
116
+ "<#{class_name} account_number: #{@account_number.inspect}, account_id:"\
117
+ " #{@account_id.inspect}, pan: #{@pan.inspect}, panid: #{@panid.inspect}, card_id:"\
118
+ " #{@card_id.inspect}, reissue_setting: #{@reissue_setting.inspect}>"
119
+ end
105
120
  end
106
121
  end
@@ -86,5 +86,19 @@ module ShellCardManagementApIs
86
86
  status,
87
87
  data)
88
88
  end
89
+
90
+ # Provides a human-readable string representation of the object.
91
+ def to_s
92
+ class_name = self.class.name.split('::').last
93
+ "<#{class_name} main_reference: #{@main_reference}, request_id: #{@request_id}, status:"\
94
+ " #{@status}, data: #{@data}>"
95
+ end
96
+
97
+ # Provides a debugging-friendly string with detailed object information.
98
+ def inspect
99
+ class_name = self.class.name.split('::').last
100
+ "<#{class_name} main_reference: #{@main_reference.inspect}, request_id:"\
101
+ " #{@request_id.inspect}, status: #{@status.inspect}, data: #{@data.inspect}>"
102
+ end
89
103
  end
90
104
  end
@@ -70,5 +70,19 @@ module ShellCardManagementApIs
70
70
  card_id_and_pan,
71
71
  panid)
72
72
  end
73
+
74
+ # Provides a human-readable string representation of the object.
75
+ def to_s
76
+ class_name = self.class.name.split('::').last
77
+ "<#{class_name} auto_renew_reference_id: #{@auto_renew_reference_id}, card_id_and_pan:"\
78
+ " #{@card_id_and_pan}, panid: #{@panid}>"
79
+ end
80
+
81
+ # Provides a debugging-friendly string with detailed object information.
82
+ def inspect
83
+ class_name = self.class.name.split('::').last
84
+ "<#{class_name} auto_renew_reference_id: #{@auto_renew_reference_id.inspect},"\
85
+ " card_id_and_pan: #{@card_id_and_pan.inspect}, panid: #{@panid.inspect}>"
86
+ end
73
87
  end
74
88
  end
@@ -180,5 +180,27 @@ module ShellCardManagementApIs
180
180
  swift_code,
181
181
  bank_type)
182
182
  end
183
+
184
+ # Provides a human-readable string representation of the object.
185
+ def to_s
186
+ class_name = self.class.name.split('::').last
187
+ "<#{class_name} account_number: #{@account_number}, bank_name: #{@bank_name}, account_name:"\
188
+ " #{@account_name}, date_effective: #{@date_effective}, date_terminated:"\
189
+ " #{@date_terminated}, iban: #{@iban}, currency_code: #{@currency_code}, currency_symbol:"\
190
+ " #{@currency_symbol}, country_iso_code: #{@country_iso_code}, country: #{@country},"\
191
+ " sort_code: #{@sort_code}, swift_code: #{@swift_code}, bank_type: #{@bank_type}>"
192
+ end
193
+
194
+ # Provides a debugging-friendly string with detailed object information.
195
+ def inspect
196
+ class_name = self.class.name.split('::').last
197
+ "<#{class_name} account_number: #{@account_number.inspect}, bank_name:"\
198
+ " #{@bank_name.inspect}, account_name: #{@account_name.inspect}, date_effective:"\
199
+ " #{@date_effective.inspect}, date_terminated: #{@date_terminated.inspect}, iban:"\
200
+ " #{@iban.inspect}, currency_code: #{@currency_code.inspect}, currency_symbol:"\
201
+ " #{@currency_symbol.inspect}, country_iso_code: #{@country_iso_code.inspect}, country:"\
202
+ " #{@country.inspect}, sort_code: #{@sort_code.inspect}, swift_code: #{@swift_code.inspect},"\
203
+ " bank_type: #{@bank_type.inspect}>"
204
+ end
183
205
  end
184
206
  end
@@ -5,6 +5,7 @@
5
5
 
6
6
  module ShellCardManagementApIs
7
7
  # Base model.
8
+ # rubocop:disable all
8
9
  class BaseModel < CoreLibrary::BaseModel
9
10
  # Returns a Hash representation of the current object.
10
11
  def to_hash
@@ -15,48 +16,95 @@ module ShellCardManagementApIs
15
16
  instance_variables.each do |name|
16
17
  value = instance_variable_get(name)
17
18
  name = name[1..]
18
- key = self.class.names.key?(name) ? self.class.names[name] : name
19
- optional_fields = self.class.optionals
20
- nullable_fields = self.class.nullables
21
- if value.nil?
22
- next unless nullable_fields.include?(name)
23
-
24
- if !optional_fields.include?(name) && !nullable_fields.include?(name)
25
- raise ArgumentError,
26
- "`#{name}` cannot be nil in `#{self.class}`. Please specify a valid value."
19
+ if name == 'additional_properties'
20
+ additional_properties = process_additional_properties(value, self.class.names)
21
+ hash.merge!(additional_properties)
22
+ else
23
+ key = self.class.names.key?(name) ? self.class.names[name] : name
24
+ optional_fields = self.class.optionals
25
+ nullable_fields = self.class.nullables
26
+ if value.nil?
27
+ next unless nullable_fields.include?(name)
28
+
29
+ if !optional_fields.include?(name) && !nullable_fields.include?(name)
30
+ raise ArgumentError,
31
+ "`#{name}` cannot be nil in `#{self.class}`. Please specify a valid value."
32
+ end
27
33
  end
28
- end
29
34
 
30
- hash[key] = nil
31
- unless value.nil?
32
- if respond_to?("to_custom_#{name}")
33
- if (value.instance_of? Array) || (value.instance_of? Hash)
34
- params = [hash, key]
35
- hash[key] = send("to_custom_#{name}", *params)
35
+ hash[key] = nil
36
+ unless value.nil?
37
+ if respond_to?("to_custom_#{name}")
38
+ if (value.instance_of? Array) || (value.instance_of? Hash)
39
+ params = [hash, key]
40
+ hash[key] = send("to_custom_#{name}", *params)
41
+ else
42
+ hash[key] = send("to_custom_#{name}")
43
+ end
44
+ elsif respond_to?("to_union_type_#{name}")
45
+ hash[key] = send("to_union_type_#{name}")
46
+ elsif value.instance_of? Array
47
+ hash[key] = value.map { |v| v.is_a?(BaseModel) ? v.to_hash : v }
48
+ elsif value.instance_of? Hash
49
+ hash[key] = {}
50
+ value.each do |k, v|
51
+ hash[key][k] = v.is_a?(BaseModel) ? v.to_hash : v
52
+ end
36
53
  else
37
- hash[key] = send("to_custom_#{name}")
54
+ hash[key] = value.is_a?(BaseModel) ? value.to_hash : value
38
55
  end
39
- elsif respond_to?("to_union_type_#{name}")
40
- hash[key] = send("to_union_type_#{name}")
41
- elsif value.instance_of? Array
42
- hash[key] = value.map { |v| v.is_a?(BaseModel) ? v.to_hash : v }
43
- elsif value.instance_of? Hash
44
- hash[key] = {}
45
- value.each do |k, v|
46
- hash[key][k] = v.is_a?(BaseModel) ? v.to_hash : v
47
- end
48
- else
49
- hash[key] = value.is_a?(BaseModel) ? value.to_hash : value
50
56
  end
51
57
  end
52
58
  end
53
59
  hash
54
60
  end
55
61
 
62
+ # Processes additional properties, ensuring no conflicts with existing properties.
63
+ def process_additional_properties(additional_properties, existing_prop_names)
64
+ hash = {}
65
+ additional_properties.each do |name, value|
66
+ check_for_conflict(name, existing_prop_names)
67
+
68
+ hash[name] = if value.is_a?(Array)
69
+ process_array(value)
70
+ elsif value.is_a?(Hash)
71
+ process_hash(value)
72
+ else
73
+ process_basic_value(value)
74
+ end
75
+ end
76
+ hash
77
+ end
78
+
79
+ # Checks if an additional property conflicts with a model's existing property.
80
+ def check_for_conflict(name, existing_prop_names)
81
+ return unless existing_prop_names.key?(name)
82
+
83
+ raise ArgumentError, "An additional property key, '#{name}' conflicts with one of the model's properties"
84
+ end
85
+
86
+ # Processes an array of values, recursively calling `to_hash` on BaseModel objects.
87
+ def process_array(value)
88
+ value.map { |v| v.is_a?(BaseModel) ? v.to_hash : v }
89
+ end
90
+
91
+ # Processes a hash of values, recursively calling `to_hash` on BaseModel objects.
92
+ def process_hash(value)
93
+ value.transform_values do |v|
94
+ v.is_a?(BaseModel) ? v.to_hash : v
95
+ end
96
+ end
97
+
98
+ # Processes a basic value (non-array, non-hash).
99
+ def process_basic_value(value)
100
+ value.is_a?(BaseModel) ? value.to_hash : value
101
+ end
102
+
56
103
  # Returns a JSON representation of the curent object.
57
104
  def to_json(options = {})
58
105
  hash = to_hash
59
106
  hash.to_json(options)
60
107
  end
61
108
  end
109
+ # rubocop:enable all
62
110
  end
@@ -121,5 +121,22 @@ module ShellCardManagementApIs
121
121
  account_number,
122
122
  bundle_id)
123
123
  end
124
+
125
+ # Provides a human-readable string representation of the object.
126
+ def to_s
127
+ class_name = self.class.name.split('::').last
128
+ "<#{class_name} col_co_id: #{@col_co_id}, col_co_code: #{@col_co_code}, payer_id:"\
129
+ " #{@payer_id}, payer_number: #{@payer_number}, account_id: #{@account_id}, account_number:"\
130
+ " #{@account_number}, bundle_id: #{@bundle_id}>"
131
+ end
132
+
133
+ # Provides a debugging-friendly string with detailed object information.
134
+ def inspect
135
+ class_name = self.class.name.split('::').last
136
+ "<#{class_name} col_co_id: #{@col_co_id.inspect}, col_co_code: #{@col_co_code.inspect},"\
137
+ " payer_id: #{@payer_id.inspect}, payer_number: #{@payer_number.inspect}, account_id:"\
138
+ " #{@account_id.inspect}, account_number: #{@account_number.inspect}, bundle_id:"\
139
+ " #{@bundle_id.inspect}>"
140
+ end
124
141
  end
125
142
  end
@@ -47,5 +47,17 @@ module ShellCardManagementApIs
47
47
  # Create object from extracted values.
48
48
  BundleCardRestrictionStatus.new(pan)
49
49
  end
50
+
51
+ # Provides a human-readable string representation of the object.
52
+ def to_s
53
+ class_name = self.class.name.split('::').last
54
+ "<#{class_name} pan: #{@pan}>"
55
+ end
56
+
57
+ # Provides a debugging-friendly string with detailed object information.
58
+ def inspect
59
+ class_name = self.class.name.split('::').last
60
+ "<#{class_name} pan: #{@pan.inspect}>"
61
+ end
50
62
  end
51
63
  end
@@ -177,5 +177,28 @@ module ShellCardManagementApIs
177
177
  error,
178
178
  request_id)
179
179
  end
180
+
181
+ # Provides a human-readable string representation of the object.
182
+ def to_s
183
+ class_name = self.class.name.split('::').last
184
+ "<#{class_name} payer_id: #{@payer_id}, payer_number: #{@payer_number}, account_id:"\
185
+ " #{@account_id}, account_number: #{@account_number}, bundle_id: #{@bundle_id},"\
186
+ " external_bundle_id: #{@external_bundle_id}, description: #{@description}, pans: #{@pans},"\
187
+ " restriction_currency_code: #{@restriction_currency_code}, restriction_currency_symbol:"\
188
+ " #{@restriction_currency_symbol}, restrictions: #{@restrictions}, error: #{@error},"\
189
+ " request_id: #{@request_id}>"
190
+ end
191
+
192
+ # Provides a debugging-friendly string with detailed object information.
193
+ def inspect
194
+ class_name = self.class.name.split('::').last
195
+ "<#{class_name} payer_id: #{@payer_id.inspect}, payer_number: #{@payer_number.inspect},"\
196
+ " account_id: #{@account_id.inspect}, account_number: #{@account_number.inspect}, bundle_id:"\
197
+ " #{@bundle_id.inspect}, external_bundle_id: #{@external_bundle_id.inspect}, description:"\
198
+ " #{@description.inspect}, pans: #{@pans.inspect}, restriction_currency_code:"\
199
+ " #{@restriction_currency_code.inspect}, restriction_currency_symbol:"\
200
+ " #{@restriction_currency_symbol.inspect}, restrictions: #{@restrictions.inspect}, error:"\
201
+ " #{@error.inspect}, request_id: #{@request_id.inspect}>"
202
+ end
180
203
  end
181
204
  end