postfinancecheckout-ruby-sdk 3.0.2

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 (364) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +8 -0
  3. data/LICENSE +201 -0
  4. data/README.md +137 -0
  5. data/Rakefile +13 -0
  6. data/lib/.DS_Store +0 -0
  7. data/lib/postfinancecheckout-ruby-sdk.rb +392 -0
  8. data/lib/postfinancecheckout-ruby-sdk/api/account_service_api.rb +368 -0
  9. data/lib/postfinancecheckout-ruby-sdk/api/application_user_service_api.rb +368 -0
  10. data/lib/postfinancecheckout-ruby-sdk/api/bank_account_service_api.rb +213 -0
  11. data/lib/postfinancecheckout-ruby-sdk/api/bank_transaction_service_api.rb +213 -0
  12. data/lib/postfinancecheckout-ruby-sdk/api/charge_attempt_service_api.rb +213 -0
  13. data/lib/postfinancecheckout-ruby-sdk/api/charge_bank_transaction_service_api.rb +213 -0
  14. data/lib/postfinancecheckout-ruby-sdk/api/charge_flow_level_payment_link_service_api.rb +213 -0
  15. data/lib/postfinancecheckout-ruby-sdk/api/charge_flow_level_service_api.rb +276 -0
  16. data/lib/postfinancecheckout-ruby-sdk/api/charge_flow_service_api.rb +348 -0
  17. data/lib/postfinancecheckout-ruby-sdk/api/condition_type_service_api.rb +139 -0
  18. data/lib/postfinancecheckout-ruby-sdk/api/country_service_api.rb +81 -0
  19. data/lib/postfinancecheckout-ruby-sdk/api/country_state_service_api.rb +139 -0
  20. data/lib/postfinancecheckout-ruby-sdk/api/currency_bank_account_service_api.rb +213 -0
  21. data/lib/postfinancecheckout-ruby-sdk/api/currency_service_api.rb +81 -0
  22. data/lib/postfinancecheckout-ruby-sdk/api/customer_address_service_api.rb +460 -0
  23. data/lib/postfinancecheckout-ruby-sdk/api/customer_comment_service_api.rb +522 -0
  24. data/lib/postfinancecheckout-ruby-sdk/api/customer_service_api.rb +398 -0
  25. data/lib/postfinancecheckout-ruby-sdk/api/delivery_indication_service_api.rb +337 -0
  26. data/lib/postfinancecheckout-ruby-sdk/api/document_template_service_api.rb +213 -0
  27. data/lib/postfinancecheckout-ruby-sdk/api/document_template_type_service_api.rb +139 -0
  28. data/lib/postfinancecheckout-ruby-sdk/api/external_transfer_bank_transaction_service_api.rb +213 -0
  29. data/lib/postfinancecheckout-ruby-sdk/api/human_user_service_api.rb +425 -0
  30. data/lib/postfinancecheckout-ruby-sdk/api/internal_transfer_bank_transaction_service_api.rb +213 -0
  31. data/lib/postfinancecheckout-ruby-sdk/api/label_description_group_service_api.rb +139 -0
  32. data/lib/postfinancecheckout-ruby-sdk/api/label_description_service_api.rb +139 -0
  33. data/lib/postfinancecheckout-ruby-sdk/api/language_service_api.rb +81 -0
  34. data/lib/postfinancecheckout-ruby-sdk/api/legal_organization_form_service_api.rb +197 -0
  35. data/lib/postfinancecheckout-ruby-sdk/api/manual_task_service_api.rb +213 -0
  36. data/lib/postfinancecheckout-ruby-sdk/api/payment_connector_configuration_service_api.rb +213 -0
  37. data/lib/postfinancecheckout-ruby-sdk/api/payment_connector_service_api.rb +139 -0
  38. data/lib/postfinancecheckout-ruby-sdk/api/payment_link_service_api.rb +398 -0
  39. data/lib/postfinancecheckout-ruby-sdk/api/payment_method_brand_service_api.rb +139 -0
  40. data/lib/postfinancecheckout-ruby-sdk/api/payment_method_configuration_service_api.rb +213 -0
  41. data/lib/postfinancecheckout-ruby-sdk/api/payment_method_service_api.rb +139 -0
  42. data/lib/postfinancecheckout-ruby-sdk/api/payment_processor_configuration_service_api.rb +213 -0
  43. data/lib/postfinancecheckout-ruby-sdk/api/payment_processor_service_api.rb +139 -0
  44. data/lib/postfinancecheckout-ruby-sdk/api/payment_terminal_service_api.rb +213 -0
  45. data/lib/postfinancecheckout-ruby-sdk/api/payment_terminal_till_service_api.rb +170 -0
  46. data/lib/postfinancecheckout-ruby-sdk/api/permission_service_api.rb +139 -0
  47. data/lib/postfinancecheckout-ruby-sdk/api/refund_bank_transaction_service_api.rb +213 -0
  48. data/lib/postfinancecheckout-ruby-sdk/api/refund_comment_service_api.rb +464 -0
  49. data/lib/postfinancecheckout-ruby-sdk/api/refund_recovery_bank_transaction_service_api.rb +213 -0
  50. data/lib/postfinancecheckout-ruby-sdk/api/refund_service_api.rb +532 -0
  51. data/lib/postfinancecheckout-ruby-sdk/api/shopify_recurring_order_service_api.rb +274 -0
  52. data/lib/postfinancecheckout-ruby-sdk/api/shopify_subscriber_service_api.rb +275 -0
  53. data/lib/postfinancecheckout-ruby-sdk/api/shopify_subscription_product_service_api.rb +337 -0
  54. data/lib/postfinancecheckout-ruby-sdk/api/shopify_subscription_service_api.rb +466 -0
  55. data/lib/postfinancecheckout-ruby-sdk/api/shopify_subscription_suspension_service_api.rb +337 -0
  56. data/lib/postfinancecheckout-ruby-sdk/api/shopify_subscription_version_service_api.rb +213 -0
  57. data/lib/postfinancecheckout-ruby-sdk/api/shopify_transaction_service_api.rb +213 -0
  58. data/lib/postfinancecheckout-ruby-sdk/api/space_service_api.rb +368 -0
  59. data/lib/postfinancecheckout-ruby-sdk/api/static_value_service_api.rb +139 -0
  60. data/lib/postfinancecheckout-ruby-sdk/api/token_service_api.rb +650 -0
  61. data/lib/postfinancecheckout-ruby-sdk/api/token_version_service_api.rb +276 -0
  62. data/lib/postfinancecheckout-ruby-sdk/api/transaction_comment_service_api.rb +464 -0
  63. data/lib/postfinancecheckout-ruby-sdk/api/transaction_completion_service_api.rb +463 -0
  64. data/lib/postfinancecheckout-ruby-sdk/api/transaction_iframe_service_api.rb +91 -0
  65. data/lib/postfinancecheckout-ruby-sdk/api/transaction_invoice_comment_service_api.rb +464 -0
  66. data/lib/postfinancecheckout-ruby-sdk/api/transaction_invoice_service_api.rb +600 -0
  67. data/lib/postfinancecheckout-ruby-sdk/api/transaction_lightbox_service_api.rb +91 -0
  68. data/lib/postfinancecheckout-ruby-sdk/api/transaction_mobile_sdk_service_api.rb +86 -0
  69. data/lib/postfinancecheckout-ruby-sdk/api/transaction_payment_page_service_api.rb +91 -0
  70. data/lib/postfinancecheckout-ruby-sdk/api/transaction_service_api.rb +1210 -0
  71. data/lib/postfinancecheckout-ruby-sdk/api/transaction_terminal_service_api.rb +161 -0
  72. data/lib/postfinancecheckout-ruby-sdk/api/transaction_void_service_api.rb +339 -0
  73. data/lib/postfinancecheckout-ruby-sdk/api/user_account_role_service_api.rb +219 -0
  74. data/lib/postfinancecheckout-ruby-sdk/api/user_space_role_service_api.rb +216 -0
  75. data/lib/postfinancecheckout-ruby-sdk/api/webhook_listener_service_api.rb +398 -0
  76. data/lib/postfinancecheckout-ruby-sdk/api/webhook_url_service_api.rb +398 -0
  77. data/lib/postfinancecheckout-ruby-sdk/api_client.rb +405 -0
  78. data/lib/postfinancecheckout-ruby-sdk/api_error.rb +43 -0
  79. data/lib/postfinancecheckout-ruby-sdk/configuration.rb +140 -0
  80. data/lib/postfinancecheckout-ruby-sdk/models/abstract_account_update.rb +234 -0
  81. data/lib/postfinancecheckout-ruby-sdk/models/abstract_application_user_update.rb +225 -0
  82. data/lib/postfinancecheckout-ruby-sdk/models/abstract_customer_active.rb +312 -0
  83. data/lib/postfinancecheckout-ruby-sdk/models/abstract_customer_address_active.rb +200 -0
  84. data/lib/postfinancecheckout-ruby-sdk/models/abstract_customer_comment_active.rb +205 -0
  85. data/lib/postfinancecheckout-ruby-sdk/models/abstract_human_user_update.rb +320 -0
  86. data/lib/postfinancecheckout-ruby-sdk/models/abstract_payment_link_update.rb +309 -0
  87. data/lib/postfinancecheckout-ruby-sdk/models/abstract_refund_comment_active.rb +205 -0
  88. data/lib/postfinancecheckout-ruby-sdk/models/abstract_shopify_subscription_product_update.rb +320 -0
  89. data/lib/postfinancecheckout-ruby-sdk/models/abstract_space_update.rb +286 -0
  90. data/lib/postfinancecheckout-ruby-sdk/models/abstract_token_update.rb +270 -0
  91. data/lib/postfinancecheckout-ruby-sdk/models/abstract_transaction_comment_active.rb +205 -0
  92. data/lib/postfinancecheckout-ruby-sdk/models/abstract_transaction_invoice_comment_active.rb +205 -0
  93. data/lib/postfinancecheckout-ruby-sdk/models/abstract_transaction_pending.rb +486 -0
  94. data/lib/postfinancecheckout-ruby-sdk/models/abstract_webhook_listener_update.rb +237 -0
  95. data/lib/postfinancecheckout-ruby-sdk/models/abstract_webhook_url_update.rb +249 -0
  96. data/lib/postfinancecheckout-ruby-sdk/models/account.rb +375 -0
  97. data/lib/postfinancecheckout-ruby-sdk/models/account_create.rb +260 -0
  98. data/lib/postfinancecheckout-ruby-sdk/models/account_state.rb +39 -0
  99. data/lib/postfinancecheckout-ruby-sdk/models/account_type.rb +36 -0
  100. data/lib/postfinancecheckout-ruby-sdk/models/account_update.rb +265 -0
  101. data/lib/postfinancecheckout-ruby-sdk/models/address.rb +606 -0
  102. data/lib/postfinancecheckout-ruby-sdk/models/address_create.rb +606 -0
  103. data/lib/postfinancecheckout-ruby-sdk/models/application_user.rb +286 -0
  104. data/lib/postfinancecheckout-ruby-sdk/models/application_user_create.rb +241 -0
  105. data/lib/postfinancecheckout-ruby-sdk/models/application_user_create_with_mac_key.rb +296 -0
  106. data/lib/postfinancecheckout-ruby-sdk/models/application_user_update.rb +256 -0
  107. data/lib/postfinancecheckout-ruby-sdk/models/bank_account.rb +291 -0
  108. data/lib/postfinancecheckout-ruby-sdk/models/bank_account_environment.rb +35 -0
  109. data/lib/postfinancecheckout-ruby-sdk/models/bank_account_state.rb +37 -0
  110. data/lib/postfinancecheckout-ruby-sdk/models/bank_account_type.rb +227 -0
  111. data/lib/postfinancecheckout-ruby-sdk/models/bank_transaction.rb +387 -0
  112. data/lib/postfinancecheckout-ruby-sdk/models/bank_transaction_flow_direction.rb +35 -0
  113. data/lib/postfinancecheckout-ruby-sdk/models/bank_transaction_source.rb +215 -0
  114. data/lib/postfinancecheckout-ruby-sdk/models/bank_transaction_state.rb +35 -0
  115. data/lib/postfinancecheckout-ruby-sdk/models/bank_transaction_type.rb +215 -0
  116. data/lib/postfinancecheckout-ruby-sdk/models/charge.rb +331 -0
  117. data/lib/postfinancecheckout-ruby-sdk/models/charge_attempt.rb +468 -0
  118. data/lib/postfinancecheckout-ruby-sdk/models/charge_attempt_environment.rb +35 -0
  119. data/lib/postfinancecheckout-ruby-sdk/models/charge_attempt_state.rb +36 -0
  120. data/lib/postfinancecheckout-ruby-sdk/models/charge_bank_transaction.rb +291 -0
  121. data/lib/postfinancecheckout-ruby-sdk/models/charge_flow.rb +263 -0
  122. data/lib/postfinancecheckout-ruby-sdk/models/charge_flow_level.rb +311 -0
  123. data/lib/postfinancecheckout-ruby-sdk/models/charge_flow_level_configuration.rb +296 -0
  124. data/lib/postfinancecheckout-ruby-sdk/models/charge_flow_level_configuration_type.rb +227 -0
  125. data/lib/postfinancecheckout-ruby-sdk/models/charge_flow_level_payment_link.rb +231 -0
  126. data/lib/postfinancecheckout-ruby-sdk/models/charge_flow_level_state.rb +36 -0
  127. data/lib/postfinancecheckout-ruby-sdk/models/charge_state.rb +36 -0
  128. data/lib/postfinancecheckout-ruby-sdk/models/charge_type.rb +37 -0
  129. data/lib/postfinancecheckout-ruby-sdk/models/client_error.rb +231 -0
  130. data/lib/postfinancecheckout-ruby-sdk/models/client_error_type.rb +36 -0
  131. data/lib/postfinancecheckout-ruby-sdk/models/completion_line_item.rb +226 -0
  132. data/lib/postfinancecheckout-ruby-sdk/models/completion_line_item_create.rb +245 -0
  133. data/lib/postfinancecheckout-ruby-sdk/models/condition.rb +266 -0
  134. data/lib/postfinancecheckout-ruby-sdk/models/condition_type.rb +215 -0
  135. data/lib/postfinancecheckout-ruby-sdk/models/connector_invocation.rb +271 -0
  136. data/lib/postfinancecheckout-ruby-sdk/models/connector_invocation_stage.rb +37 -0
  137. data/lib/postfinancecheckout-ruby-sdk/models/creation_entity_state.rb +38 -0
  138. data/lib/postfinancecheckout-ruby-sdk/models/criteria_operator.rb +45 -0
  139. data/lib/postfinancecheckout-ruby-sdk/models/currency_bank_account.rb +241 -0
  140. data/lib/postfinancecheckout-ruby-sdk/models/customer.rb +353 -0
  141. data/lib/postfinancecheckout-ruby-sdk/models/customer_active.rb +343 -0
  142. data/lib/postfinancecheckout-ruby-sdk/models/customer_address.rb +261 -0
  143. data/lib/postfinancecheckout-ruby-sdk/models/customer_address_active.rb +231 -0
  144. data/lib/postfinancecheckout-ruby-sdk/models/customer_address_create.rb +216 -0
  145. data/lib/postfinancecheckout-ruby-sdk/models/customer_address_type.rb +36 -0
  146. data/lib/postfinancecheckout-ruby-sdk/models/customer_comment.rb +296 -0
  147. data/lib/postfinancecheckout-ruby-sdk/models/customer_comment_active.rb +236 -0
  148. data/lib/postfinancecheckout-ruby-sdk/models/customer_comment_create.rb +221 -0
  149. data/lib/postfinancecheckout-ruby-sdk/models/customer_create.rb +313 -0
  150. data/lib/postfinancecheckout-ruby-sdk/models/customer_postal_address.rb +606 -0
  151. data/lib/postfinancecheckout-ruby-sdk/models/customer_postal_address_create.rb +606 -0
  152. data/lib/postfinancecheckout-ruby-sdk/models/customers_presence.rb +36 -0
  153. data/lib/postfinancecheckout-ruby-sdk/models/data_collection_type.rb +35 -0
  154. data/lib/postfinancecheckout-ruby-sdk/models/database_translated_string.rb +215 -0
  155. data/lib/postfinancecheckout-ruby-sdk/models/database_translated_string_item.rb +226 -0
  156. data/lib/postfinancecheckout-ruby-sdk/models/delivery_indication.rb +321 -0
  157. data/lib/postfinancecheckout-ruby-sdk/models/delivery_indication_decision_reason.rb +215 -0
  158. data/lib/postfinancecheckout-ruby-sdk/models/delivery_indication_state.rb +37 -0
  159. data/lib/postfinancecheckout-ruby-sdk/models/document_template.rb +306 -0
  160. data/lib/postfinancecheckout-ruby-sdk/models/document_template_type.rb +235 -0
  161. data/lib/postfinancecheckout-ruby-sdk/models/document_template_type_group.rb +203 -0
  162. data/lib/postfinancecheckout-ruby-sdk/models/entity_export_request.rb +208 -0
  163. data/lib/postfinancecheckout-ruby-sdk/models/entity_query.rb +233 -0
  164. data/lib/postfinancecheckout-ruby-sdk/models/entity_query_filter.rb +238 -0
  165. data/lib/postfinancecheckout-ruby-sdk/models/entity_query_filter_type.rb +36 -0
  166. data/lib/postfinancecheckout-ruby-sdk/models/entity_query_order_by.rb +211 -0
  167. data/lib/postfinancecheckout-ruby-sdk/models/entity_query_order_by_type.rb +35 -0
  168. data/lib/postfinancecheckout-ruby-sdk/models/environment.rb +35 -0
  169. data/lib/postfinancecheckout-ruby-sdk/models/external_transfer_bank_transaction.rb +251 -0
  170. data/lib/postfinancecheckout-ruby-sdk/models/failure_category.rb +38 -0
  171. data/lib/postfinancecheckout-ruby-sdk/models/failure_reason.rb +237 -0
  172. data/lib/postfinancecheckout-ruby-sdk/models/feature.rb +277 -0
  173. data/lib/postfinancecheckout-ruby-sdk/models/feature_category.rb +225 -0
  174. data/lib/postfinancecheckout-ruby-sdk/models/gender.rb +35 -0
  175. data/lib/postfinancecheckout-ruby-sdk/models/human_user.rb +361 -0
  176. data/lib/postfinancecheckout-ruby-sdk/models/human_user_create.rb +331 -0
  177. data/lib/postfinancecheckout-ruby-sdk/models/human_user_update.rb +351 -0
  178. data/lib/postfinancecheckout-ruby-sdk/models/internal_transfer_bank_transaction.rb +231 -0
  179. data/lib/postfinancecheckout-ruby-sdk/models/label.rb +231 -0
  180. data/lib/postfinancecheckout-ruby-sdk/models/label_descriptor.rb +267 -0
  181. data/lib/postfinancecheckout-ruby-sdk/models/label_descriptor_category.rb +35 -0
  182. data/lib/postfinancecheckout-ruby-sdk/models/label_descriptor_group.rb +225 -0
  183. data/lib/postfinancecheckout-ruby-sdk/models/label_descriptor_type.rb +215 -0
  184. data/lib/postfinancecheckout-ruby-sdk/models/legal_organization_form.rb +235 -0
  185. data/lib/postfinancecheckout-ruby-sdk/models/line_item.rb +449 -0
  186. data/lib/postfinancecheckout-ruby-sdk/models/line_item_attribute.rb +231 -0
  187. data/lib/postfinancecheckout-ruby-sdk/models/line_item_attribute_create.rb +249 -0
  188. data/lib/postfinancecheckout-ruby-sdk/models/line_item_create.rb +372 -0
  189. data/lib/postfinancecheckout-ruby-sdk/models/line_item_reduction.rb +226 -0
  190. data/lib/postfinancecheckout-ruby-sdk/models/line_item_reduction_create.rb +245 -0
  191. data/lib/postfinancecheckout-ruby-sdk/models/line_item_type.rb +37 -0
  192. data/lib/postfinancecheckout-ruby-sdk/models/localized_string.rb +211 -0
  193. data/lib/postfinancecheckout-ruby-sdk/models/manual_task.rb +283 -0
  194. data/lib/postfinancecheckout-ruby-sdk/models/manual_task_action.rb +223 -0
  195. data/lib/postfinancecheckout-ruby-sdk/models/manual_task_action_style.rb +36 -0
  196. data/lib/postfinancecheckout-ruby-sdk/models/manual_task_state.rb +36 -0
  197. data/lib/postfinancecheckout-ruby-sdk/models/manual_task_type.rb +227 -0
  198. data/lib/postfinancecheckout-ruby-sdk/models/one_click_payment_mode.rb +36 -0
  199. data/lib/postfinancecheckout-ruby-sdk/models/payment_adjustment.rb +231 -0
  200. data/lib/postfinancecheckout-ruby-sdk/models/payment_adjustment_type.rb +215 -0
  201. data/lib/postfinancecheckout-ruby-sdk/models/payment_connector.rb +321 -0
  202. data/lib/postfinancecheckout-ruby-sdk/models/payment_connector_configuration.rb +342 -0
  203. data/lib/postfinancecheckout-ruby-sdk/models/payment_connector_feature.rb +211 -0
  204. data/lib/postfinancecheckout-ruby-sdk/models/payment_contract.rb +331 -0
  205. data/lib/postfinancecheckout-ruby-sdk/models/payment_contract_state.rb +38 -0
  206. data/lib/postfinancecheckout-ruby-sdk/models/payment_contract_type.rb +225 -0
  207. data/lib/postfinancecheckout-ruby-sdk/models/payment_information_hash.rb +211 -0
  208. data/lib/postfinancecheckout-ruby-sdk/models/payment_information_hash_type.rb +203 -0
  209. data/lib/postfinancecheckout-ruby-sdk/models/payment_link.rb +390 -0
  210. data/lib/postfinancecheckout-ruby-sdk/models/payment_link_active.rb +350 -0
  211. data/lib/postfinancecheckout-ruby-sdk/models/payment_link_address_handling_mode.rb +36 -0
  212. data/lib/postfinancecheckout-ruby-sdk/models/payment_link_create.rb +345 -0
  213. data/lib/postfinancecheckout-ruby-sdk/models/payment_link_protection_mode.rb +35 -0
  214. data/lib/postfinancecheckout-ruby-sdk/models/payment_link_update.rb +340 -0
  215. data/lib/postfinancecheckout-ruby-sdk/models/payment_method.rb +261 -0
  216. data/lib/postfinancecheckout-ruby-sdk/models/payment_method_brand.rb +245 -0
  217. data/lib/postfinancecheckout-ruby-sdk/models/payment_method_configuration.rb +370 -0
  218. data/lib/postfinancecheckout-ruby-sdk/models/payment_primary_risk_taker.rb +36 -0
  219. data/lib/postfinancecheckout-ruby-sdk/models/payment_processor.rb +271 -0
  220. data/lib/postfinancecheckout-ruby-sdk/models/payment_processor_configuration.rb +276 -0
  221. data/lib/postfinancecheckout-ruby-sdk/models/payment_terminal.rb +306 -0
  222. data/lib/postfinancecheckout-ruby-sdk/models/payment_terminal_address.rb +396 -0
  223. data/lib/postfinancecheckout-ruby-sdk/models/payment_terminal_configuration.rb +266 -0
  224. data/lib/postfinancecheckout-ruby-sdk/models/payment_terminal_configuration_state.rb +37 -0
  225. data/lib/postfinancecheckout-ruby-sdk/models/payment_terminal_configuration_version.rb +323 -0
  226. data/lib/postfinancecheckout-ruby-sdk/models/payment_terminal_configuration_version_state.rb +38 -0
  227. data/lib/postfinancecheckout-ruby-sdk/models/payment_terminal_location.rb +266 -0
  228. data/lib/postfinancecheckout-ruby-sdk/models/payment_terminal_location_state.rb +37 -0
  229. data/lib/postfinancecheckout-ruby-sdk/models/payment_terminal_location_version.rb +281 -0
  230. data/lib/postfinancecheckout-ruby-sdk/models/payment_terminal_location_version_state.rb +38 -0
  231. data/lib/postfinancecheckout-ruby-sdk/models/payment_terminal_receipt_type.rb +215 -0
  232. data/lib/postfinancecheckout-ruby-sdk/models/payment_terminal_state.rb +38 -0
  233. data/lib/postfinancecheckout-ruby-sdk/models/payment_terminal_type.rb +215 -0
  234. data/lib/postfinancecheckout-ruby-sdk/models/permission.rb +299 -0
  235. data/lib/postfinancecheckout-ruby-sdk/models/refund.rb +567 -0
  236. data/lib/postfinancecheckout-ruby-sdk/models/refund_bank_transaction.rb +281 -0
  237. data/lib/postfinancecheckout-ruby-sdk/models/refund_comment.rb +296 -0
  238. data/lib/postfinancecheckout-ruby-sdk/models/refund_comment_active.rb +236 -0
  239. data/lib/postfinancecheckout-ruby-sdk/models/refund_comment_create.rb +221 -0
  240. data/lib/postfinancecheckout-ruby-sdk/models/refund_create.rb +306 -0
  241. data/lib/postfinancecheckout-ruby-sdk/models/refund_recovery_bank_transaction.rb +293 -0
  242. data/lib/postfinancecheckout-ruby-sdk/models/refund_state.rb +39 -0
  243. data/lib/postfinancecheckout-ruby-sdk/models/refund_type.rb +37 -0
  244. data/lib/postfinancecheckout-ruby-sdk/models/rendered_document.rb +223 -0
  245. data/lib/postfinancecheckout-ruby-sdk/models/rendered_terminal_receipt.rb +223 -0
  246. data/lib/postfinancecheckout-ruby-sdk/models/resource_path.rb +275 -0
  247. data/lib/postfinancecheckout-ruby-sdk/models/resource_state.rb +36 -0
  248. data/lib/postfinancecheckout-ruby-sdk/models/rest_address_format.rb +227 -0
  249. data/lib/postfinancecheckout-ruby-sdk/models/rest_address_format_field.rb +43 -0
  250. data/lib/postfinancecheckout-ruby-sdk/models/rest_country.rb +243 -0
  251. data/lib/postfinancecheckout-ruby-sdk/models/rest_country_state.rb +221 -0
  252. data/lib/postfinancecheckout-ruby-sdk/models/rest_currency.rb +211 -0
  253. data/lib/postfinancecheckout-ruby-sdk/models/rest_language.rb +241 -0
  254. data/lib/postfinancecheckout-ruby-sdk/models/role.rb +263 -0
  255. data/lib/postfinancecheckout-ruby-sdk/models/role_state.rb +37 -0
  256. data/lib/postfinancecheckout-ruby-sdk/models/sales_channel.rb +245 -0
  257. data/lib/postfinancecheckout-ruby-sdk/models/scope.rb +350 -0
  258. data/lib/postfinancecheckout-ruby-sdk/models/server_error.rb +211 -0
  259. data/lib/postfinancecheckout-ruby-sdk/models/shopify_additional_line_item_data.rb +35 -0
  260. data/lib/postfinancecheckout-ruby-sdk/models/shopify_integration.rb +470 -0
  261. data/lib/postfinancecheckout-ruby-sdk/models/shopify_integration_payment_app_version.rb +34 -0
  262. data/lib/postfinancecheckout-ruby-sdk/models/shopify_integration_subscription_app_version.rb +36 -0
  263. data/lib/postfinancecheckout-ruby-sdk/models/shopify_recurring_order.rb +351 -0
  264. data/lib/postfinancecheckout-ruby-sdk/models/shopify_recurring_order_state.rb +39 -0
  265. data/lib/postfinancecheckout-ruby-sdk/models/shopify_recurring_order_update_request.rb +201 -0
  266. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscriber.rb +281 -0
  267. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscriber_active.rb +241 -0
  268. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscriber_creation.rb +216 -0
  269. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscriber_state.rb +36 -0
  270. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription.rb +375 -0
  271. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_address.rb +546 -0
  272. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_address_create.rb +546 -0
  273. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_billing_interval_unit.rb +39 -0
  274. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_creation_request.rb +363 -0
  275. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_model_billing_configuration.rb +271 -0
  276. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_model_item.rb +233 -0
  277. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_model_tax_line.rb +201 -0
  278. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_product.rb +471 -0
  279. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_product_create.rb +366 -0
  280. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_product_pricing_option.rb +38 -0
  281. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_product_state.rb +39 -0
  282. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_product_update.rb +351 -0
  283. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_state.rb +39 -0
  284. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_suspension.rb +311 -0
  285. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_suspension_create.rb +226 -0
  286. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_suspension_initiator.rb +35 -0
  287. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_suspension_state.rb +35 -0
  288. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_suspension_type.rb +35 -0
  289. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_update_addresses_request.rb +211 -0
  290. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_update_request.rb +233 -0
  291. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_version.rb +463 -0
  292. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_version_item.rb +233 -0
  293. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_version_item_price_strategy.rb +35 -0
  294. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_version_state.rb +36 -0
  295. data/lib/postfinancecheckout-ruby-sdk/models/shopify_subscription_weekday.rb +40 -0
  296. data/lib/postfinancecheckout-ruby-sdk/models/shopify_tax_line.rb +231 -0
  297. data/lib/postfinancecheckout-ruby-sdk/models/shopify_transaction.rb +301 -0
  298. data/lib/postfinancecheckout-ruby-sdk/models/shopify_transaction_state.rb +38 -0
  299. data/lib/postfinancecheckout-ruby-sdk/models/space.rb +407 -0
  300. data/lib/postfinancecheckout-ruby-sdk/models/space_address.rb +416 -0
  301. data/lib/postfinancecheckout-ruby-sdk/models/space_address_create.rb +416 -0
  302. data/lib/postfinancecheckout-ruby-sdk/models/space_create.rb +302 -0
  303. data/lib/postfinancecheckout-ruby-sdk/models/space_update.rb +317 -0
  304. data/lib/postfinancecheckout-ruby-sdk/models/space_view.rb +275 -0
  305. data/lib/postfinancecheckout-ruby-sdk/models/static_value.rb +227 -0
  306. data/lib/postfinancecheckout-ruby-sdk/models/tax.rb +225 -0
  307. data/lib/postfinancecheckout-ruby-sdk/models/tax_create.rb +239 -0
  308. data/lib/postfinancecheckout-ruby-sdk/models/tenant_database.rb +226 -0
  309. data/lib/postfinancecheckout-ruby-sdk/models/terminal_receipt_fetch_request.rb +221 -0
  310. data/lib/postfinancecheckout-ruby-sdk/models/terminal_receipt_format.rb +35 -0
  311. data/lib/postfinancecheckout-ruby-sdk/models/token.rb +341 -0
  312. data/lib/postfinancecheckout-ruby-sdk/models/token_create.rb +296 -0
  313. data/lib/postfinancecheckout-ruby-sdk/models/token_update.rb +301 -0
  314. data/lib/postfinancecheckout-ruby-sdk/models/token_version.rb +445 -0
  315. data/lib/postfinancecheckout-ruby-sdk/models/token_version_state.rb +36 -0
  316. data/lib/postfinancecheckout-ruby-sdk/models/token_version_type.rb +225 -0
  317. data/lib/postfinancecheckout-ruby-sdk/models/tokenization_mode.rb +37 -0
  318. data/lib/postfinancecheckout-ruby-sdk/models/transaction.rb +1011 -0
  319. data/lib/postfinancecheckout-ruby-sdk/models/transaction_aware_entity.rb +211 -0
  320. data/lib/postfinancecheckout-ruby-sdk/models/transaction_comment.rb +296 -0
  321. data/lib/postfinancecheckout-ruby-sdk/models/transaction_comment_active.rb +236 -0
  322. data/lib/postfinancecheckout-ruby-sdk/models/transaction_comment_create.rb +221 -0
  323. data/lib/postfinancecheckout-ruby-sdk/models/transaction_completion.rb +528 -0
  324. data/lib/postfinancecheckout-ruby-sdk/models/transaction_completion_behavior.rb +36 -0
  325. data/lib/postfinancecheckout-ruby-sdk/models/transaction_completion_mode.rb +36 -0
  326. data/lib/postfinancecheckout-ruby-sdk/models/transaction_completion_request.rb +291 -0
  327. data/lib/postfinancecheckout-ruby-sdk/models/transaction_completion_state.rb +38 -0
  328. data/lib/postfinancecheckout-ruby-sdk/models/transaction_create.rb +596 -0
  329. data/lib/postfinancecheckout-ruby-sdk/models/transaction_environment_selection_strategy.rb +36 -0
  330. data/lib/postfinancecheckout-ruby-sdk/models/transaction_group.rb +276 -0
  331. data/lib/postfinancecheckout-ruby-sdk/models/transaction_group_state.rb +36 -0
  332. data/lib/postfinancecheckout-ruby-sdk/models/transaction_invoice.rb +452 -0
  333. data/lib/postfinancecheckout-ruby-sdk/models/transaction_invoice_comment.rb +296 -0
  334. data/lib/postfinancecheckout-ruby-sdk/models/transaction_invoice_comment_active.rb +236 -0
  335. data/lib/postfinancecheckout-ruby-sdk/models/transaction_invoice_comment_create.rb +221 -0
  336. data/lib/postfinancecheckout-ruby-sdk/models/transaction_invoice_replacement.rb +296 -0
  337. data/lib/postfinancecheckout-ruby-sdk/models/transaction_invoice_state.rb +40 -0
  338. data/lib/postfinancecheckout-ruby-sdk/models/transaction_line_item_update_request.rb +208 -0
  339. data/lib/postfinancecheckout-ruby-sdk/models/transaction_line_item_version.rb +313 -0
  340. data/lib/postfinancecheckout-ruby-sdk/models/transaction_pending.rb +517 -0
  341. data/lib/postfinancecheckout-ruby-sdk/models/transaction_state.rb +43 -0
  342. data/lib/postfinancecheckout-ruby-sdk/models/transaction_user_interface_type.rb +38 -0
  343. data/lib/postfinancecheckout-ruby-sdk/models/transaction_void.rb +373 -0
  344. data/lib/postfinancecheckout-ruby-sdk/models/transaction_void_mode.rb +35 -0
  345. data/lib/postfinancecheckout-ruby-sdk/models/transaction_void_state.rb +37 -0
  346. data/lib/postfinancecheckout-ruby-sdk/models/two_factor_authentication_type.rb +235 -0
  347. data/lib/postfinancecheckout-ruby-sdk/models/user.rb +241 -0
  348. data/lib/postfinancecheckout-ruby-sdk/models/user_account_role.rb +241 -0
  349. data/lib/postfinancecheckout-ruby-sdk/models/user_space_role.rb +231 -0
  350. data/lib/postfinancecheckout-ruby-sdk/models/user_type.rb +38 -0
  351. data/lib/postfinancecheckout-ruby-sdk/models/webhook_identity.rb +256 -0
  352. data/lib/postfinancecheckout-ruby-sdk/models/webhook_listener.rb +308 -0
  353. data/lib/postfinancecheckout-ruby-sdk/models/webhook_listener_create.rb +278 -0
  354. data/lib/postfinancecheckout-ruby-sdk/models/webhook_listener_entity.rb +213 -0
  355. data/lib/postfinancecheckout-ruby-sdk/models/webhook_listener_update.rb +268 -0
  356. data/lib/postfinancecheckout-ruby-sdk/models/webhook_url.rb +300 -0
  357. data/lib/postfinancecheckout-ruby-sdk/models/webhook_url_create.rb +250 -0
  358. data/lib/postfinancecheckout-ruby-sdk/models/webhook_url_update.rb +280 -0
  359. data/lib/postfinancecheckout-ruby-sdk/version.rb +20 -0
  360. data/postfinancecheckout-ruby-sdk.gemspec +44 -0
  361. data/test/condition_type_service_test.rb +22 -0
  362. data/test/transaction_create_service_test.rb +89 -0
  363. data/test/transaction_payment_page_service_test.rb +91 -0
  364. metadata +469 -0
