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,35 @@
1
+ require_relative 'model_base'
1
2
 
2
- require 'date'
3
- require 'time'
4
3
  module PCPServerSDK
5
4
  module Models
6
- # Fraud results contained in the CardFraudResults object.
7
- class CardFraudResults
8
- # Result of the Address Verification Service checks.
9
- # @return [AvsResult]
10
- attr_accessor :avs_result
11
-
12
- # Attribute mapping from ruby-style variable name to JSON key.
13
- def self.attribute_map
14
- {
15
- :'avs_result' => :'avsResult'
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
- :'avs_result' => :'AvsResult'
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 `CardFraudResults` 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 `CardFraudResults`. 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?(:'avs_result')
53
- self.avs_result = attributes[:'avs_result']
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
- avs_result == o.avs_result
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
- [avs_result].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
5
+ class CardFraudResults < ModelBase
6
+ # Result of the Address Verification Service checks. Possible values are:
7
+ # * A - Address (Street) matches, Zip does not
8
+ # * B - Street address match for international transactions—Postal code not verified due to incompatible
9
+ # formats
10
+ # * C - Street address and postal code not verified for international transaction due to incompatible formats
11
+ # * D - Street address and postal code match for international transaction, cardholder name is incorrect
12
+ # * E - AVS error
13
+ # * F - Address does match and five digit ZIP code does match (UK only)
14
+ # * G - Address information is unavailable; international transaction; non-AVS participant
15
+ # * H - Billing address and postal code match, cardholder name is incorrect (Amex)
16
+ # * I - Address information not verified for international transaction
17
+ # * K - Cardholder name matches (Amex)
18
+ # * L - Cardholder name and postal code match (Amex)
19
+ # * M - Cardholder name, street address, and postal code match for international transaction
20
+ # * N - No Match on Address (Street) or Zip
21
+ # * O - Cardholder name and address match (Amex)
22
+ # * P - Postal codes match for international transaction—Street address not verified due to incompatible formats
23
+ # * Q - Billing address matches, cardholder is incorrect (Amex)
24
+ # * R - Retry, System unavailable or Timed out
25
+ # * S - Service not supported by issuer
26
+ # * U - Address information is unavailable
27
+ # * W - 9 digit Zip matches, Address (Street) does not
28
+ # * X - Exact AVS Match
29
+ # * Y - Address (Street) and 5 digit Zip match
30
+ # * Z - 5 digit Zip matches, Address (Street) does not
31
+ # * 0 - No service available
32
+ attribute :avs_result, :avsResult, :String, enum: ["A", "B", "C", "D", "E", "F", "G", "H", "I", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "U", "W", "X", "Y", "Z", "0"]
188
33
  end
189
34
  end
190
35
  end
@@ -1,189 +1,10 @@
1
+ require_relative 'model_base'
1
2
 
2
- require 'date'
3
- require 'time'
4
3
  module PCPServerSDK
5
4
  module Models
6
- # Object containing additional non PCI DSS relevant card information. used instead of card (missing fields: cardNumber, expiryDate, cvv)
7
- class CardInfo
5
+ class CardInfo < ModelBase
8
6
  # The card holder's name on the card.
9
- attr_accessor :cardholder_name
10
-
11
- # Attribute mapping from ruby-style variable name to JSON key.
12
- def self.attribute_map
13
- {
14
- :'cardholder_name' => :'cardholderName'
15
- }
16
- end
17
-
18
- # Returns all the JSON keys this model knows about
19
- def self.acceptable_attributes
20
- attribute_map.values
21
- end
22
-
23
- # Attribute type mapping.
24
- def self.openapi_types
25
- {
26
- :'cardholder_name' => :'String'
27
- }
28
- end
29
-
30
- # List of attributes with nullable: true
31
- def self.openapi_nullable
32
- Set.new([
33
- ])
34
- end
35
-
36
- # Initializes the object
37
- # @param [Hash] attributes Model attributes in the form of hash
38
- def initialize(attributes = {})
39
- if (!attributes.is_a?(Hash))
40
- fail ArgumentError, "The input argument (attributes) must be a hash in `CardInfo` initialize method"
41
- end
42
-
43
- # check to see if the attribute exists and convert string to symbol for hash key
44
- attributes = attributes.each_with_object({}) { |(k, v), h|
45
- if (!self.class.attribute_map.key?(k.to_sym))
46
- fail ArgumentError, "`#{k}` is not a valid attribute in `CardInfo`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
47
- end
48
- h[k.to_sym] = v
49
- }
50
-
51
- if attributes.key?(:'cardholder_name')
52
- self.cardholder_name = attributes[:'cardholder_name']
53
- end
54
- end
55
-
56
- # Checks equality by comparing each attribute.
57
- # @param [Object] Object to be compared
58
- def ==(o)
59
- return true if self.equal?(o)
60
- self.class == o.class &&
61
- cardholder_name == o.cardholder_name
62
- end
63
-
64
- # @see the `==` method
65
- # @param [Object] Object to be compared
66
- def eql?(o)
67
- self == o
68
- end
69
-
70
- # Calculates hash code according to all attributes.
71
- # @return [Integer] Hash code
72
- def hash
73
- [cardholder_name].hash
74
- end
75
-
76
- # Builds the object from hash
77
- # @param [Hash] attributes Model attributes in the form of hash
78
- # @return [Object] Returns the model itself
79
- def self.build_from_hash(attributes)
80
- return nil unless attributes.is_a?(Hash)
81
- attributes = attributes.transform_keys(&:to_sym)
82
- transformed_hash = {}
83
- openapi_types.each_pair do |key, type|
84
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
85
- transformed_hash["#{key}"] = nil
86
- elsif type =~ /\AArray<(.*)>/i
87
- # check to ensure the input is an array given that the attribute
88
- # is documented as an array but the input is not
89
- if attributes[attribute_map[key]].is_a?(Array)
90
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
91
- end
92
- elsif !attributes[attribute_map[key]].nil?
93
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
94
- end
95
- end
96
- new(transformed_hash)
97
- end
98
-
99
- # Deserializes the data based on type
100
- # @param string type Data type
101
- # @param string value Value to be deserialized
102
- # @return [Object] Deserialized data
103
- def self._deserialize(type, value)
104
- case type.to_sym
105
- when :Time
106
- Time.parse(value)
107
- when :Date
108
- Date.parse(value)
109
- when :String
110
- value.to_s
111
- when :Integer
112
- value.to_i
113
- when :Float
114
- value.to_f
115
- when :Boolean
116
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
117
- true
118
- else
119
- false
120
- end
121
- when :Object
122
- # generic object (usually a Hash), return directly
123
- value
124
- when /\AArray<(?<inner_type>.+)>\z/
125
- inner_type = Regexp.last_match[:inner_type]
126
- value.map { |v| _deserialize(inner_type, v) }
127
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
128
- k_type = Regexp.last_match[:k_type]
129
- v_type = Regexp.last_match[:v_type]
130
- {}.tap do |hash|
131
- value.each do |k, v|
132
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
133
- end
134
- end
135
- else # model
136
- # models (e.g. Pet) or oneOf
137
- klass = PCPServerSDK::Models.const_get(type)
138
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
139
- end
140
- end
141
-
142
- # Returns the string representation of the object
143
- # @return [String] String presentation of the object
144
- def to_s
145
- to_hash.to_s
146
- end
147
-
148
- # to_body is an alias to to_hash (backward compatibility)
149
- # @return [Hash] Returns the object in the form of hash
150
- def to_body
151
- to_hash
152
- end
153
-
154
- # Returns the object in the form of hash
155
- # @return [Hash] Returns the object in the form of hash
156
- def to_hash
157
- hash = {}
158
- self.class.attribute_map.each_pair do |attr, param|
159
- value = self.send(attr)
160
- if value.nil?
161
- is_nullable = self.class.openapi_nullable.include?(attr)
162
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
163
- end
164
-
165
- hash[param] = _to_hash(value)
166
- end
167
- hash
168
- end
169
-
170
- # Outputs non-array value in the form of hash
171
- # For object, use to_hash. Otherwise, just return the value
172
- # @param [Object] value Any valid value
173
- # @return [Hash] Returns the value in the form of hash
174
- def _to_hash(value)
175
- if value.is_a?(Array)
176
- value.compact.map { |v| _to_hash(v) }
177
- elsif value.is_a?(Hash)
178
- {}.tap do |hash|
179
- value.each { |k, v| hash[k] = _to_hash(v) }
180
- end
181
- elsif value.respond_to? :to_hash
182
- value.to_hash
183
- else
184
- value
185
- end
186
- end
7
+ attribute :cardholder_name, :cardholderName, :String
187
8
  end
188
9
  end
189
10
  end
@@ -1,219 +1,17 @@
1
+ require_relative 'model_base'
1
2
 
2
- require 'date'
3
- require 'time'
4
3
  module PCPServerSDK
5
4
  module Models
6
- # Information for card payments realized at a POS.
7
- class CardPaymentDetails
5
+ class CardPaymentDetails < ModelBase
8
6
  # Reference to the card of the transaction.
9
- attr_accessor :masked_card_number
10
-
7
+ attribute :masked_card_number, :maskedCardNumber, :String
11
8
  # ID of the token. This property is populated when the payment was done with a token.
12
- attr_accessor :payment_processing_token
13
-
9
+ attribute :payment_processing_token, :paymentProcessingToken, :String
14
10
  # Token to identify the card in the reporting.
15
- attr_accessor :reporting_token
16
-
17
- # Identifier for a successful authorization, reversal or refund. Usually provided by the issuer system. Only provided for card payments.
18
- attr_accessor :card_authorization_id
19
-
20
- # Attribute mapping from ruby-style variable name to JSON key.
21
- def self.attribute_map
22
- {
23
- :'masked_card_number' => :'maskedCardNumber',
24
- :'payment_processing_token' => :'paymentProcessingToken',
25
- :'reporting_token' => :'reportingToken',
26
- :'card_authorization_id' => :'cardAuthorizationId'
27
- }
28
- end
29
-
30
- # Returns all the JSON keys this model knows about
31
- def self.acceptable_attributes
32
- attribute_map.values
33
- end
34
-
35
- # Attribute type mapping.
36
- def self.openapi_types
37
- {
38
- :'masked_card_number' => :'String',
39
- :'payment_processing_token' => :'String',
40
- :'reporting_token' => :'String',
41
- :'card_authorization_id' => :'String'
42
- }
43
- end
44
-
45
- # List of attributes with nullable: true
46
- def self.openapi_nullable
47
- Set.new([
48
- ])
49
- end
50
-
51
- # Initializes the object
52
- # @param [Hash] attributes Model attributes in the form of hash
53
- def initialize(attributes = {})
54
- if (!attributes.is_a?(Hash))
55
- fail ArgumentError, "The input argument (attributes) must be a hash in `CardPaymentDetails` initialize method"
56
- end
57
-
58
- # check to see if the attribute exists and convert string to symbol for hash key
59
- attributes = attributes.each_with_object({}) { |(k, v), h|
60
- if (!self.class.attribute_map.key?(k.to_sym))
61
- fail ArgumentError, "`#{k}` is not a valid attribute in `CardPaymentDetails`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
62
- end
63
- h[k.to_sym] = v
64
- }
65
-
66
- if attributes.key?(:'masked_card_number')
67
- self.masked_card_number = attributes[:'masked_card_number']
68
- end
69
-
70
- if attributes.key?(:'payment_processing_token')
71
- self.payment_processing_token = attributes[:'payment_processing_token']
72
- end
73
-
74
- if attributes.key?(:'reporting_token')
75
- self.reporting_token = attributes[:'reporting_token']
76
- end
77
-
78
- if attributes.key?(:'card_authorization_id')
79
- self.card_authorization_id = attributes[:'card_authorization_id']
80
- end
81
- end
82
-
83
- # Checks equality by comparing each attribute.
84
- # @param [Object] Object to be compared
85
- def ==(o)
86
- return true if self.equal?(o)
87
- self.class == o.class &&
88
- masked_card_number == o.masked_card_number &&
89
- payment_processing_token == o.payment_processing_token &&
90
- reporting_token == o.reporting_token &&
91
- card_authorization_id == o.card_authorization_id
92
- end
93
-
94
- # @see the `==` method
95
- # @param [Object] Object to be compared
96
- def eql?(o)
97
- self == o
98
- end
99
-
100
- # Calculates hash code according to all attributes.
101
- # @return [Integer] Hash code
102
- def hash
103
- [masked_card_number, payment_processing_token, reporting_token, card_authorization_id].hash
104
- end
105
-
106
- # Builds the object from hash
107
- # @param [Hash] attributes Model attributes in the form of hash
108
- # @return [Object] Returns the model itself
109
- def self.build_from_hash(attributes)
110
- return nil unless attributes.is_a?(Hash)
111
- attributes = attributes.transform_keys(&:to_sym)
112
- transformed_hash = {}
113
- openapi_types.each_pair do |key, type|
114
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
115
- transformed_hash["#{key}"] = nil
116
- elsif type =~ /\AArray<(.*)>/i
117
- # check to ensure the input is an array given that the attribute
118
- # is documented as an array but the input is not
119
- if attributes[attribute_map[key]].is_a?(Array)
120
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
121
- end
122
- elsif !attributes[attribute_map[key]].nil?
123
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
124
- end
125
- end
126
- new(transformed_hash)
127
- end
128
-
129
- # Deserializes the data based on type
130
- # @param string type Data type
131
- # @param string value Value to be deserialized
132
- # @return [Object] Deserialized data
133
- def self._deserialize(type, value)
134
- case type.to_sym
135
- when :Time
136
- Time.parse(value)
137
- when :Date
138
- Date.parse(value)
139
- when :String
140
- value.to_s
141
- when :Integer
142
- value.to_i
143
- when :Float
144
- value.to_f
145
- when :Boolean
146
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
147
- true
148
- else
149
- false
150
- end
151
- when :Object
152
- # generic object (usually a Hash), return directly
153
- value
154
- when /\AArray<(?<inner_type>.+)>\z/
155
- inner_type = Regexp.last_match[:inner_type]
156
- value.map { |v| _deserialize(inner_type, v) }
157
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
158
- k_type = Regexp.last_match[:k_type]
159
- v_type = Regexp.last_match[:v_type]
160
- {}.tap do |hash|
161
- value.each do |k, v|
162
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
163
- end
164
- end
165
- else # model
166
- # models (e.g. Pet) or oneOf
167
- klass = PCPServerSDK::Models.const_get(type)
168
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
169
- end
170
- end
171
-
172
- # Returns the string representation of the object
173
- # @return [String] String presentation of the object
174
- def to_s
175
- to_hash.to_s
176
- end
177
-
178
- # to_body is an alias to to_hash (backward compatibility)
179
- # @return [Hash] Returns the object in the form of hash
180
- def to_body
181
- to_hash
182
- end
183
-
184
- # Returns the object in the form of hash
185
- # @return [Hash] Returns the object in the form of hash
186
- def to_hash
187
- hash = {}
188
- self.class.attribute_map.each_pair do |attr, param|
189
- value = self.send(attr)
190
- if value.nil?
191
- is_nullable = self.class.openapi_nullable.include?(attr)
192
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
193
- end
194
-
195
- hash[param] = _to_hash(value)
196
- end
197
- hash
198
- end
199
-
200
- # Outputs non-array value in the form of hash
201
- # For object, use to_hash. Otherwise, just return the value
202
- # @param [Object] value Any valid value
203
- # @return [Hash] Returns the value in the form of hash
204
- def _to_hash(value)
205
- if value.is_a?(Array)
206
- value.compact.map { |v| _to_hash(v) }
207
- elsif value.is_a?(Hash)
208
- {}.tap do |hash|
209
- value.each { |k, v| hash[k] = _to_hash(v) }
210
- end
211
- elsif value.respond_to? :to_hash
212
- value.to_hash
213
- else
214
- value
215
- end
216
- end
11
+ attribute :reporting_token, :reportingToken, :String
12
+ # Identifier for a successful authorization, reversal or refund.
13
+ # Usually provided by the issuer system. Only provided for card payments.
14
+ attribute :card_authorization_id, :cardAuthorizationId, :String
217
15
  end
218
16
  end
219
17
  end