pcp-server-ruby-sdk 1.12.0 → 1.13.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 (168) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +1 -1
  4. data/api-definition.yaml +323 -41
  5. data/lib/PCP-server-Ruby-SDK/endpoints/payment_intent_api_client.rb +37 -0
  6. data/lib/PCP-server-Ruby-SDK/models/address.rb +9 -237
  7. data/lib/PCP-server-Ruby-SDK/models/address_personal.rb +10 -246
  8. data/lib/PCP-server-Ruby-SDK/models/amount_of_money.rb +4 -195
  9. data/lib/PCP-server-Ruby-SDK/models/api_error.rb +27 -232
  10. data/lib/PCP-server-Ruby-SDK/models/apple_payment_data_token_header_information.rb +6 -194
  11. data/lib/PCP-server-Ruby-SDK/models/apple_payment_data_token_information.rb +8 -229
  12. data/lib/PCP-server-Ruby-SDK/models/bank_account_information.rb +11 -207
  13. data/lib/PCP-server-Ruby-SDK/models/bank_payout_method_specific_input.rb +4 -187
  14. data/lib/PCP-server-Ruby-SDK/models/cancel_item.rb +6 -195
  15. data/lib/PCP-server-Ruby-SDK/models/cancel_payment_request.rb +6 -222
  16. data/lib/PCP-server-Ruby-SDK/models/cancel_payment_response.rb +4 -190
  17. data/lib/PCP-server-Ruby-SDK/models/cancel_request.rb +6 -224
  18. data/lib/PCP-server-Ruby-SDK/models/cancel_response.rb +4 -190
  19. data/lib/PCP-server-Ruby-SDK/models/capture_output.rb +9 -214
  20. data/lib/PCP-server-Ruby-SDK/models/capture_payment_request.rb +14 -253
  21. data/lib/PCP-server-Ruby-SDK/models/capture_payment_response.rb +7 -239
  22. data/lib/PCP-server-Ruby-SDK/models/card_fraud_results.rb +29 -184
  23. data/lib/PCP-server-Ruby-SDK/models/card_info.rb +3 -182
  24. data/lib/PCP-server-Ruby-SDK/models/card_payment_details.rb +8 -210
  25. data/lib/PCP-server-Ruby-SDK/models/card_payment_method_specific_input.rb +32 -307
  26. data/lib/PCP-server-Ruby-SDK/models/card_payment_method_specific_output.rb +6 -210
  27. data/lib/PCP-server-Ruby-SDK/models/card_recurrence_details.rb +12 -186
  28. data/lib/PCP-server-Ruby-SDK/models/cart_item_data.rb +10 -0
  29. data/lib/PCP-server-Ruby-SDK/models/cart_item_input.rb +5 -198
  30. data/lib/PCP-server-Ruby-SDK/models/cart_item_invoice_data.rb +5 -184
  31. data/lib/PCP-server-Ruby-SDK/models/cart_item_order_status.rb +4 -213
  32. data/lib/PCP-server-Ruby-SDK/models/cart_item_patch.rb +5 -200
  33. data/lib/PCP-server-Ruby-SDK/models/cart_item_result.rb +5 -200
  34. data/lib/PCP-server-Ruby-SDK/models/cart_item_supplier_references.rb +6 -195
  35. data/lib/PCP-server-Ruby-SDK/models/checkout_references.rb +4 -192
  36. data/lib/PCP-server-Ruby-SDK/models/checkout_response.rb +15 -319
  37. data/lib/PCP-server-Ruby-SDK/models/checkouts_response.rb +4 -193
  38. data/lib/PCP-server-Ruby-SDK/models/company_information.rb +3 -182
  39. data/lib/PCP-server-Ruby-SDK/models/complete_financing_payment_method_specific_input.rb +12 -202
  40. data/lib/PCP-server-Ruby-SDK/models/complete_order_request.rb +3 -181
  41. data/lib/PCP-server-Ruby-SDK/models/complete_payment_method_specific_input.rb +4 -191
  42. data/lib/PCP-server-Ruby-SDK/models/complete_payment_product840_specific_input.rb +7 -226
  43. data/lib/PCP-server-Ruby-SDK/models/complete_payment_request.rb +6 -209
  44. data/lib/PCP-server-Ruby-SDK/models/complete_payment_response.rb +5 -199
  45. data/lib/PCP-server-Ruby-SDK/models/complete_redirect_payment_method_specific_input.rb +4 -192
  46. data/lib/PCP-server-Ruby-SDK/models/contact_details.rb +4 -191
  47. data/lib/PCP-server-Ruby-SDK/models/create_checkout_request.rb +13 -240
  48. data/lib/PCP-server-Ruby-SDK/models/create_checkout_response.rb +16 -307
  49. data/lib/PCP-server-Ruby-SDK/models/create_commerce_case_response.rb +7 -219
  50. data/lib/PCP-server-Ruby-SDK/models/create_payment_intent.rb +11 -0
  51. data/lib/PCP-server-Ruby-SDK/models/create_payment_intent_request.rb +13 -0
  52. data/lib/PCP-server-Ruby-SDK/models/create_payment_intent_response.rb +10 -0
  53. data/lib/PCP-server-Ruby-SDK/models/create_payment_response.rb +7 -218
  54. data/lib/PCP-server-Ruby-SDK/models/customer.rb +28 -260
  55. data/lib/PCP-server-Ruby-SDK/models/customer_account.rb +10 -44
  56. data/lib/PCP-server-Ruby-SDK/models/customer_device.rb +8 -209
  57. data/lib/PCP-server-Ruby-SDK/models/deliver_item.rb +6 -195
  58. data/lib/PCP-server-Ruby-SDK/models/deliver_request.rb +10 -246
  59. data/lib/PCP-server-Ruby-SDK/models/deliver_response.rb +4 -191
  60. data/lib/PCP-server-Ruby-SDK/models/delivery_information.rb +3 -185
  61. data/lib/PCP-server-Ruby-SDK/models/error_response.rb +4 -193
  62. data/lib/PCP-server-Ruby-SDK/models/financing_payment_method_specific_input.rb +15 -203
  63. data/lib/PCP-server-Ruby-SDK/models/financing_payment_method_specific_output.rb +10 -196
  64. data/lib/PCP-server-Ruby-SDK/models/fund_distribution.rb +12 -263
  65. data/lib/PCP-server-Ruby-SDK/models/fund_split.rb +5 -205
  66. data/lib/PCP-server-Ruby-SDK/models/fund_split_request.rb +3 -147
  67. data/lib/PCP-server-Ruby-SDK/models/fund_split_response.rb +10 -174
  68. data/lib/PCP-server-Ruby-SDK/models/installment_option.rb +13 -273
  69. data/lib/PCP-server-Ruby-SDK/models/link_information.rb +4 -196
  70. data/lib/PCP-server-Ruby-SDK/models/merchant_action.rb +16 -194
  71. data/lib/PCP-server-Ruby-SDK/models/mobile_payment_method_specific_input.rb +13 -246
  72. data/lib/PCP-server-Ruby-SDK/models/mobile_payment_method_specific_output.rb +7 -219
  73. data/lib/PCP-server-Ruby-SDK/models/mobile_payment_three_dsecure.rb +3 -179
  74. data/lib/PCP-server-Ruby-SDK/models/model_base.rb +147 -0
  75. data/lib/PCP-server-Ruby-SDK/models/order.rb +7 -221
  76. data/lib/PCP-server-Ruby-SDK/models/order_item.rb +6 -197
  77. data/lib/PCP-server-Ruby-SDK/models/order_line_details_input.rb +29 -305
  78. data/lib/PCP-server-Ruby-SDK/models/order_line_details_patch.rb +5 -326
  79. data/lib/PCP-server-Ruby-SDK/models/order_line_details_result.rb +5 -326
  80. data/lib/PCP-server-Ruby-SDK/models/order_request.rb +7 -244
  81. data/lib/PCP-server-Ruby-SDK/models/order_response.rb +4 -192
  82. data/lib/PCP-server-Ruby-SDK/models/patch_checkout_request.rb +8 -228
  83. data/lib/PCP-server-Ruby-SDK/models/patch_commerce_case_request.rb +3 -183
  84. data/lib/PCP-server-Ruby-SDK/models/pause_payment_request.rb +2 -165
  85. data/lib/PCP-server-Ruby-SDK/models/pause_payment_response.rb +3 -186
  86. data/lib/PCP-server-Ruby-SDK/models/payee.rb +6 -204
  87. data/lib/PCP-server-Ruby-SDK/models/payment_creation_output.rb +3 -183
  88. data/lib/PCP-server-Ruby-SDK/models/payment_event.rb +19 -274
  89. data/lib/PCP-server-Ruby-SDK/models/payment_execution.rb +29 -335
  90. data/lib/PCP-server-Ruby-SDK/models/payment_execution_request.rb +4 -191
  91. data/lib/PCP-server-Ruby-SDK/models/payment_execution_specific_input.rb +6 -212
  92. data/lib/PCP-server-Ruby-SDK/models/payment_information_refund_request.rb +7 -205
  93. data/lib/PCP-server-Ruby-SDK/models/payment_information_refund_response.rb +5 -196
  94. data/lib/PCP-server-Ruby-SDK/models/payment_information_request.rb +10 -249
  95. data/lib/PCP-server-Ruby-SDK/models/payment_information_response.rb +30 -314
  96. data/lib/PCP-server-Ruby-SDK/models/payment_instructions.rb +8 -214
  97. data/lib/PCP-server-Ruby-SDK/models/payment_intent_output.rb +13 -0
  98. data/lib/PCP-server-Ruby-SDK/models/payment_intent_response.rb +13 -0
  99. data/lib/PCP-server-Ruby-SDK/models/payment_intent_response_data.rb +12 -0
  100. data/lib/PCP-server-Ruby-SDK/models/payment_method_specific_input.rb +9 -261
  101. data/lib/PCP-server-Ruby-SDK/models/payment_method_specific_input_for_intent.rb +9 -0
  102. data/lib/PCP-server-Ruby-SDK/models/payment_output.rb +11 -255
  103. data/lib/PCP-server-Ruby-SDK/models/payment_product302_specific_input.rb +11 -225
  104. data/lib/PCP-server-Ruby-SDK/models/payment_product3391_specific_input.rb +6 -197
  105. data/lib/PCP-server-Ruby-SDK/models/payment_product3391_specific_output.rb +3 -185
  106. data/lib/PCP-server-Ruby-SDK/models/payment_product3392_specific_input.rb +3 -185
  107. data/lib/PCP-server-Ruby-SDK/models/payment_product5002_specific_input.rb +7 -203
  108. data/lib/PCP-server-Ruby-SDK/models/payment_product771_specific_output.rb +3 -183
  109. data/lib/PCP-server-Ruby-SDK/models/payment_product840_customer_account.rb +6 -210
  110. data/lib/PCP-server-Ruby-SDK/models/payment_product840_specific_output.rb +5 -209
  111. data/lib/PCP-server-Ruby-SDK/models/payment_product840_specific_output_data.rb +11 -0
  112. data/lib/PCP-server-Ruby-SDK/models/payment_product840_specific_output_for_intent.rb +13 -0
  113. data/lib/PCP-server-Ruby-SDK/models/payment_references.rb +6 -184
  114. data/lib/PCP-server-Ruby-SDK/models/payment_references_for_refund.rb +12 -197
  115. data/lib/PCP-server-Ruby-SDK/models/payment_response.rb +6 -234
  116. data/lib/PCP-server-Ruby-SDK/models/payment_status_output.rb +6 -234
  117. data/lib/PCP-server-Ruby-SDK/models/payout_output.rb +5 -205
  118. data/lib/PCP-server-Ruby-SDK/models/payout_response.rb +6 -215
  119. data/lib/PCP-server-Ruby-SDK/models/personal_information.rb +11 -227
  120. data/lib/PCP-server-Ruby-SDK/models/personal_name.rb +5 -201
  121. data/lib/PCP-server-Ruby-SDK/models/positive_amount_of_money.rb +4 -196
  122. data/lib/PCP-server-Ruby-SDK/models/processing_mandate_information.rb +9 -254
  123. data/lib/PCP-server-Ruby-SDK/models/redirect_data.rb +3 -183
  124. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_method_specific_input.rb +14 -249
  125. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_method_specific_input_for_intent.rb +12 -0
  126. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_method_specific_output.rb +6 -211
  127. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_method_specific_output_for_create_intent.rb +12 -0
  128. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_method_specific_output_for_intent.rb +10 -0
  129. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_product840_specific_input.rb +6 -205
  130. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_product840_specific_input_data.rb +10 -0
  131. data/lib/PCP-server-Ruby-SDK/models/redirect_payment_product900_specific_input.rb +12 -177
  132. data/lib/PCP-server-Ruby-SDK/models/redirection_data.rb +11 -186
  133. data/lib/PCP-server-Ruby-SDK/models/references.rb +47 -205
  134. data/lib/PCP-server-Ruby-SDK/models/refresh_payment_request.rb +3 -186
  135. data/lib/PCP-server-Ruby-SDK/models/refund_error_response.rb +4 -193
  136. data/lib/PCP-server-Ruby-SDK/models/refund_output.rb +8 -211
  137. data/lib/PCP-server-Ruby-SDK/models/refund_payment_response.rb +7 -242
  138. data/lib/PCP-server-Ruby-SDK/models/refund_request.rb +6 -210
  139. data/lib/PCP-server-Ruby-SDK/models/return_information.rb +4 -194
  140. data/lib/PCP-server-Ruby-SDK/models/return_item.rb +6 -196
  141. data/lib/PCP-server-Ruby-SDK/models/return_request.rb +6 -234
  142. data/lib/PCP-server-Ruby-SDK/models/return_response.rb +4 -191
  143. data/lib/PCP-server-Ruby-SDK/models/sepa_direct_debit_payment_method_specific_input.rb +4 -193
  144. data/lib/PCP-server-Ruby-SDK/models/sepa_direct_debit_payment_method_specific_output.rb +4 -193
  145. data/lib/PCP-server-Ruby-SDK/models/sepa_direct_debit_payment_product771_specific_input.rb +4 -192
  146. data/lib/PCP-server-Ruby-SDK/models/sepa_transfer_payment_product_772_specific_input.rb +3 -186
  147. data/lib/PCP-server-Ruby-SDK/models/shipping.rb +3 -183
  148. data/lib/PCP-server-Ruby-SDK/models/shipping_address.rb +14 -0
  149. data/lib/PCP-server-Ruby-SDK/models/shopping_cart_data.rb +9 -0
  150. data/lib/PCP-server-Ruby-SDK/models/shopping_cart_input.rb +3 -185
  151. data/lib/PCP-server-Ruby-SDK/models/shopping_cart_patch.rb +3 -185
  152. data/lib/PCP-server-Ruby-SDK/models/shopping_cart_result.rb +3 -185
  153. data/lib/PCP-server-Ruby-SDK/models/status_output.rb +21 -264
  154. data/lib/PCP-server-Ruby-SDK/models/three_d_secure_results.rb +6 -226
  155. data/lib/PCP-server-Ruby-SDK/version.rb +1 -1
  156. data/lib/PCP-server-Ruby-SDK.rb +18 -0
  157. data/package-lock.json +2 -2
  158. data/package.json +1 -1
  159. data/scripts/convert_models_to_model_base.rb +128 -0
  160. data/spec/endpoints/payment_intent_api_client_spec.rb +43 -0
  161. data/spec/models/api_definition_conformance_spec.rb +88 -0
  162. data/spec/models/model_base_spec.rb +87 -0
  163. data/spec/models/payment_intent_models_spec.rb +25 -0
  164. data/spec/models/required_field_validation_spec.rb +5 -5
  165. metadata +35 -11
  166. data/lib/PCP-server-Ruby-SDK/models/action_type.rb +0 -34
  167. data/lib/PCP-server-Ruby-SDK/models/avs_result.rb +0 -52
  168. data/lib/PCP-server-Ruby-SDK/models/business_relation.rb +0 -30
