data-and-reporting-sdk 1.0.0 → 1.1.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 (306) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +14 -15
  3. data/lib/shell_data_reporting_ap_is/controllers/base_controller.rb +9 -9
  4. data/lib/shell_data_reporting_ap_is/controllers/customer_controller.rb +210 -210
  5. data/lib/shell_data_reporting_ap_is/controllers/invoice_controller.rb +221 -221
  6. data/lib/shell_data_reporting_ap_is/controllers/o_auth_authorization_controller.rb +9 -9
  7. data/lib/shell_data_reporting_ap_is/controllers/transaction_controller.rb +354 -354
  8. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_accounts400_error_exception.rb +32 -0
  9. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_accounts401_error_exception.rb +32 -0
  10. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_accounts403_error_exception.rb +32 -0
  11. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_accounts404_error_exception.rb +32 -0
  12. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_accounts500_error_exception.rb +32 -0
  13. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_auditreport400_error_exception.rb +32 -0
  14. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_auditreport401_error_exception.rb +32 -0
  15. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_auditreport403_error_exception.rb +32 -0
  16. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_auditreport404_error_exception.rb +32 -0
  17. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_auditreport500_error_exception.rb +32 -0
  18. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_cardgroups400_error_exception.rb +32 -0
  19. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_cardgroups401_error_exception.rb +32 -0
  20. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_cardgroups403_error_exception.rb +32 -0
  21. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_cardgroups404_error_exception.rb +32 -0
  22. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_cardgroups500_error_exception.rb +32 -0
  23. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_customer400_error_exception.rb +32 -0
  24. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_customer401_error_exception.rb +32 -0
  25. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_customer403_error_exception.rb +32 -0
  26. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_customer404_error_exception.rb +32 -0
  27. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_customer500_error_exception.rb +32 -0
  28. data/lib/shell_data_reporting_ap_is/exceptions/{default_error_exception.rb → fleetmanagement_v1_customer_payers400_error_exception.rb} +20 -20
  29. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_payers401_error_exception.rb +32 -0
  30. data/lib/shell_data_reporting_ap_is/exceptions/{error_user_access_error1_exception.rb → fleetmanagement_v1_customer_payers403_error_exception.rb} +17 -17
  31. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_payers404_error_exception.rb +32 -0
  32. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_customer_payers500_error_exception.rb +32 -0
  33. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_cardusagesummary400_error_exception.rb +32 -0
  34. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_cardusagesummary401_error_exception.rb +32 -0
  35. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_cardusagesummary403_error_exception.rb +32 -0
  36. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_cardusagesummary404_error_exception.rb +32 -0
  37. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_cardusagesummary500_error_exception.rb +32 -0
  38. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_exceptions400_error_exception.rb +32 -0
  39. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_exceptions401_error_exception.rb +32 -0
  40. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_exceptions403_error_exception.rb +32 -0
  41. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_exceptions404_error_exception.rb +32 -0
  42. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_exceptions500_error_exception.rb +32 -0
  43. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_fees400_error_exception.rb +32 -0
  44. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_fees401_error_exception.rb +32 -0
  45. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_fees403_error_exception.rb +32 -0
  46. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_fees404_error_exception.rb +32 -0
  47. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_fees500_error_exception.rb +32 -0
  48. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_feessummary400_error_exception.rb +32 -0
  49. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_feessummary401_error_exception.rb +32 -0
  50. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_feessummary403_error_exception.rb +32 -0
  51. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_feessummary404_error_exception.rb +32 -0
  52. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_feessummary500_error_exception.rb +32 -0
  53. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_fuelconsumption400_error_exception.rb +32 -0
  54. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_fuelconsumption401_error_exception.rb +32 -0
  55. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_fuelconsumption403_error_exception.rb +32 -0
  56. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_fuelconsumption404_error_exception.rb +32 -0
  57. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_fuelconsumption500_error_exception.rb +32 -0
  58. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_multipayerspricedtransactions400_error_exception.rb +32 -0
  59. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_multipayerspricedtransactions401_error_exception.rb +32 -0
  60. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_multipayerspricedtransactions403_error_exception.rb +32 -0
  61. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_multipayerspricedtransactions404_error_exception.rb +32 -0
  62. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_multipayerspricedtransactions500_error_exception.rb +32 -0
  63. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_pricedtransactions400_error_exception.rb +32 -0
  64. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_pricedtransactions401_error_exception.rb +32 -0
  65. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_pricedtransactions403_error_exception.rb +32 -0
  66. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_pricedtransactions404_error_exception.rb +32 -0
  67. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_pricedtransactions500_error_exception.rb +32 -0
  68. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_pricedtransactionssummary400_error_exception.rb +32 -0
  69. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_pricedtransactionssummary401_error_exception.rb +32 -0
  70. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_pricedtransactionssummary403_error_exception.rb +32 -0
  71. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_pricedtransactionssummary404_error_exception.rb +32 -0
  72. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_pricedtransactionssummary500_error_exception.rb +32 -0
  73. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_updateodometer400_error_exception.rb +32 -0
  74. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_updateodometer401_error_exception.rb +32 -0
  75. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_updateodometer403_error_exception.rb +32 -0
  76. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_updateodometer404_error_exception.rb +32 -0
  77. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_updateodometer500_error_exception.rb +32 -0
  78. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_volumebasedbonus400_error_exception.rb +32 -0
  79. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_volumebasedbonus401_error_exception.rb +32 -0
  80. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_volumebasedbonus403_error_exception.rb +32 -0
  81. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_volumebasedbonus404_error_exception.rb +32 -0
  82. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_volumebasedbonus500_error_exception.rb +32 -0
  83. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_volumebasedpricing400_error_exception.rb +32 -0
  84. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_volumebasedpricing401_error_exception.rb +32 -0
  85. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_volumebasedpricing403_error_exception.rb +32 -0
  86. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_volumebasedpricing404_error_exception.rb +32 -0
  87. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_transaction_volumebasedpricing500_error_exception.rb +32 -0
  88. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_user_loggedinuser400_error_exception.rb +32 -0
  89. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_user_loggedinuser401_error_exception.rb +32 -0
  90. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_user_loggedinuser403_error_exception.rb +32 -0
  91. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_user_loggedinuser404_error_exception.rb +32 -0
  92. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v1_user_loggedinuser500_error_exception.rb +32 -0
  93. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v2_customer_cardtype400_error_exception.rb +32 -0
  94. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v2_customer_cardtype401_error_exception.rb +32 -0
  95. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v2_customer_cardtype403_error_exception.rb +32 -0
  96. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v2_customer_cardtype404_error_exception.rb +32 -0
  97. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v2_customer_cardtype500_error_exception.rb +32 -0
  98. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v2_customer_pricelist400_error_exception.rb +32 -0
  99. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v2_customer_pricelist401_error_exception.rb +32 -0
  100. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v2_customer_pricelist403_error_exception.rb +32 -0
  101. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v2_customer_pricelist404_error_exception.rb +32 -0
  102. data/lib/shell_data_reporting_ap_is/exceptions/fleetmanagement_v2_customer_pricelist500_error_exception.rb +32 -0
  103. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_dates400_error_exception.rb +54 -0
  104. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_dates401_error_exception.rb +54 -0
  105. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_dates403_error_exception.rb +54 -0
  106. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_dates404_error_exception.rb +54 -0
  107. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_dates500_error_exception.rb +54 -0
  108. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_download400_error_exception.rb +54 -0
  109. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_download401_error_exception.rb +54 -0
  110. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_download403_error_exception.rb +54 -0
  111. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_download404_error_exception.rb +54 -0
  112. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_download500_error_exception.rb +54 -0
  113. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_eiddownload400_error_exception.rb +54 -0
  114. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_eiddownload401_error_exception.rb +54 -0
  115. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_eiddownload403_error_exception.rb +54 -0
  116. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_eiddownload404_error_exception.rb +54 -0
  117. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_eiddownload500_error_exception.rb +54 -0
  118. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_eidsearch400_error_exception.rb +54 -0
  119. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_eidsearch401_error_exception.rb +54 -0
  120. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_eidsearch403_error_exception.rb +54 -0
  121. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_eidsearch404_error_exception.rb +54 -0
  122. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_eidsearch500_error_exception.rb +54 -0
  123. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_search400_error_exception.rb +54 -0
  124. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_search401_error_exception.rb +54 -0
  125. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_search403_error_exception.rb +54 -0
  126. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_search404_error_exception.rb +54 -0
  127. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_search500_error_exception.rb +54 -0
  128. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_searchdocuments400_error_exception.rb +54 -0
  129. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_searchdocuments401_error_exception.rb +54 -0
  130. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_searchdocuments403_error_exception.rb +54 -0
  131. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_searchdocuments404_error_exception.rb +54 -0
  132. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_searchdocuments500_error_exception.rb +54 -0
  133. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_searchstatementofaccount400_error_exception.rb +54 -0
  134. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_searchstatementofaccount401_error_exception.rb +54 -0
  135. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_searchstatementofaccount403_error_exception.rb +54 -0
  136. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_searchstatementofaccount404_error_exception.rb +54 -0
  137. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_searchstatementofaccount500_error_exception.rb +54 -0
  138. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_statementofaccount400_error_exception.rb +54 -0
  139. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_statementofaccount401_error_exception.rb +54 -0
  140. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_statementofaccount403_error_exception.rb +54 -0
  141. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_statementofaccount404_error_exception.rb +54 -0
  142. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_statementofaccount500_error_exception.rb +54 -0
  143. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_summary400_error_exception.rb +54 -0
  144. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_summary401_error_exception.rb +54 -0
  145. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_summary403_error_exception.rb +54 -0
  146. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_summary404_error_exception.rb +54 -0
  147. data/lib/shell_data_reporting_ap_is/exceptions/invoice_management_v1_summary500_error_exception.rb +54 -0
  148. data/lib/shell_data_reporting_ap_is/exceptions/o_auth_provider_exception.rb +15 -15
  149. data/lib/shell_data_reporting_ap_is/exceptions/{error_object_exception.rb → transaction_data_v1_priced400_error_exception.rb} +17 -17
  150. data/lib/shell_data_reporting_ap_is/exceptions/transaction_data_v1_priced401_error_exception.rb +54 -0
  151. data/lib/shell_data_reporting_ap_is/exceptions/transaction_data_v1_priced403_error_exception.rb +54 -0
  152. data/lib/shell_data_reporting_ap_is/exceptions/transaction_data_v1_priced404_error_exception.rb +54 -0
  153. data/lib/shell_data_reporting_ap_is/exceptions/transaction_data_v1_priced500_error_exception.rb +54 -0
  154. data/lib/shell_data_reporting_ap_is/exceptions/transaction_data_v1_recent400_error_exception.rb +54 -0
  155. data/lib/shell_data_reporting_ap_is/exceptions/transaction_data_v1_recent401_error_exception.rb +54 -0
  156. data/lib/shell_data_reporting_ap_is/exceptions/transaction_data_v1_recent403_error_exception.rb +54 -0
  157. data/lib/shell_data_reporting_ap_is/exceptions/transaction_data_v1_recent404_error_exception.rb +54 -0
  158. data/lib/shell_data_reporting_ap_is/exceptions/transaction_data_v1_recent500_error_exception.rb +54 -0
  159. data/lib/shell_data_reporting_ap_is/http/auth/bearer_token.rb +54 -10
  160. data/lib/shell_data_reporting_ap_is/models/account_access.rb +3 -8
  161. data/lib/shell_data_reporting_ap_is/models/account_request.rb +17 -26
  162. data/lib/shell_data_reporting_ap_is/models/account_response.rb +2 -6
  163. data/lib/shell_data_reporting_ap_is/models/account_response_accounts_items.rb +29 -53
  164. data/lib/shell_data_reporting_ap_is/models/accounts.rb +1 -2
  165. data/lib/shell_data_reporting_ap_is/models/address.rb +4 -11
  166. data/lib/shell_data_reporting_ap_is/models/audit_request.rb +17 -25
  167. data/lib/shell_data_reporting_ap_is/models/audit_response.rb +2 -6
  168. data/lib/shell_data_reporting_ap_is/models/audit_response_audits_items.rb +50 -63
  169. data/lib/shell_data_reporting_ap_is/models/bank_account.rb +5 -13
  170. data/lib/shell_data_reporting_ap_is/models/bonus_configuration.rb +9 -18
  171. data/lib/shell_data_reporting_ap_is/models/bonus_history.rb +14 -29
  172. data/lib/shell_data_reporting_ap_is/models/card_day_time_restrictions.rb +3 -9
  173. data/lib/shell_data_reporting_ap_is/models/card_exceptions.rb +8 -19
  174. data/lib/shell_data_reporting_ap_is/models/card_group_request.rb +6 -12
  175. data/lib/shell_data_reporting_ap_is/models/card_group_response.rb +2 -6
  176. data/lib/shell_data_reporting_ap_is/models/card_group_response_card_groups_items.rb +10 -20
  177. data/lib/shell_data_reporting_ap_is/models/card_type_request.rb +3 -7
  178. data/lib/shell_data_reporting_ap_is/models/card_type_response.rb +1 -3
  179. data/lib/shell_data_reporting_ap_is/models/card_type_response_customer_card_types_items.rb +15 -31
  180. data/lib/shell_data_reporting_ap_is/models/card_type_response_error.rb +1 -2
  181. data/lib/shell_data_reporting_ap_is/models/card_usage_restrictions.rb +5 -10
  182. data/lib/shell_data_reporting_ap_is/models/card_usage_summary_request.rb +3 -8
  183. data/lib/shell_data_reporting_ap_is/models/card_usage_summary_response.rb +1 -3
  184. data/lib/shell_data_reporting_ap_is/models/col_co_access.rb +2 -4
  185. data/lib/shell_data_reporting_ap_is/models/current_volume.rb +2 -5
  186. data/lib/shell_data_reporting_ap_is/models/customer_contract.rb +1 -2
  187. data/lib/shell_data_reporting_ap_is/models/customer_detail_request.rb +2 -5
  188. data/lib/shell_data_reporting_ap_is/models/customer_detail_response.rb +31 -45
  189. data/lib/shell_data_reporting_ap_is/models/customer_price_list_request.rb +5 -12
  190. data/lib/shell_data_reporting_ap_is/models/customer_price_list_response.rb +1 -3
  191. data/lib/shell_data_reporting_ap_is/models/default_error.rb +50 -0
  192. data/lib/shell_data_reporting_ap_is/models/default_error_fault.rb +4 -5
  193. data/lib/shell_data_reporting_ap_is/models/delivery_addresses.rb +7 -18
  194. data/lib/shell_data_reporting_ap_is/models/detail.rb +50 -0
  195. data/lib/shell_data_reporting_ap_is/models/eid_access.rb +1 -2
  196. data/lib/shell_data_reporting_ap_is/models/eid_document.rb +11 -16
  197. data/lib/shell_data_reporting_ap_is/models/eid_document_response.rb +3 -8
  198. data/lib/shell_data_reporting_ap_is/models/eid_download_req.rb +2 -4
  199. data/lib/shell_data_reporting_ap_is/models/eid_search_req.rb +10 -15
  200. data/lib/shell_data_reporting_ap_is/models/eid_search_request.rb +1 -3
  201. data/lib/shell_data_reporting_ap_is/models/error_details.rb +1 -3
  202. data/lib/shell_data_reporting_ap_is/models/error_object.rb +80 -0
  203. data/lib/shell_data_reporting_ap_is/models/error_status.rb +11 -2
  204. data/lib/shell_data_reporting_ap_is/models/error_user_access_error.rb +1 -2
  205. data/lib/shell_data_reporting_ap_is/models/exception_product.rb +1 -2
  206. data/lib/shell_data_reporting_ap_is/models/exception_site_location.rb +1 -2
  207. data/lib/shell_data_reporting_ap_is/models/fault.rb +59 -0
  208. data/lib/shell_data_reporting_ap_is/models/fee_item.rb +35 -71
  209. data/lib/shell_data_reporting_ap_is/models/fee_item_summary_all_of0.rb +5 -11
  210. data/lib/shell_data_reporting_ap_is/models/fee_rule_location.rb +4 -10
  211. data/lib/shell_data_reporting_ap_is/models/fee_rule_product.rb +2 -5
  212. data/lib/shell_data_reporting_ap_is/models/fee_rule_tier.rb +1 -3
  213. data/lib/shell_data_reporting_ap_is/models/fee_summary_response.rb +1 -3
  214. data/lib/shell_data_reporting_ap_is/models/fees_fee_rule_tiers.rb +3 -7
  215. data/lib/shell_data_reporting_ap_is/models/filters.rb +454 -0
  216. data/lib/shell_data_reporting_ap_is/models/finance_currency.rb +1 -2
  217. data/lib/shell_data_reporting_ap_is/models/finance_currency2.rb +96 -0
  218. data/lib/shell_data_reporting_ap_is/models/fleetmanagement_v1_user_loggedinuser_request.rb +104 -0
  219. data/lib/shell_data_reporting_ap_is/models/fuel_consumption_card.rb +1 -3
  220. data/lib/shell_data_reporting_ap_is/models/fuel_consumption_data.rb +9 -20
  221. data/lib/shell_data_reporting_ap_is/models/fuel_consumption_request.rb +7 -14
  222. data/lib/shell_data_reporting_ap_is/models/fuel_consumption_response.rb +1 -3
  223. data/lib/shell_data_reporting_ap_is/models/invoice_dates_data.rb +1 -2
  224. data/lib/shell_data_reporting_ap_is/models/invoice_dates_request_filters.rb +2 -6
  225. data/lib/shell_data_reporting_ap_is/models/invoice_dates_response_data.rb +1 -3
  226. data/lib/shell_data_reporting_ap_is/models/invoice_distribution_method.rb +2 -4
  227. data/lib/shell_data_reporting_ap_is/models/invoice_download_req.rb +2 -5
  228. data/lib/shell_data_reporting_ap_is/models/invoice_search_additional_document.rb +2 -4
  229. data/lib/shell_data_reporting_ap_is/models/invoice_search_details.rb +86 -107
  230. data/lib/shell_data_reporting_ap_is/models/invoice_search_request.rb +5 -7
  231. data/lib/shell_data_reporting_ap_is/models/invoice_search_request_filters.rb +21 -31
  232. data/lib/shell_data_reporting_ap_is/models/invoice_search_response.rb +2 -7
  233. data/lib/shell_data_reporting_ap_is/models/invoice_summary_request_filters.rb +21 -31
  234. data/lib/shell_data_reporting_ap_is/models/invoice_summary_response.rb +1 -3
  235. data/lib/shell_data_reporting_ap_is/models/invoices_summaries.rb +5 -10
  236. data/lib/shell_data_reporting_ap_is/models/last_statement_of_account.rb +39 -48
  237. data/lib/shell_data_reporting_ap_is/models/last_statement_of_account2.rb +412 -0
  238. data/lib/shell_data_reporting_ap_is/models/location.rb +62 -0
  239. data/lib/shell_data_reporting_ap_is/models/logged_in_user_request.rb +2 -4
  240. data/lib/shell_data_reporting_ap_is/models/logged_in_user_response.rb +12 -25
  241. data/lib/shell_data_reporting_ap_is/models/monthly_invoice_trend.rb +2 -5
  242. data/lib/shell_data_reporting_ap_is/models/multi_priced_transaction_request.rb +21 -32
  243. data/lib/shell_data_reporting_ap_is/models/multi_priced_transaction_request_accounts_items.rb +1 -3
  244. data/lib/shell_data_reporting_ap_is/models/multi_priced_transaction_response.rb +2 -6
  245. data/lib/shell_data_reporting_ap_is/models/multi_priced_transaction_response_transactions_items.rb +70 -122
  246. data/lib/shell_data_reporting_ap_is/models/o_auth_token.rb +2 -6
  247. data/lib/shell_data_reporting_ap_is/models/past_statement_of_accounts.rb +11 -22
  248. data/lib/shell_data_reporting_ap_is/models/payer_access.rb +3 -8
  249. data/lib/shell_data_reporting_ap_is/models/payer_details.rb +55 -96
  250. data/lib/shell_data_reporting_ap_is/models/payer_request.rb +9 -12
  251. data/lib/shell_data_reporting_ap_is/models/payer_response.rb +2 -6
  252. data/lib/shell_data_reporting_ap_is/models/payers.rb +2 -5
  253. data/lib/shell_data_reporting_ap_is/models/payments_since_last_soa.rb +8 -17
  254. data/lib/shell_data_reporting_ap_is/models/pin_advice_types.rb +5 -6
  255. data/lib/shell_data_reporting_ap_is/models/price_list.rb +25 -45
  256. data/lib/shell_data_reporting_ap_is/models/price_trans_summary_request.rb +28 -44
  257. data/lib/shell_data_reporting_ap_is/models/price_transaction_request.rb +41 -59
  258. data/lib/shell_data_reporting_ap_is/models/priced_request_data.rb +21 -50
  259. data/lib/shell_data_reporting_ap_is/models/priced_response_data.rb +91 -201
  260. data/lib/shell_data_reporting_ap_is/models/priced_trans_summary_response.rb +1 -3
  261. data/lib/shell_data_reporting_ap_is/models/priced_trans_summary_response_transactions_summary_items.rb +22 -28
  262. data/lib/shell_data_reporting_ap_is/models/priced_transaction_items_location_items.rb +11 -2
  263. data/lib/shell_data_reporting_ap_is/models/priced_transaction_request_v2.rb +4 -8
  264. data/lib/shell_data_reporting_ap_is/models/priced_transaction_response_transactions_items.rb +91 -141
  265. data/lib/shell_data_reporting_ap_is/models/priced_transaction_response_v2.rb +2 -6
  266. data/lib/shell_data_reporting_ap_is/models/pricing_current_volume.rb +3 -6
  267. data/lib/shell_data_reporting_ap_is/models/pricing_history.rb +2 -5
  268. data/lib/shell_data_reporting_ap_is/models/purchase_categories.rb +1 -4
  269. data/lib/shell_data_reporting_ap_is/models/recent_transaction_req.rb +6 -14
  270. data/lib/shell_data_reporting_ap_is/models/recent_transaction_request.rb +1 -3
  271. data/lib/shell_data_reporting_ap_is/models/recent_transactions.rb +29 -60
  272. data/lib/shell_data_reporting_ap_is/models/recent_transactions_response.rb +2 -6
  273. data/lib/shell_data_reporting_ap_is/models/role.rb +3 -6
  274. data/lib/shell_data_reporting_ap_is/models/search_doc_req.rb +19 -27
  275. data/lib/shell_data_reporting_ap_is/models/search_documents_invoice.rb +9 -16
  276. data/lib/shell_data_reporting_ap_is/models/search_documents_request.rb +1 -3
  277. data/lib/shell_data_reporting_ap_is/models/search_documents_response.rb +3 -7
  278. data/lib/shell_data_reporting_ap_is/models/search_soa_req.rb +4 -11
  279. data/lib/shell_data_reporting_ap_is/models/search_statement_of_account.rb +11 -18
  280. data/lib/shell_data_reporting_ap_is/models/search_statement_of_account_request.rb +1 -3
  281. data/lib/shell_data_reporting_ap_is/models/search_statement_of_account_response.rb +2 -7
  282. data/lib/shell_data_reporting_ap_is/models/site_location.rb +11 -2
  283. data/lib/shell_data_reporting_ap_is/models/statement_of_account_request_filters.rb +2 -5
  284. data/lib/shell_data_reporting_ap_is/models/statement_of_account_resp.rb +8 -9
  285. data/lib/shell_data_reporting_ap_is/models/statement_of_account_response.rb +1 -3
  286. data/lib/shell_data_reporting_ap_is/models/tier.rb +8 -12
  287. data/lib/shell_data_reporting_ap_is/models/transaction_exceptions.rb +50 -95
  288. data/lib/shell_data_reporting_ap_is/models/transaction_exceptions_request.rb +12 -21
  289. data/lib/shell_data_reporting_ap_is/models/transaction_exceptions_response.rb +2 -4
  290. data/lib/shell_data_reporting_ap_is/models/transaction_fees_request.rb +21 -33
  291. data/lib/shell_data_reporting_ap_is/models/transaction_fees_response.rb +2 -6
  292. data/lib/shell_data_reporting_ap_is/models/update_odometer.rb +1 -2
  293. data/lib/shell_data_reporting_ap_is/models/update_odometer_reference.rb +1 -2
  294. data/lib/shell_data_reporting_ap_is/models/update_odometer_request.rb +3 -8
  295. data/lib/shell_data_reporting_ap_is/models/update_odometer_response.rb +2 -4
  296. data/lib/shell_data_reporting_ap_is/models/usage_summary.rb +6 -14
  297. data/lib/shell_data_reporting_ap_is/models/volume_based_bonus_request.rb +2 -5
  298. data/lib/shell_data_reporting_ap_is/models/volume_based_bonus_response.rb +2 -4
  299. data/lib/shell_data_reporting_ap_is/models/volume_based_pricing_request.rb +2 -5
  300. data/lib/shell_data_reporting_ap_is/models/volume_based_pricing_response.rb +2 -5
  301. data/lib/shell_data_reporting_ap_is/utilities/file_wrapper.rb +9 -9
  302. data/lib/shell_data_reporting_ap_is/utilities/union_type_lookup.rb +35 -0
  303. data/lib/shell_data_reporting_ap_is.rb +355 -3
  304. data/test/controllers/controller_test_base.rb +0 -5
  305. data/test/controllers/test_transaction_controller.rb +82 -74
  306. metadata +170 -19