@@ -0,0 +1,43 @@
1
+ =begin
2
+ The PostFinance Checkout API allows an easy interaction with the PostFinance Checkout web service.
3
+
4
+ Licensed under the Apache License, Version 2.0 (the "License");
5
+ you may not use this file except in compliance with the License.
6
+ You may obtain a copy of the License at
7
+
8
+ http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software
11
+ distributed under the License is distributed on an "AS IS" BASIS,
12
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ See the License for the specific language governing permissions and
14
+ limitations under the License.
15
+
16
+ =end
17
+
18
+ require 'date'
19
+
20
+ module PostFinanceCheckout
21
+ class RestAddressFormatField
22
+
23
+ GIVEN_NAME = 'GIVEN_NAME'.freeze
24
+ FAMILY_NAME = 'FAMILY_NAME'.freeze
25
+ ORGANIZATION_NAME = 'ORGANIZATION_NAME'.freeze
26
+ STREET = 'STREET'.freeze
27
+ DEPENDENT_LOCALITY = 'DEPENDENT_LOCALITY'.freeze
28
+ CITY = 'CITY'.freeze
29
+ POSTAL_STATE = 'POSTAL_STATE'.freeze
30
+ POST_CODE = 'POST_CODE'.freeze
31
+ SORTING_CODE = 'SORTING_CODE'.freeze
32
+ COUNTRY = 'COUNTRY'.freeze
33
+
34
+ # Builds the enum from string
35
+ # @param [String] The enum value in the form of the string
36
+ # @return [String] The enum value
37
+ def build_from_hash(value)
38
+ constantValues = RestAddressFormatField.constants.select { |c| RestAddressFormatField::const_get(c) == value }
39
+ raise "Invalid ENUM value #{value} for class #RestAddressFormatField" if constantValues.empty?
40
+ value
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,243 @@
1
+ =begin
2
+ The PostFinance Checkout API allows an easy interaction with the PostFinance Checkout web service.
3
+
4
+ Licensed under the Apache License, Version 2.0 (the "License");
5
+ you may not use this file except in compliance with the License.
6
+ You may obtain a copy of the License at
7
+
8
+ http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software
11
+ distributed under the License is distributed on an "AS IS" BASIS,
12
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ See the License for the specific language governing permissions and
14
+ limitations under the License.
15
+
16
+ =end
17
+
18
+ require 'date'
19
+
20
+ module PostFinanceCheckout
21
+ #
22
+ class RestCountry
23
+ # The ISO code 2 letter identifies the country by two chars as defined in ISO 3166-1 (e.g. US, DE, CH).
24
+ attr_accessor :iso_code2_letter
25
+
26
+ # The ISO code 3 letter identifies the country by three chars as defined in ISO 3166-1 (e.g. CHE, USA, GBR).
27
+ attr_accessor :iso_code3_letter
28
+
29
+ # The address format of the country indicates how an address has to look like for the country.
30
+ attr_accessor :address_format
31
+
32
+ # The name labels the country by a name in English.
33
+ attr_accessor :name
34
+
35
+ # The numeric code identifies the country by a three digit number as defined in ISO 3166-1 (e.g. 840, 826, 756).
36
+ attr_accessor :numeric_code
37
+
38
+ # The state codes field is a list of all states associated with this country. The list contains the identifiers of the states. The identifiers corresponds to the ISO 3166-2 subdivision identifier.
39
+ attr_accessor :state_codes
40
+
41
+ # Attribute mapping from ruby-style variable name to JSON key.
42
+ def self.attribute_map
43
+ {
44
+ :'iso_code2_letter' => :'ISOCode2Letter',
45
+ :'iso_code3_letter' => :'ISOCode3Letter',
46
+ :'address_format' => :'addressFormat',
47
+ :'name' => :'name',
48
+ :'numeric_code' => :'numericCode',
49
+ :'state_codes' => :'stateCodes'
50
+ }
51
+ end
52
+
53
+ # Attribute type mapping.
54
+ def self.swagger_types
55
+ {
56
+ :'iso_code2_letter' => :'String',
57
+ :'iso_code3_letter' => :'String',
58
+ :'address_format' => :'RestAddressFormat',
59
+ :'name' => :'String',
60
+ :'numeric_code' => :'String',
61
+ :'state_codes' => :'Array<String>'
62
+ }
63
+ end
64
+
65
+ # Initializes the object
66
+ # @param [Hash] attributes Model attributes in the form of hash
67
+ def initialize(attributes = {})
68
+ return unless attributes.is_a?(Hash)
69
+
70
+ # convert string to symbol for hash key
71
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
72
+
73
+ if attributes.has_key?(:'ISOCode2Letter')
74
+ self.iso_code2_letter = attributes[:'ISOCode2Letter']
75
+ end
76
+
77
+ if attributes.has_key?(:'ISOCode3Letter')
78
+ self.iso_code3_letter = attributes[:'ISOCode3Letter']
79
+ end
80
+
81
+ if attributes.has_key?(:'addressFormat')
82
+ self.address_format = attributes[:'addressFormat']
83
+ end
84
+
85
+ if attributes.has_key?(:'name')
86
+ self.name = attributes[:'name']
87
+ end
88
+
89
+ if attributes.has_key?(:'numericCode')
90
+ self.numeric_code = attributes[:'numericCode']
91
+ end
92
+
93
+ if attributes.has_key?(:'stateCodes')
94
+ if (value = attributes[:'stateCodes']).is_a?(Array)
95
+ self.state_codes = value
96
+ end
97
+ end
98
+ end
99
+
100
+ # Show invalid properties with the reasons. Usually used together with valid?
101
+ # @return Array for valid properties with the reasons
102
+ def list_invalid_properties
103
+ invalid_properties = Array.new
104
+ invalid_properties
105
+ end
106
+
107
+ # Check to see if the all the properties in the model are valid
108
+ # @return true if the model is valid
109
+ def valid?
110
+ true
111
+ end
112
+
113
+ # Checks equality by comparing each attribute.
114
+ # @param [Object] Object to be compared
115
+ def ==(o)
116
+ return true if self.equal?(o)
117
+ self.class == o.class &&
118
+ iso_code2_letter == o.iso_code2_letter &&
119
+ iso_code3_letter == o.iso_code3_letter &&
120
+ address_format == o.address_format &&
121
+ name == o.name &&
122
+ numeric_code == o.numeric_code &&
123
+ state_codes == o.state_codes
124
+ end
125
+
126
+ # @see the `==` method
127
+ # @param [Object] Object to be compared
128
+ def eql?(o)
129
+ self == o
130
+ end
131
+
132
+ # Calculates hash code according to all attributes.
133
+ # @return [Fixnum] Hash code
134
+ def hash
135
+ [iso_code2_letter, iso_code3_letter, address_format, name, numeric_code, state_codes].hash
136
+ end
137
+
138
+ # Builds the object from hash
139
+ # @param [Hash] attributes Model attributes in the form of hash
140
+ # @return [Object] Returns the model itself
141
+ def build_from_hash(attributes)
142
+ return nil unless attributes.is_a?(Hash)
143
+ self.class.swagger_types.each_pair do |key, type|
144
+ if type =~ /\AArray<(.*)>/i
145
+ # check to ensure the input is an array given that the attribute
146
+ # is documented as an array but the input is not
147
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
148
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
149
+ end
150
+ elsif !attributes[self.class.attribute_map[key]].nil?
151
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
152
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
153
+ end
154
+
155
+ self
156
+ end
157
+
158
+ # Deserializes the data based on type
159
+ # @param string type Data type
160
+ # @param string value Value to be deserialized
161
+ # @return [Object] Deserialized data
162
+ def _deserialize(type, value)
163
+ case type.to_sym
164
+ when :DateTime
165
+ DateTime.parse(value)
166
+ when :Date
167
+ Date.parse(value)
168
+ when :String
169
+ value.to_s
170
+ when :Integer
171
+ value.to_i
172
+ when :Float
173
+ value.to_f
174
+ when :BOOLEAN
175
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
176
+ true
177
+ else
178
+ false
179
+ end
180
+ when :Object
181
+ # generic object (usually a Hash), return directly
182
+ value
183
+ when /\AArray<(?<inner_type>.+)>\z/
184
+ inner_type = Regexp.last_match[:inner_type]
185
+ value.map { |v| _deserialize(inner_type, v) }
186
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
187
+ k_type = Regexp.last_match[:k_type]
188
+ v_type = Regexp.last_match[:v_type]
189
+ {}.tap do |hash|
190
+ value.each do |k, v|
191
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
192
+ end
193
+ end
194
+ else # model
195
+ temp_model = PostFinanceCheckout.const_get(type).new
196
+ temp_model.build_from_hash(value)
197
+ end
198
+ end
199
+
200
+ # Returns the string representation of the object
201
+ # @return [String] String presentation of the object
202
+ def to_s
203
+ to_hash.to_s
204
+ end
205
+
206
+ # to_body is an alias to to_hash (backward compatibility)
207
+ # @return [Hash] Returns the object in the form of hash
208
+ def to_body
209
+ to_hash
210
+ end
211
+
212
+ # Returns the object in the form of hash
213
+ # @return [Hash] Returns the object in the form of hash
214
+ def to_hash
215
+ hash = {}
216
+ self.class.attribute_map.each_pair do |attr, param|
217
+ value = self.send(attr)
218
+ next if value.nil?
219
+ hash[param] = _to_hash(value)
220
+ end
221
+ hash
222
+ end
223
+
224
+ # Outputs non-array value in the form of hash
225
+ # For object, use to_hash. Otherwise, just return the value
226
+ # @param [Object] value Any valid value
227
+ # @return [Hash] Returns the value in the form of hash
228
+ def _to_hash(value)
229
+ if value.is_a?(Array)
230
+ value.compact.map{ |v| _to_hash(v) }
231
+ elsif value.is_a?(Hash)
232
+ {}.tap do |hash|
233
+ value.each { |k, v| hash[k] = _to_hash(v) }
234
+ end
235
+ elsif value.respond_to? :to_hash
236
+ value.to_hash
237
+ else
238
+ value
239
+ end
240
+ end
241
+
242
+ end
243
+ end
@@ -0,0 +1,221 @@
1
+ =begin
2
+ The PostFinance Checkout API allows an easy interaction with the PostFinance Checkout web service.
3
+
4
+ Licensed under the Apache License, Version 2.0 (the "License");
5
+ you may not use this file except in compliance with the License.
6
+ You may obtain a copy of the License at
7
+
8
+ http://www.apache.org/licenses/LICENSE-2.0
9
+
10
+ Unless required by applicable law or agreed to in writing, software
11
+ distributed under the License is distributed on an "AS IS" BASIS,
12
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+ See the License for the specific language governing permissions and
14
+ limitations under the License.
15
+
16
+ =end
17
+
18
+ require 'date'
19
+
20
+ module PostFinanceCheckout
21
+ #
22
+ class RestCountryState
23
+ # The code of the state identifies the state. The code is typically used within addresses. Some countries may not provide a code. For those the field is null.
24
+ attr_accessor :code
25
+
26
+ # The country code in ISO two letter format (e.g. UK, DE, CH, US).
27
+ attr_accessor :country_code
28
+
29
+ # The ID of the state corresponds to the subdivision identifier defined in ISO 3166-2. The format consists of the country code followed by a dash and a subdivision identifier.
30
+ attr_accessor :id
31
+
32
+ # The name is a human readable label of the state in the language of the region.
33
+ attr_accessor :name
34
+
35
+ # Attribute mapping from ruby-style variable name to JSON key.
36
+ def self.attribute_map
37
+ {
38
+ :'code' => :'code',
39
+ :'country_code' => :'countryCode',
40
+ :'id' => :'id',
41
+ :'name' => :'name'
42
+ }
43
+ end
44
+
45
+ # Attribute type mapping.
46
+ def self.swagger_types
47
+ {
48
+ :'code' => :'String',
49
+ :'country_code' => :'String',
50
+ :'id' => :'String',
51
+ :'name' => :'String'
52
+ }
53
+ end
54
+
55
+ # Initializes the object
56
+ # @param [Hash] attributes Model attributes in the form of hash
57
+ def initialize(attributes = {})
58
+ return unless attributes.is_a?(Hash)
59
+
60
+ # convert string to symbol for hash key
61
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
62
+
63
+ if attributes.has_key?(:'code')
64
+ self.code = attributes[:'code']
65
+ end
66
+
67
+ if attributes.has_key?(:'countryCode')
68
+ self.country_code = attributes[:'countryCode']
69
+ end
70
+
71
+ if attributes.has_key?(:'id')
72
+ self.id = attributes[:'id']
73
+ end
74
+
75
+ if attributes.has_key?(:'name')
76
+ self.name = attributes[:'name']
77
+ end
78
+ end
79
+
80
+ # Show invalid properties with the reasons. Usually used together with valid?
81
+ # @return Array for valid properties with the reasons
82
+ def list_invalid_properties
83
+ invalid_properties = Array.new
84
+ invalid_properties
85
+ end
86
+
87
+ # Check to see if the all the properties in the model are valid
88
+ # @return true if the model is valid
89
+ def valid?
90
+ true
91
+ end
92
+
93
+ # Checks equality by comparing each attribute.
94
+ # @param [Object] Object to be compared
95
+ def ==(o)
96
+ return true if self.equal?(o)
97
+ self.class == o.class &&
98
+ code == o.code &&
99
+ country_code == o.country_code &&
100
+ id == o.id &&
101
+ name == o.name
102
+ end
103
+
104
+ # @see the `==` method
105
+ # @param [Object] Object to be compared
106
+ def eql?(o)
107
+ self == o
108
+ end
109
+
110
+ # Calculates hash code according to all attributes.
111
+ # @return [Fixnum] Hash code
112
+ def hash
113
+ [code, country_code, id, name].hash
114
+ end
115
+
116
+ # Builds the object from hash
117
+ # @param [Hash] attributes Model attributes in the form of hash
118
+ # @return [Object] Returns the model itself
119
+ def build_from_hash(attributes)
120
+ return nil unless attributes.is_a?(Hash)
121
+ self.class.swagger_types.each_pair do |key, type|
122
+ if type =~ /\AArray<(.*)>/i
123
+ # check to ensure the input is an array given that the attribute
124
+ # is documented as an array but the input is not
125
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
126
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| _deserialize($1, v) } )
127
+ end
128
+ elsif !attributes[self.class.attribute_map[key]].nil?
129
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
130
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
131
+ end
132
+
133
+ self
134
+ end
135
+
136
+ # Deserializes the data based on type
137
+ # @param string type Data type
138
+ # @param string value Value to be deserialized
139
+ # @return [Object] Deserialized data
140
+ def _deserialize(type, value)
141
+ case type.to_sym
142
+ when :DateTime
143
+ DateTime.parse(value)
144
+ when :Date
145
+ Date.parse(value)
146
+ when :String
147
+ value.to_s
148
+ when :Integer
149
+ value.to_i
150
+ when :Float
151
+ value.to_f
152
+ when :BOOLEAN
153
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
154
+ true
155
+ else
156
+ false
157
+ end
158
+ when :Object
159
+ # generic object (usually a Hash), return directly
160
+ value
161
+ when /\AArray<(?<inner_type>.+)>\z/
162
+ inner_type = Regexp.last_match[:inner_type]
163
+ value.map { |v| _deserialize(inner_type, v) }
164
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
165
+ k_type = Regexp.last_match[:k_type]
166
+ v_type = Regexp.last_match[:v_type]
167
+ {}.tap do |hash|
168
+ value.each do |k, v|
169
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
170
+ end
171
+ end
172
+ else # model
173
+ temp_model = PostFinanceCheckout.const_get(type).new
174
+ temp_model.build_from_hash(value)
175
+ end
176
+ end
177
+
178
+ # Returns the string representation of the object
179
+ # @return [String] String presentation of the object
180
+ def to_s
181
+ to_hash.to_s
182
+ end
183
+
184
+ # to_body is an alias to to_hash (backward compatibility)
185
+ # @return [Hash] Returns the object in the form of hash
186
+ def to_body
187
+ to_hash
188
+ end
189
+
190
+ # Returns the object in the form of hash
191
+ # @return [Hash] Returns the object in the form of hash
192
+ def to_hash
193
+ hash = {}
194
+ self.class.attribute_map.each_pair do |attr, param|
195
+ value = self.send(attr)
196
+ next if value.nil?
197
+ hash[param] = _to_hash(value)
198
+ end
199
+ hash
200
+ end
201
+
202
+ # Outputs non-array value in the form of hash
203
+ # For object, use to_hash. Otherwise, just return the value
204
+ # @param [Object] value Any valid value
205
+ # @return [Hash] Returns the value in the form of hash
206
+ def _to_hash(value)
207
+ if value.is_a?(Array)
208
+ value.compact.map{ |v| _to_hash(v) }
209
+ elsif value.is_a?(Hash)
210
+ {}.tap do |hash|
211
+ value.each { |k, v| hash[k] = _to_hash(v) }
212
+ end
213
+ elsif value.respond_to? :to_hash
214
+ value.to_hash
215
+ else
216
+ value
217
+ end
218
+ end
219
+
220
+ end
221
+ end