@@ -1,190 +1,10 @@
1
+ require_relative 'model_base'
1
2
 
2
- require 'date'
3
- require 'time'
4
-
5
- # Object containing all data needed to redirect the customer.
6
3
  module PCPServerSDK
7
4
  module Models
8
- class RedirectData
5
+ class RedirectData < ModelBase
9
6
  # The URL that the customer should be redirected to. Be sure to redirect using the GET method
10
- attr_accessor :redirect_url
11
-
12
- # Attribute mapping from ruby-style variable name to JSON key.
13
- def self.attribute_map
14
- {
15
- :'redirect_url' => :'redirectURL'
16
- }
17
- end
18
-
19
- # Returns all the JSON keys this model knows about
20
- def self.acceptable_attributes
21
- attribute_map.values
22
- end
23
-
24
- # Attribute type mapping.
25
- def self.openapi_types
26
- {
27
- :'redirect_url' => :'String'
28
- }
29
- end
30
-
31
- # List of attributes with nullable: true
32
- def self.openapi_nullable
33
- Set.new([
34
- ])
35
- end
36
-
37
- # Initializes the object
38
- # @param [Hash] attributes Model attributes in the form of hash
39
- def initialize(attributes = {})
40
- if (!attributes.is_a?(Hash))
41
- fail ArgumentError, "The input argument (attributes) must be a hash in `RedirectData` initialize method"
42
- end
43
-
44
- # check to see if the attribute exists and convert string to symbol for hash key
45
- attributes = attributes.each_with_object({}) { |(k, v), h|
46
- if (!self.class.attribute_map.key?(k.to_sym))
47
- fail ArgumentError, "`#{k}` is not a valid attribute in `RedirectData`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
48
- end
49
- h[k.to_sym] = v
50
- }
51
-
52
- if attributes.key?(:'redirect_url')
53
- self.redirect_url = attributes[:'redirect_url']
54
- end
55
- end
56
-
57
- # Checks equality by comparing each attribute.
58
- # @param [Object] Object to be compared
59
- def ==(o)
60
- return true if self.equal?(o)
61
- self.class == o.class &&
62
- redirect_url == o.redirect_url
63
- end
64
-
65
- # @see the `==` method
66
- # @param [Object] Object to be compared
67
- def eql?(o)
68
- self == o
69
- end
70
-
71
- # Calculates hash code according to all attributes.
72
- # @return [Integer] Hash code
73
- def hash
74
- [redirect_url].hash
75
- end
76
-
77
- # Builds the object from hash
78
- # @param [Hash] attributes Model attributes in the form of hash
79
- # @return [Object] Returns the model itself
80
- def self.build_from_hash(attributes)
81
- return nil unless attributes.is_a?(Hash)
82
- attributes = attributes.transform_keys(&:to_sym)
83
- transformed_hash = {}
84
- openapi_types.each_pair do |key, type|
85
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
86
- transformed_hash["#{key}"] = nil
87
- elsif type =~ /\AArray<(.*)>/i
88
- # check to ensure the input is an array given that the attribute
89
- # is documented as an array but the input is not
90
- if attributes[attribute_map[key]].is_a?(Array)
91
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
92
- end
93
- elsif !attributes[attribute_map[key]].nil?
94
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
95
- end
96
- end
97
- new(transformed_hash)
98
- end
99
-
100
- # Deserializes the data based on type
101
- # @param string type Data type
102
- # @param string value Value to be deserialized
103
- # @return [Object] Deserialized data
104
- def self._deserialize(type, value)
105
- case type.to_sym
106
- when :Time
107
- Time.parse(value)
108
- when :Date
109
- Date.parse(value)
110
- when :String
111
- value.to_s
112
- when :Integer
113
- value.to_i
114
- when :Float
115
- value.to_f
116
- when :Boolean
117
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
118
- true
119
- else
120
- false
121
- end
122
- when :Object
123
- # generic object (usually a Hash), return directly
124
- value
125
- when /\AArray<(?<inner_type>.+)>\z/
126
- inner_type = Regexp.last_match[:inner_type]
127
- value.map { |v| _deserialize(inner_type, v) }
128
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
129
- k_type = Regexp.last_match[:k_type]
130
- v_type = Regexp.last_match[:v_type]
131
- {}.tap do |hash|
132
- value.each do |k, v|
133
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
134
- end
135
- end
136
- else # model
137
- # models (e.g. Pet) or oneOf
138
- klass = PCPServerSDK::Models.const_get(type)
139
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
140
- end
141
- end
142
-
143
- # Returns the string representation of the object
144
- # @return [String] String presentation of the object
145
- def to_s
146
- to_hash.to_s
147
- end
148
-
149
- # to_body is an alias to to_hash (backward compatibility)
150
- # @return [Hash] Returns the object in the form of hash
151
- def to_body
152
- to_hash
153
- end
154
-
155
- # Returns the object in the form of hash
156
- # @return [Hash] Returns the object in the form of hash
157
- def to_hash
158
- hash = {}
159
- self.class.attribute_map.each_pair do |attr, param|
160
- value = self.send(attr)
161
- if value.nil?
162
- is_nullable = self.class.openapi_nullable.include?(attr)
163
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
164
- end
165
-
166
- hash[param] = _to_hash(value)
167
- end
168
- hash
169
- end
170
-
171
- # Outputs non-array value in the form of hash
172
- # For object, use to_hash. Otherwise, just return the value
173
- # @param [Object] value Any valid value
174
- # @return [Hash] Returns the value in the form of hash
175
- def _to_hash(value)
176
- if value.is_a?(Array)
177
- value.compact.map { |v| _to_hash(v) }
178
- elsif value.is_a?(Hash)
179
- {}.tap do |hash|
180
- value.each { |k, v| hash[k] = _to_hash(v) }
181
- end
182
- elsif value.respond_to? :to_hash
183
- value.to_hash
184
- else
185
- value
186
- end
187
- end
7
+ attribute :redirect_url, :redirectURL, :String
188
8
  end