@@ -0,0 +1,54 @@
1
+ # shell_data_reporting_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module ShellDataReportingApIs
7
+ # Transaction Data V1 Recent 400 Error class.
8
+ class TransactionDataV1Recent400ErrorException < APIException
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Unique request identifier passed from end user. This identifier helps in
13
+ # tracing a transaction
14
+ # @return [String]
15
+ attr_accessor :request_id
16
+
17
+ # Indicates overall status of the request. Allowed values: SUCCES, FAILED,
18
+ # PARTIAL_SUCCESS
19
+ # @return [String]
20
+ attr_accessor :status
21
+
22
+ # Indicates overall status of the request. Allowed values: SUCCES, FAILED,
23
+ # PARTIAL_SUCCESS
24
+ # @return [Array[ErrorDetails]]
25
+ attr_accessor :errors
26
+
27
+ # The constructor.
28
+ # @param [String] The reason for raising an exception.
29
+ # @param [HttpResponse] The HttpReponse of the API call.
30
+ def initialize(reason, response)
31
+ super(reason, response)
32
+ hash = APIHelper.json_deserialize(@response.raw_body)
33
+ unbox(hash)
34
+ end
35
+
36
+ # Populates this object by extracting properties from a hash.
37
+ # @param [Hash] The deserialized response sent by the server in the
38
+ # response body.
39
+ def unbox(hash)
40
+ @request_id = hash.key?('RequestId') ? hash['RequestId'] : SKIP
41
+ @status = hash.key?('Status') ? hash['Status'] : SKIP
42
+ # Parameter is an array, so we need to iterate through it
43
+ @errors = nil
44
+ unless hash['Errors'].nil?
45
+ @errors = []
46
+ hash['Errors'].each do |structure|
47
+ @errors << (ErrorDetails.from_hash(structure) if structure)
48
+ end
49
+ end
50
+
51
+ @errors = SKIP unless hash.key?('Errors')
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,54 @@
1
+ # shell_data_reporting_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module ShellDataReportingApIs
7
+ # Transaction Data V1 Recent 401 Error class.
8
+ class TransactionDataV1Recent401ErrorException < APIException
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Unique request identifier passed from end user. This identifier helps in
13
+ # tracing a transaction
14
+ # @return [String]
15
+ attr_accessor :request_id
16
+
17
+ # Indicates overall status of the request. Allowed values: SUCCES, FAILED,
18
+ # PARTIAL_SUCCESS
19
+ # @return [String]
20
+ attr_accessor :status
21
+
22
+ # Indicates overall status of the request. Allowed values: SUCCES, FAILED,
23
+ # PARTIAL_SUCCESS
24
+ # @return [Array[ErrorDetails]]
25
+ attr_accessor :errors
26
+
27
+ # The constructor.
28
+ # @param [String] The reason for raising an exception.
29
+ # @param [HttpResponse] The HttpReponse of the API call.
30
+ def initialize(reason, response)
31
+ super(reason, response)
32
+ hash = APIHelper.json_deserialize(@response.raw_body)
33
+ unbox(hash)
34
+ end
35
+
36
+ # Populates this object by extracting properties from a hash.
37
+ # @param [Hash] The deserialized response sent by the server in the
38
+ # response body.
39
+ def unbox(hash)
40
+ @request_id = hash.key?('RequestId') ? hash['RequestId'] : SKIP
41
+ @status = hash.key?('Status') ? hash['Status'] : SKIP
42
+ # Parameter is an array, so we need to iterate through it
43
+ @errors = nil
44
+ unless hash['Errors'].nil?
45
+ @errors = []
46
+ hash['Errors'].each do |structure|
47
+ @errors << (ErrorDetails.from_hash(structure) if structure)
48
+ end
49
+ end
50
+
51
+ @errors = SKIP unless hash.key?('Errors')
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,54 @@
1
+ # shell_data_reporting_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module ShellDataReportingApIs
7
+ # Transaction Data V1 Recent 403 Error class.
8
+ class TransactionDataV1Recent403ErrorException < APIException
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Unique request identifier passed from end user. This identifier helps in
13
+ # tracing a transaction
14
+ # @return [String]
15
+ attr_accessor :request_id
16
+
17
+ # Indicates overall status of the request. Allowed values: SUCCES, FAILED,
18
+ # PARTIAL_SUCCESS
19
+ # @return [String]
20
+ attr_accessor :status
21
+
22
+ # Indicates overall status of the request. Allowed values: SUCCES, FAILED,
23
+ # PARTIAL_SUCCESS
24
+ # @return [Array[ErrorDetails]]
25
+ attr_accessor :errors
26
+
27
+ # The constructor.
28
+ # @param [String] The reason for raising an exception.
29
+ # @param [HttpResponse] The HttpReponse of the API call.
30
+ def initialize(reason, response)
31
+ super(reason, response)
32
+ hash = APIHelper.json_deserialize(@response.raw_body)
33
+ unbox(hash)
34
+ end
35
+
36
+ # Populates this object by extracting properties from a hash.
37
+ # @param [Hash] The deserialized response sent by the server in the
38
+ # response body.
39
+ def unbox(hash)
40
+ @request_id = hash.key?('RequestId') ? hash['RequestId'] : SKIP
41
+ @status = hash.key?('Status') ? hash['Status'] : SKIP
42
+ # Parameter is an array, so we need to iterate through it
43
+ @errors = nil
44
+ unless hash['Errors'].nil?
45
+ @errors = []
46
+ hash['Errors'].each do |structure|
47
+ @errors << (ErrorDetails.from_hash(structure) if structure)
48
+ end
49
+ end
50
+
51
+ @errors = SKIP unless hash.key?('Errors')
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,54 @@
1
+ # shell_data_reporting_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module ShellDataReportingApIs
7
+ # Transaction Data V1 Recent 404 Error class.
8
+ class TransactionDataV1Recent404ErrorException < APIException
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Unique request identifier passed from end user. This identifier helps in
13
+ # tracing a transaction
14
+ # @return [String]
15
+ attr_accessor :request_id
16
+
17
+ # Indicates overall status of the request. Allowed values: SUCCES, FAILED,
18
+ # PARTIAL_SUCCESS
19
+ # @return [String]
20
+ attr_accessor :status
21
+
22
+ # Indicates overall status of the request. Allowed values: SUCCES, FAILED,
23
+ # PARTIAL_SUCCESS
24
+ # @return [Array[ErrorDetails]]
25
+ attr_accessor :errors
26
+
27
+ # The constructor.
28
+ # @param [String] The reason for raising an exception.
29
+ # @param [HttpResponse] The HttpReponse of the API call.
30
+ def initialize(reason, response)
31
+ super(reason, response)
32
+ hash = APIHelper.json_deserialize(@response.raw_body)
33
+ unbox(hash)
34
+ end
35
+
36
+ # Populates this object by extracting properties from a hash.
37
+ # @param [Hash] The deserialized response sent by the server in the
38
+ # response body.
39
+ def unbox(hash)
40
+ @request_id = hash.key?('RequestId') ? hash['RequestId'] : SKIP
41
+ @status = hash.key?('Status') ? hash['Status'] : SKIP
42
+ # Parameter is an array, so we need to iterate through it
43
+ @errors = nil
44
+ unless hash['Errors'].nil?
45
+ @errors = []
46
+ hash['Errors'].each do |structure|
47
+ @errors << (ErrorDetails.from_hash(structure) if structure)
48
+ end
49
+ end
50
+
51
+ @errors = SKIP unless hash.key?('Errors')
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,54 @@
1
+ # shell_data_reporting_ap_is
2
+ #
3
+ # This file was automatically generated by APIMATIC v2.0
4
+ # ( https://apimatic.io ).
5
+
6
+ module ShellDataReportingApIs
7
+ # Transaction Data V1 Recent 500 Error class.
8
+ class TransactionDataV1Recent500ErrorException < APIException
9
+ SKIP = Object.new
10
+ private_constant :SKIP
11
+
12
+ # Unique request identifier passed from end user. This identifier helps in
13
+ # tracing a transaction
14
+ # @return [String]
15
+ attr_accessor :request_id
16
+
17
+ # Indicates overall status of the request. Allowed values: SUCCES, FAILED,
18
+ # PARTIAL_SUCCESS
19
+ # @return [String]
20
+ attr_accessor :status
21
+
22
+ # Indicates overall status of the request. Allowed values: SUCCES, FAILED,
23
+ # PARTIAL_SUCCESS
24
+ # @return [Array[ErrorDetails]]
25
+ attr_accessor :errors
26
+
27
+ # The constructor.
28
+ # @param [String] The reason for raising an exception.
29
+ # @param [HttpResponse] The HttpReponse of the API call.
30
+ def initialize(reason, response)
31
+ super(reason, response)
32
+ hash = APIHelper.json_deserialize(@response.raw_body)
33
+ unbox(hash)
34
+ end
35
+
36
+ # Populates this object by extracting properties from a hash.
37
+ # @param [Hash] The deserialized response sent by the server in the
38
+ # response body.
39
+ def unbox(hash)
40
+ @request_id = hash.key?('RequestId') ? hash['RequestId'] : SKIP
41
+ @status = hash.key?('Status') ? hash['Status'] : SKIP
42
+ # Parameter is an array, so we need to iterate through it
43
+ @errors = nil
44
+ unless hash['Errors'].nil?
45
+ @errors = []
46
+ hash['Errors'].each do |structure|
47
+ @errors << (ErrorDetails.from_hash(structure) if structure)
48
+ end
49
+ end
50
+
51
+ @errors = SKIP unless hash.key?('Errors')
52
+ end
53
+ end
54
+ end
@@ -15,23 +15,27 @@ module ShellDataReportingApIs
15
15
 
16
16
  # Initialization constructor.
17
17
  def initialize(bearer_token_credentials, config)
18
- auth_params = {}
19
18
  @_o_auth_client_id = bearer_token_credentials.o_auth_client_id unless
20
19
  bearer_token_credentials.nil? || bearer_token_credentials.o_auth_client_id.nil?
21
20
  @_o_auth_client_secret = bearer_token_credentials.o_auth_client_secret unless
22
21
  bearer_token_credentials.nil? || bearer_token_credentials.o_auth_client_secret.nil?
23
22
  @_o_auth_token = bearer_token_credentials.o_auth_token unless
24
23
  bearer_token_credentials.nil? || bearer_token_credentials.o_auth_token.nil?
24
+ @_o_auth_clock_skew = bearer_token_credentials.o_auth_clock_skew unless
25
+ bearer_token_credentials.nil? || bearer_token_credentials.o_auth_clock_skew.nil?
26
+ @_o_auth_token_provider = bearer_token_credentials.o_auth_token_provider unless
27
+ bearer_token_credentials.nil? || bearer_token_credentials.o_auth_token_provider.nil?
28
+ @_o_auth_on_token_update = bearer_token_credentials.o_auth_on_token_update unless
29
+ bearer_token_credentials.nil? || bearer_token_credentials.o_auth_on_token_update.nil?
25
30
  @_o_auth_api = OAuthAuthorizationController.new(config)