189
9
  end
190
10
  end
@@ -1,257 +1,22 @@
1
+ require_relative 'model_base'
1
2
 
2
- require 'date'
3
- require 'time'
4
-
5
- # Object containing the specific input details for payments that involve redirects to 3rd parties to complete, like iDeal and PayPal
6
3
  module PCPServerSDK
7
4
  module Models
8
- class RedirectPaymentMethodSpecificInput
9
- # * true = the payment requires approval before the funds will be captured using the Approve payment or Capture payment API * false = the payment does not require approval, and the funds will be captured automatically If the parameter is not provided in the request, the default value will be true
10
- attr_accessor :requires_approval
11
-
5
+ class RedirectPaymentMethodSpecificInput < ModelBase
6
+ attribute :requires_approval, :requiresApproval, :Boolean
12
7
  # ID of the token to use to create the payment.
13
- attr_accessor :payment_processing_token
14
-
8
+ attribute :payment_processing_token, :paymentProcessingToken, :String
15
9
  # Token to identify the card in the reporting.
16
- attr_accessor :reporting_token
17
-
18
- # Indicates if this transaction should be tokenized * true - Tokenize the transaction. * false - Do not tokenize the transaction, unless it would be tokenized by other means such as auto- tokenization of recurring payments. example: false
19
- attr_accessor :tokenize
20
-
21
- # Payment product identifier - please check product documentation for a full overview of possible values.
22
- attr_accessor :payment_product_id
23
-
24
- attr_accessor :payment_product840_specific_input
25
-
26
- attr_accessor :payment_product900_specific_input
27
-
28
- attr_accessor :redirection_data
29
-
30
- # Attribute mapping from ruby-style variable name to JSON key.
31
- def self.attribute_map
32
- {
33
- :'requires_approval' => :'requiresApproval',
34
- :'payment_processing_token' => :'paymentProcessingToken',
35
- :'reporting_token' => :'reportingToken',
36
- :'tokenize' => :'tokenize',
37
- :'payment_product_id' => :'paymentProductId',
38
- :'payment_product840_specific_input' => :'paymentProduct840SpecificInput',
39
- :'payment_product900_specific_input' => :'paymentProduct900SpecificInput',
40
- :'redirection_data' => :'redirectionData'
41
- }
42
- end
43
-
44
- # Returns all the JSON keys this model knows about
45
- def self.acceptable_attributes
46
- attribute_map.values
47
- end
48
-
49
- # Attribute type mapping.
50
- def self.openapi_types
51
- {
52
- :'requires_approval' => :'Boolean',
53
- :'payment_processing_token' => :'String',
54
- :'reporting_token' => :'String',
55
- :'tokenize' => :'Boolean',
56
- :'payment_product_id' => :'Integer',
57
- :'payment_product840_specific_input' => :'RedirectPaymentProduct840SpecificInput',
58
- :'payment_product900_specific_input' => :'RedirectPaymentProduct900SpecificInput',
59
- :'redirection_data' => :'RedirectionData'
60
- }
61
- end
62
-
63
- # List of attributes with nullable: true
64
- def self.openapi_nullable
65
- Set.new([
66
- ])
67
- end
68
-
69
- # Initializes the object
70
- # @param [Hash] attributes Model attributes in the form of hash
71
- def initialize(attributes = {})
72
- if (!attributes.is_a?(Hash))
73
- fail ArgumentError, "The input argument (attributes) must be a hash in `RedirectPaymentMethodSpecificInput` initialize method"
74
- end
75
-
76
- # check to see if the attribute exists and convert string to symbol for hash key
77
- attributes = attributes.each_with_object({}) { |(k, v), h|
78
- if (!self.class.attribute_map.key?(k.to_sym))
79
- fail ArgumentError, "`#{k}` is not a valid attribute in `RedirectPaymentMethodSpecificInput`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
80
- end
81
- h[k.to_sym] = v
82
- }
83
-
84
- if attributes.key?(:'requires_approval')
85
- self.requires_approval = attributes[:'requires_approval']
86
- end
87
-
88
- if attributes.key?(:'payment_processing_token')
89
- self.payment_processing_token = attributes[:'payment_processing_token']
90
- end
91
-
92
- if attributes.key?(:'reporting_token')
93
- self.reporting_token = attributes[:'reporting_token']
94
- end
95
-
96
- if attributes.key?(:'tokenize')
97
- self.tokenize = attributes[:'tokenize']
98
- end
99
-
100
- if attributes.key?(:'payment_product_id')
101
- self.payment_product_id = attributes[:'payment_product_id']
102
- end
103
-
104
- if attributes.key?(:'payment_product840_specific_input')
105
- self.payment_product840_specific_input = attributes[:'payment_product840_specific_input']
106
- end
107
-
108
- if attributes.key?(:'payment_product900_specific_input')
109
- self.payment_product900_specific_input = attributes[:'payment_product900_specific_input']
110
- end
111
-
112
- if attributes.key?(:'redirection_data')
113
- self.redirection_data = attributes[:'redirection_data']
114
- end
115
- end
116
-
117
- # Checks equality by comparing each attribute.
118
- # @param [Object] Object to be compared
119
- def ==(o)
120
- return true if self.equal?(o)
121
- self.class == o.class &&
122
- requires_approval == o.requires_approval &&
123
- payment_processing_token == o.payment_processing_token &&
124
- reporting_token == o.reporting_token &&
125
- tokenize == o.tokenize &&
126
- payment_product_id == o.payment_product_id &&
127
- payment_product840_specific_input == o.payment_product840_specific_input &&
128
- payment_product900_specific_input == o.payment_product900_specific_input &&
129
- redirection_data == o.redirection_data
130
- end
131
-
132
- # @see the `==` method
133
- # @param [Object] Object to be compared
134
- def eql?(o)
135
- self == o
136
- end
137
-
138
- # Calculates hash code according to all attributes.
139
- # @return [Integer] Hash code
140
- def hash
141
- [requires_approval, payment_processing_token, reporting_token, tokenize, payment_product_id, payment_product840_specific_input, payment_product900_specific_input, redirection_data].hash
142
- end
143
-
144
- # Builds the object from hash
145
- # @param [Hash] attributes Model attributes in the form of hash
146
- # @return [Object] Returns the model itself
147
- def self.build_from_hash(attributes)
148
- return nil unless attributes.is_a?(Hash)
149
- attributes = attributes.transform_keys(&:to_sym)
150
- transformed_hash = {}
151
- openapi_types.each_pair do |key, type|
152
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
153
- transformed_hash["#{key}"] = nil
154
- elsif type =~ /\AArray<(.*)>/i
155
- # check to ensure the input is an array given that the attribute
156
- # is documented as an array but the input is not
157
- if attributes[attribute_map[key]].is_a?(Array)
158
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
159
- end
160
- elsif !attributes[attribute_map[key]].nil?
161
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
162
- end
163
- end
164
- new(transformed_hash)
165
- end
166
-
167
- # Deserializes the data based on type
168
- # @param string type Data type
169
- # @param string value Value to be deserialized
170
- # @return [Object] Deserialized data
171
- def self._deserialize(type, value)
172
- case type.to_sym
173
- when :Time
174
- Time.parse(value)
175
- when :Date
176
- Date.parse(value)
177
- when :String
178
- value.to_s
179
- when :Integer
180
- value.to_i
181
- when :Float
182
- value.to_f
183
- when :Boolean
184
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
185
- true
186
- else
187
- false
188
- end
189
- when :Object
190
- # generic object (usually a Hash), return directly
191
- value
192
- when /\AArray<(?<inner_type>.+)>\z/
193
- inner_type = Regexp.last_match[:inner_type]
194
- value.map { |v| _deserialize(inner_type, v) }
195
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
196
- k_type = Regexp.last_match[:k_type]
197
- v_type = Regexp.last_match[:v_type]
198
- {}.tap do |hash|
199
- value.each do |k, v|
200
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
201
- end
202
- end
203
- else # model
204
- # models (e.g. Pet) or oneOf
205
- klass = PCPServerSDK::Models.const_get(type)
206
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
207
- end
208
- end
209
-
210
- # Returns the string representation of the object
211
- # @return [String] String presentation of the object
212
- def to_s
213
- to_hash.to_s
214
- end
215
-
216
- # to_body is an alias to to_hash (backward compatibility)
217
- # @return [Hash] Returns the object in the form of hash
218
- def to_body
219
- to_hash
220
- end
221
-
222
- # Returns the object in the form of hash
223
- # @return [Hash] Returns the object in the form of hash
224
- def to_hash
225
- hash = {}
226
- self.class.attribute_map.each_pair do |attr, param|
227
- value = self.send(attr)
228
- if value.nil?
229
- is_nullable = self.class.openapi_nullable.include?(attr)
230
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
231
- end
232
-
233
- hash[param] = _to_hash(value)
234
- end
235
- hash
236
- end
237
-
238
- # Outputs non-array value in the form of hash
239
- # For object, use to_hash. Otherwise, just return the value
240
- # @param [Object] value Any valid value
241
- # @return [Hash] Returns the value in the form of hash
242
- def _to_hash(value)
243
- if value.is_a?(Array)
244
- value.compact.map { |v| _to_hash(v) }
245
- elsif value.is_a?(Hash)
246
- {}.tap do |hash|
247
- value.each { |k, v| hash[k] = _to_hash(v) }
248
- end
249
- elsif value.respond_to? :to_hash
250
- value.to_hash
251
- else
252
- value
253
- end
254
- end
10
+ attribute :reporting_token, :reportingToken, :String
11
+ # Indicates if this transaction should be tokenized
12
+ # * true - Tokenize the transaction.
13
+ # * false - Do not tokenize the transaction, unless it would be tokenized by other means such as auto-
14
+ # tokenization of recurring payments. example: false
15
+ attribute :tokenize, :tokenize, :Boolean
16
+ attribute :payment_product_id, :paymentProductId, :Integer
17
+ attribute :payment_product840_specific_input, :paymentProduct840SpecificInput, :RedirectPaymentProduct840SpecificInput
18
+ attribute :payment_product900_specific_input, :paymentProduct900SpecificInput, :RedirectPaymentProduct900SpecificInput
19
+ attribute :redirection_data, :redirectionData, :RedirectionData
255
20
  end
256
21
  end
257
22
  end
@@ -0,0 +1,12 @@
1
+ require_relative 'model_base'
2
+
3
+ module PCPServerSDK
4
+ module Models
5
+ class RedirectPaymentMethodSpecificInputForIntent < ModelBase
6
+ attribute :requires_approval, :requiresApproval, :Boolean
7
+ attribute :payment_product_id, :paymentProductId, :Integer
8
+ attribute :payment_product840_specific_input, :paymentProduct840SpecificInput, :RedirectPaymentProduct840SpecificInputData
9
+ attribute :redirection_data, :redirectionData, :RedirectionData
10
+ end
11
+ end
12
+ end