26
- auth_params['Authorization'] = "Bearer #{@_o_auth_token.access_token}" unless @_o_auth_token.nil?
27
-
28
- super auth_params
31
+ super({})
29
32
  end
30
33
 
31
34
  # Validates the oAuth token.
32
35
  # @return [Boolean] true if the token is present and not expired.
33
36
  def valid
34
- !@_o_auth_token.nil? && !token_expired?(@_o_auth_token)
37
+ @_o_auth_token = get_token_from_provider
38
+ @_o_auth_token.is_a?(OAuthToken) && !token_expired?(@_o_auth_token)
35
39
  end
36
40
 
37
41
  # Builds the basic auth header for endpoints in the OAuth Authorization Controller.
@@ -58,32 +62,72 @@ module ShellDataReportingApIs
58
62
  # @param [OAuthToken] token The oAuth token instance.
59
63
  # @return [Boolean] true if the token's expiry exist and also the token is expired, false otherwise.
60
64
  def token_expired?(token)
61
- token.respond_to?('expiry') && AuthHelper.token_expired?(token.expiry)
65
+ token.respond_to?('expiry') && AuthHelper.token_expired?(token.expiry, @_o_auth_clock_skew)
66
+ end
67
+
68
+ def apply(http_request)
69
+ auth_params = { 'Authorization' => "Bearer #{@_o_auth_token.access_token}" }
70
+ AuthHelper.apply(auth_params, http_request.method(:add_header))
71
+ end
72
+
73
+ private
74
+
75
+ # This provides the OAuth Token from either the user configured callbacks or from default provider.
76
+ # @return [OAuthToken] The fetched oauth token.
77
+ def get_token_from_provider
78
+ return @_o_auth_token if @_o_auth_token && !token_expired?(@_o_auth_token)
79
+
80
+ if @_o_auth_token_provider
81
+ o_auth_token = @_o_auth_token_provider.call(@_o_auth_token, self)
82
+ @_o_auth_on_token_update&.call(o_auth_token)
83
+ return o_auth_token
84
+ end
85
+ begin
86
+ o_auth_token = fetch_token
87
+ @_o_auth_on_token_update&.call(o_auth_token)
88
+ o_auth_token
89
+ rescue ApiException
90
+ @_o_auth_token
91
+ end
62
92
  end
63
93
  end
64
94
 
65
95
  # Data class for BearerTokenCredentials.
66
96
  class BearerTokenCredentials
67
- attr_reader :o_auth_client_id, :o_auth_client_secret, :o_auth_token
97
+ attr_reader :o_auth_client_id, :o_auth_client_secret, :o_auth_token,
98
+ :o_auth_token_provider, :o_auth_on_token_update,
99
+ :o_auth_clock_skew
68
100
 
69
- def initialize(o_auth_client_id:, o_auth_client_secret:, o_auth_token: nil)
101
+ def initialize(o_auth_client_id:, o_auth_client_secret:, o_auth_token: nil,
102
+ o_auth_token_provider: nil, o_auth_on_token_update: nil,
103
+ o_auth_clock_skew: nil)
70
104
  raise ArgumentError, 'o_auth_client_id cannot be nil' if o_auth_client_id.nil?
71
105
  raise ArgumentError, 'o_auth_client_secret cannot be nil' if o_auth_client_secret.nil?
72
106
 
73
107
  @o_auth_client_id = o_auth_client_id
74
108
  @o_auth_client_secret = o_auth_client_secret
75
109
  @o_auth_token = o_auth_token
110
+ @o_auth_token_provider = o_auth_token_provider
111
+ @o_auth_on_token_update = o_auth_on_token_update
112
+ @o_auth_clock_skew = o_auth_clock_skew
76
113
  end
77
114
 
78
115
  def clone_with(o_auth_client_id: nil, o_auth_client_secret: nil,
79
- o_auth_token: nil)
116
+ o_auth_token: nil, o_auth_token_provider: nil,
117
+ o_auth_on_token_update: nil, o_auth_clock_skew: nil)
80
118
  o_auth_client_id ||= self.o_auth_client_id
81
119
  o_auth_client_secret ||= self.o_auth_client_secret
82
120
  o_auth_token ||= self.o_auth_token
121
+ o_auth_token_provider ||= self.o_auth_token_provider
122
+ o_auth_on_token_update ||= self.o_auth_on_token_update
123
+ o_auth_clock_skew ||= self.o_auth_clock_skew
83
124
 
84
125
  BearerTokenCredentials.new(o_auth_client_id: o_auth_client_id,
85
126
  o_auth_client_secret: o_auth_client_secret,
86
- o_auth_token: o_auth_token)
127
+ o_auth_token: o_auth_token,
128
+ o_auth_token_provider: o_auth_token_provider,
129
+ o_auth_on_token_update: o_auth_on_token_update,
130
+ o_auth_clock_skew: o_auth_clock_skew)
87
131
  end
88
132
  end
89
133
  end
@@ -82,14 +82,9 @@ module ShellDataReportingApIs
82
82
  ]
83
83
  end
84
84
 
85
- def initialize(colco_id = SKIP,
86
- colco_code = SKIP,
87
- payer_id = SKIP,
88
- payer_number = SKIP,
89
- payer_name = SKIP,
90
- account_id = SKIP,
91
- account_number = SKIP,
92
- account_name = SKIP)
85
+ def initialize(colco_id = SKIP, colco_code = SKIP, payer_id = SKIP,
86
+ payer_number = SKIP, payer_name = SKIP, account_id = SKIP,
87
+ account_number = SKIP, account_name = SKIP)
93
88
  @colco_id = colco_id unless colco_id == SKIP
94
89
  @colco_code = colco_code unless colco_code == SKIP
95
90
  @payer_id = payer_id unless payer_id == SKIP
@@ -13,12 +13,12 @@ module ShellDataReportingApIs
13
13
  # Optional if StatusList is passed, else mandatory.
14
14
  # Ignored if StatusList is passed.
15
15
  # Allowed values:
16
- # • ALL
17
- # • ACTIVE
18
- # • BLOCKED
19
- # • CANCELLED
20
- # • CREDITLOCK
21
- # • DELINQUENCYLOCK
16
+ # • ALL
17
+ # • ACTIVE
18
+ # • BLOCKED
19
+ # • CANCELLED
20
+ # • CREDITLOCK
21
+ # • DELINQUENCYLOCK
22
22
  # @return [String]
23
23
  attr_accessor :status
24
24
 
@@ -100,11 +100,11 @@ module ShellDataReportingApIs
100
100
  # Optional
101
101
  # Multiple statuses are allowed to be included in the search criteria.
102
102
  # Allowed values:
103
- # • ACTIVE
104
- # • BLOCKED
105
- # • CANCELLED
106
- # • CREDITLOCK
107
- # • DELINQUENCYLOCK
103
+ # • ACTIVE
104
+ # • BLOCKED
105
+ # • CANCELLED
106
+ # • CREDITLOCK
107
+ # • DELINQUENCYLOCK
108
108
  # @return [Array[String]]
109
109
  attr_accessor :status_list
110
110
 
@@ -167,21 +167,12 @@ module ShellDataReportingApIs
167
167
  ]
168
168
  end
169
169
 
170
- def initialize(status = SKIP,
171
- include_card_summary = true,
172
- payer_id = SKIP,
173
- payer_number = SKIP,
174
- page_size = SKIP,
175
- request_id = SKIP,
176
- col_co_code = SKIP,
177
- col_co_country_code = SKIP,
178
- current_page = SKIP,
179
- invoice_points_only = false,
180
- col_co_id = SKIP,
181
- return_tolls_customer_id = SKIP,
182
- accounts = SKIP,
183
- account_name = SKIP,
184
- status_list = SKIP)
170
+ def initialize(status = SKIP, include_card_summary = true, payer_id = SKIP,
171
+ payer_number = SKIP, page_size = SKIP, request_id = SKIP,
172
+ col_co_code = SKIP, col_co_country_code = SKIP,
173
+ current_page = SKIP, invoice_points_only = false,
174
+ col_co_id = SKIP, return_tolls_customer_id = SKIP,
175
+ accounts = SKIP, account_name = SKIP, status_list = SKIP)
185
176
  @status = status unless status == SKIP
186
177
  @include_card_summary = include_card_summary unless include_card_summary == SKIP
187
178
  @payer_id = payer_id unless payer_id == SKIP
@@ -64,12 +64,8 @@ module ShellDataReportingApIs
64
64
  []
65
65
  end
66
66
 
67
- def initialize(accounts = SKIP,
68
- current_page = SKIP,
69
- row_count = SKIP,
70
- total_pages = SKIP,
71
- error = SKIP,
72
- request_id = SKIP)
67
+ def initialize(accounts = SKIP, current_page = SKIP, row_count = SKIP,
68
+ total_pages = SKIP, error = SKIP, request_id = SKIP)
73
69
  @accounts = accounts unless accounts == SKIP
74
70
  @current_page = current_page unless current_page == SKIP
75
71
  @row_count = row_count unless row_count == SKIP
@@ -32,10 +32,10 @@ module ShellDataReportingApIs
32
32
  # Billing/Invoice frequency. The frequency in which the transactions will be
33
33
  # considered for invoicing in a bulling run
34
34
  # E.g.:
35
- # 1 Daily (all days)
36
- # 2 Daily (only working days)
37
- # 3 Weekly - Monday
38
- # 4 Weekly – Tuesday
35
+ # 1 Daily (all days)
36
+ # 2 Daily (only working days)
37
+ # 3 Weekly - Monday
38
+ # 4 Weekly – Tuesday
39
39
  # Etc.
40
40
  # @return [String]
41
41
  attr_accessor :billing_frequency_type
@@ -46,10 +46,10 @@ module ShellDataReportingApIs
46
46
  attr_accessor :billing_frequency_type_id
47
47
 
48
48
  # Frequency at which the billing process is triggered. E.g.:
49
- # 1 Daily (all days)
50
- # 2 Daily (only working days)
51
- # 3 Weekly - Monday
52
- # 4 Weekly – Tuesday
49
+ # 1 Daily (all days)
50
+ # 2 Daily (only working days)
51
+ # 3 Weekly - Monday
52
+ # 4 Weekly – Tuesday
53
53
  # Etc.
54
54
  # @return [String]
55
55
  attr_accessor :billing_run_frequency
@@ -435,60 +435,36 @@ module ShellDataReportingApIs
435
435
  ]
436
436
  end
437
437
 
438
- def initialize(account_full_name = SKIP,
439
- account_id = SKIP,
440
- account_number = SKIP,
441
- account_short_name = SKIP,
442
- best_of_indicator = SKIP,
443
- billing_frequency_type = SKIP,
438
+ def initialize(account_full_name = SKIP, account_id = SKIP,
439
+ account_number = SKIP, account_short_name = SKIP,
440
+ best_of_indicator = SKIP, billing_frequency_type = SKIP,
444
441
  billing_frequency_type_id = SKIP,
445
442
  billing_run_frequency = SKIP,
446
443
  billing_run_frequency_type_id = SKIP,
447
- col_co_country_code = SKIP,
448
- currency_code = SKIP,
449
- currency_symbol = SKIP,
450
- day1_run = SKIP,
451
- day2_run = SKIP,
452
- day3_run = SKIP,
453
- day4_run = SKIP,
454
- frequency_type = SKIP,
455
- gross_amount = SKIP,
456
- international_pos_language_code = SKIP,
444
+ col_co_country_code = SKIP, currency_code = SKIP,
445
+ currency_symbol = SKIP, day1_run = SKIP, day2_run = SKIP,
446
+ day3_run = SKIP, day4_run = SKIP, frequency_type = SKIP,
447
+ gross_amount = SKIP, international_pos_language_code = SKIP,
457
448
  international_pos_language_id = SKIP,
458
- invoice_account_id = SKIP,
459
- invoice_account_number = SKIP,
449
+ invoice_account_id = SKIP, invoice_account_number = SKIP,
460
450
  invoice_account_short_name = SKIP,
461
- invoice_distribution_methods = SKIP,
462
- is_international = SKIP,
463
- is_invoice_point = SKIP,
464
- last_modified_date = SKIP,
465
- local_currency_code = SKIP,
466
- local_currency_symbol = SKIP,
467
- local_pos_language_code = SKIP,
468
- local_pos_language_id = SKIP,
469
- net_amount = SKIP,
470
- outstanding_balance = SKIP,
471
- paid_amount = SKIP,
472
- status = SKIP,
473
- status_reason = SKIP,
474
- total_active_card_groups = SKIP,
475
- total_active_cards = SKIP,
476
- total_blocked_cards = SKIP,
477
- total_cancelled_cards = SKIP,
478
- total_cards = SKIP,
479
- total_expired_cards = SKIP,
480
- total_fraud_cards = SKIP,
481
- total_new_cards = SKIP,
451
+ invoice_distribution_methods = SKIP, is_international = SKIP,
452
+ is_invoice_point = SKIP, last_modified_date = SKIP,
453
+ local_currency_code = SKIP, local_currency_symbol = SKIP,
454
+ local_pos_language_code = SKIP, local_pos_language_id = SKIP,
455
+ net_amount = SKIP, outstanding_balance = SKIP,
456
+ paid_amount = SKIP, status = SKIP, status_reason = SKIP,
457
+ total_active_card_groups = SKIP, total_active_cards = SKIP,
458
+ total_blocked_cards = SKIP, total_cancelled_cards = SKIP,
459
+ total_cards = SKIP, total_expired_cards = SKIP,
460
+ total_fraud_cards = SKIP, total_new_cards = SKIP,
482
461
  total_renewal_pending_cards = SKIP,
483
462
  total_replaced_cards = SKIP,
484
463
  total_temporary_block_cards_by_customer = SKIP,
485
464
  total_temporary_block_cards_by_shell = SKIP,
486
- vat_amount = SKIP,
487
- is_partner_card = SKIP,
488
- tolls_customer_id = SKIP,
489
- tolls_colco_country_type_id = SKIP,
490
- contracts = SKIP,
491
- is_consortium_member = SKIP)
465
+ vat_amount = SKIP, is_partner_card = SKIP,
466
+ tolls_customer_id = SKIP, tolls_colco_country_type_id = SKIP,
467
+ contracts = SKIP, is_consortium_member = SKIP)
492
468
  @account_full_name = account_full_name unless account_full_name == SKIP
493
469
  @account_id = account_id unless account_id == SKIP
494
470
  @account_number = account_number unless account_number == SKIP
@@ -43,8 +43,7 @@ module ShellDataReportingApIs
43
43
  ]
44
44
  end
45
45
 
46
- def initialize(account_id = SKIP,
47
- account_number = SKIP)
46
+ def initialize(account_id = SKIP, account_number = SKIP)
48
47
  @account_id = account_id unless account_id == SKIP
49
48
  @account_number = account_number unless account_number == SKIP
50
49
  end
@@ -111,17 +111,10 @@ module ShellDataReportingApIs
111
111
  ]
112
112
  end
113
113
 
114
- def initialize(address_id = SKIP,
115
- address_line1 = SKIP,
116
- address_line2 = SKIP,
117
- address_line3 = SKIP,
118
- zip_code = SKIP,
119
- city = SKIP,
120
- region_id = SKIP,
121
- country_iso_code = SKIP,
122
- country = SKIP,
123
- telephone = SKIP,
124
- email_address = SKIP,
114
+ def initialize(address_id = SKIP, address_line1 = SKIP,
115
+ address_line2 = SKIP, address_line3 = SKIP, zip_code = SKIP,
116
+ city = SKIP, region_id = SKIP, country_iso_code = SKIP,
117
+ country = SKIP, telephone = SKIP, email_address = SKIP,
125
118
  fax = SKIP)
126
119
  @address_id = address_id unless address_id == SKIP
127
120
  @address_line1 = address_line1 unless address_line1 == SKIP