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,198 +1,10 @@
1
+ require_relative 'model_base'
1
2
 
2
- require 'date'
3
- require 'time'
4
-
5
- # Object that contains details on the created payment in case one has been created.
6
3
  module PCPServerSDK
7
4
  module Models
8
- class OrderResponse
9
- attr_accessor :create_payment_response
10
-
11
- attr_accessor :shopping_cart
12
-
13
- # Attribute mapping from ruby-style variable name to JSON key.
14
- def self.attribute_map
15
- {
16
- :'create_payment_response' => :'createPaymentResponse',
17
- :'shopping_cart' => :'shoppingCart'
18
- }
19
- end
20
-
21
- # Returns all the JSON keys this model knows about
22
- def self.acceptable_attributes
23
- attribute_map.values
24
- end
25
-
26
- # Attribute type mapping.
27
- def self.openapi_types
28
- {
29
- :'create_payment_response' => :'CreatePaymentResponse',
30
- :'shopping_cart' => :'ShoppingCartResult'
31
- }
32
- end
33
-
34
- # List of attributes with nullable: true
35
- def self.openapi_nullable
36
- Set.new([
37
- ])
38
- end
39
-
40
- # Initializes the object
41
- # @param [Hash] attributes Model attributes in the form of hash
42
- def initialize(attributes = {})
43
- if (!attributes.is_a?(Hash))
44
- fail ArgumentError, "The input argument (attributes) must be a hash in `OrderResponse` initialize method"
45
- end
46
-
47
- # check to see if the attribute exists and convert string to symbol for hash key
48
- attributes = attributes.each_with_object({}) { |(k, v), h|
49
- if (!self.class.attribute_map.key?(k.to_sym))
50
- fail ArgumentError, "`#{k}` is not a valid attribute in `OrderResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
51
- end
52
- h[k.to_sym] = v
53
- }
54
-
55
- if attributes.key?(:'create_payment_response')
56
- self.create_payment_response = attributes[:'create_payment_response']
57
- end
58
-
59
- if attributes.key?(:'shopping_cart')
60
- self.shopping_cart = attributes[:'shopping_cart']
61
- end
62
- end
63
-
64
- # Checks equality by comparing each attribute.
65
- # @param [Object] Object to be compared
66
- def ==(o)
67
- return true if self.equal?(o)
68
- self.class == o.class &&
69
- create_payment_response == o.create_payment_response &&
70
- shopping_cart == o.shopping_cart
71
- end
72
-
73
- # @see the `==` method
74
- # @param [Object] Object to be compared
75
- def eql?(o)
76
- self == o
77
- end
78
-
79
- # Calculates hash code according to all attributes.
80
- # @return [Integer] Hash code
81
- def hash
82
- [create_payment_response, shopping_cart].hash
83
- end
84
-
85
- # Builds the object from hash
86
- # @param [Hash] attributes Model attributes in the form of hash
87
- # @return [Object] Returns the model itself
88
- def self.build_from_hash(attributes)
89
- return nil unless attributes.is_a?(Hash)
90
- attributes = attributes.transform_keys(&:to_sym)
91
- transformed_hash = {}
92
- openapi_types.each_pair do |key, type|
93
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
94
- transformed_hash["#{key}"] = nil
95
- elsif type =~ /\AArray<(.*)>/i
96
- # check to ensure the input is an array given that the attribute
97
- # is documented as an array but the input is not
98
- if attributes[attribute_map[key]].is_a?(Array)
99
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
100
- end
101
- elsif !attributes[attribute_map[key]].nil?
102
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
103
- end
104
- end
105
- new(transformed_hash)
106
- end
107
-
108
- # Deserializes the data based on type
109
- # @param string type Data type
110
- # @param string value Value to be deserialized
111
- # @return [Object] Deserialized data
112
- def self._deserialize(type, value)
113
- case type.to_sym
114
- when :Time
115
- Time.parse(value)
116
- when :Date
117
- Date.parse(value)
118
- when :String
119
- value.to_s
120
- when :Integer
121
- value.to_i
122
- when :Float
123
- value.to_f
124
- when :Boolean
125
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
126
- true
127
- else
128
- false
129
- end
130
- when :Object
131
- # generic object (usually a Hash), return directly
132
- value
133
- when /\AArray<(?<inner_type>.+)>\z/
134
- inner_type = Regexp.last_match[:inner_type]
135
- value.map { |v| _deserialize(inner_type, v) }
136
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
137
- k_type = Regexp.last_match[:k_type]
138
- v_type = Regexp.last_match[:v_type]
139
- {}.tap do |hash|
140
- value.each do |k, v|
141
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
142
- end
143
- end
144
- else # model
145
- # models (e.g. Pet) or oneOf
146
- klass = PCPServerSDK::Models.const_get(type)
147
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
148
- end
149
- end
150
-
151
- # Returns the string representation of the object
152
- # @return [String] String presentation of the object
153
- def to_s
154
- to_hash.to_s
155
- end
156
-
157
- # to_body is an alias to to_hash (backward compatibility)
158
- # @return [Hash] Returns the object in the form of hash
159
- def to_body
160
- to_hash
161
- end
162
-
163
- # Returns the object in the form of hash
164
- # @return [Hash] Returns the object in the form of hash
165
- def to_hash
166
- hash = {}
167
- self.class.attribute_map.each_pair do |attr, param|
168
- value = self.send(attr)
169
- if value.nil?
170
- is_nullable = self.class.openapi_nullable.include?(attr)
171
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
172
- end
173
-
174
- hash[param] = _to_hash(value)
175
- end
176
- hash
177
- end
178
-
179
- # Outputs non-array value in the form of hash
180
- # For object, use to_hash. Otherwise, just return the value
181
- # @param [Object] value Any valid value
182
- # @return [Hash] Returns the value in the form of hash
183
- def _to_hash(value)
184
- if value.is_a?(Array)
185
- value.compact.map { |v| _to_hash(v) }
186
- elsif value.is_a?(Hash)
187
- {}.tap do |hash|
188
- value.each { |k, v| hash[k] = _to_hash(v) }
189
- end
190
- elsif value.respond_to? :to_hash
191
- value.to_hash
192
- else
193
- value
194
- end
195
- end
5
+ class OrderResponse < ModelBase
6
+ attribute :create_payment_response, :createPaymentResponse, :CreatePaymentResponse
7
+ attribute :shopping_cart, :shoppingCart, :ShoppingCartResult
196
8
  end
197
9
  end
198
10
  end
@@ -1,234 +1,14 @@
1
+ require_relative 'model_base'
1
2
 
2
- require 'date'
3
- require 'time'
4
-
5
- # An existing shopping cart of a Checkout will not be overwritten with the Patch request. New items can be added to the shoppingCart by providing them in the request. To change existing items (delete, modify or add), the respective itemId must be provided. An item can be completely removed if quantity = 0 is provided. The price of an item can be changed as long as no payment has happened for this item (i.e. as long as an item has no specific status). Items with a status can no longer be removed entirely, however the quantity can be increased or decreased (for items without payment) by using the itemId. If no amountOfMoney for the Checkout is provided, the platform will calculate the respective amount based on the cartItem productPrice and productQuantity.
6
3
  module PCPServerSDK
7
4
  module Models
8
- class PatchCheckoutRequest
9
- attr_accessor :amount_of_money
10
-
11
- attr_accessor :references
12
-
13
- attr_accessor :shipping
14
-
15
- attr_accessor :shopping_cart
16
-
17
- attr_accessor :payment_method_specific_input
18
-
19
- attr_accessor :payment_references
20
-
21
- # Attribute mapping from ruby-style variable name to JSON key.
22
- def self.attribute_map
23
- {
24
- :'amount_of_money' => :'amountOfMoney',
25
- :'references' => :'references',
26
- :'shipping' => :'shipping',
27
- :'shopping_cart' => :'shoppingCart',
28
- :'payment_method_specific_input' => :'paymentMethodSpecificInput',
29
- :'payment_references' => :'paymentReferences'
30
- }
31
- end
32
-
33
- # Returns all the JSON keys this model knows about
34
- def self.acceptable_attributes
35
- attribute_map.values
36
- end
37
-
38
- # Attribute type mapping.
39
- def self.openapi_types
40
- {
41
- :'amount_of_money' => :'AmountOfMoney',
42
- :'references' => :'CheckoutReferences',
43
- :'shipping' => :'Shipping',
44
- :'shopping_cart' => :'ShoppingCartPatch',
45
- :'payment_method_specific_input' => :'PaymentMethodSpecificInput',
46
- :'payment_references' => :'References'
47
- }
48
- end
49
-
50
- # List of attributes with nullable: true
51
- def self.openapi_nullable
52
- Set.new([
53
- ])
54
- end
55
-
56
- # Initializes the object
57
- # @param [Hash] attributes Model attributes in the form of hash
58
- def initialize(attributes = {})
59
- if (!attributes.is_a?(Hash))
60
- fail ArgumentError, "The input argument (attributes) must be a hash in `PatchCheckoutRequest` initialize method"
61
- end
62
-
63
- # check to see if the attribute exists and convert string to symbol for hash key
64
- attributes = attributes.each_with_object({}) { |(k, v), h|
65
- if (!self.class.attribute_map.key?(k.to_sym))
66
- fail ArgumentError, "`#{k}` is not a valid attribute in `PatchCheckoutRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
67
- end
68
- h[k.to_sym] = v
69
- }
70
-
71
- if attributes.key?(:'amount_of_money')
72
- self.amount_of_money = attributes[:'amount_of_money']
73
- end
74
-
75
- if attributes.key?(:'references')
76
- self.references = attributes[:'references']
77
- end
78
-
79
- if attributes.key?(:'shipping')
80
- self.shipping = attributes[:'shipping']
81
- end
82
-
83
- if attributes.key?(:'shopping_cart')
84
- self.shopping_cart = attributes[:'shopping_cart']
85
- end
86
-
87
- if attributes.key?(:'payment_method_specific_input')
88
- self.payment_method_specific_input = attributes[:'payment_method_specific_input']
89
- end
90
-
91
- if attributes.key?(:'payment_references')
92
- self.payment_references = attributes[:'payment_references']
93
- end
94
- end
95
-
96
- # Checks equality by comparing each attribute.
97
- # @param [Object] Object to be compared
98
- def ==(o)
99
- return true if self.equal?(o)
100
- self.class == o.class &&
101
- amount_of_money == o.amount_of_money &&
102
- references == o.references &&
103
- shipping == o.shipping &&
104
- shopping_cart == o.shopping_cart &&
105
- payment_method_specific_input == o.payment_method_specific_input &&
106
- payment_references == o.payment_references
107
- end
108
-
109
- # @see the `==` method
110
- # @param [Object] Object to be compared
111
- def eql?(o)
112
- self == o
113
- end
114
-
115
- # Calculates hash code according to all attributes.
116
- # @return [Integer] Hash code
117
- def hash
118
- [amount_of_money, references, shipping, shopping_cart, payment_method_specific_input, payment_references].hash
119
- end
120
-
121
- # Builds the object from hash
122
- # @param [Hash] attributes Model attributes in the form of hash
123
- # @return [Object] Returns the model itself
124
- def self.build_from_hash(attributes)
125
- return nil unless attributes.is_a?(Hash)
126
- attributes = attributes.transform_keys(&:to_sym)
127
- transformed_hash = {}
128
- openapi_types.each_pair do |key, type|
129
- if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
130
- transformed_hash["#{key}"] = nil
131
- elsif type =~ /\AArray<(.*)>/i
132
- # check to ensure the input is an array given that the attribute
133
- # is documented as an array but the input is not
134
- if attributes[attribute_map[key]].is_a?(Array)
135
- transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
136
- end
137
- elsif !attributes[attribute_map[key]].nil?
138
- transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
139
- end
140
- end
141
- new(transformed_hash)
142
- end
143
-
144
- # Deserializes the data based on type
145
- # @param string type Data type
146
- # @param string value Value to be deserialized
147
- # @return [Object] Deserialized data
148
- def self._deserialize(type, value)
149
- case type.to_sym
150
- when :Time
151
- Time.parse(value)
152
- when :Date
153
- Date.parse(value)
154
- when :String
155
- value.to_s
156
- when :Integer
157
- value.to_i
158
- when :Float
159
- value.to_f
160
- when :Boolean
161
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
162
- true
163
- else
164
- false
165
- end
166
- when :Object
167
- # generic object (usually a Hash), return directly
168
- value
169
- when /\AArray<(?<inner_type>.+)>\z/
170
- inner_type = Regexp.last_match[:inner_type]
171
- value.map { |v| _deserialize(inner_type, v) }
172
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
173
- k_type = Regexp.last_match[:k_type]
174
- v_type = Regexp.last_match[:v_type]
175
- {}.tap do |hash|
176
- value.each do |k, v|
177
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
178
- end
179
- end
180
- else # model
181
- # models (e.g. Pet) or oneOf
182
- klass = PCPServerSDK::Models.const_get(type)
183
- klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
184
- end
185
- end
186
-
187
- # Returns the string representation of the object
188
- # @return [String] String presentation of the object
189
- def to_s
190
- to_hash.to_s
191
- end
192
-
193
- # to_body is an alias to to_hash (backward compatibility)
194
- # @return [Hash] Returns the object in the form of hash
195
- def to_body
196
- to_hash
197
- end
198
-
199
- # Returns the object in the form of hash
200
- # @return [Hash] Returns the object in the form of hash
201
- def to_hash
202
- hash = {}
203
- self.class.attribute_map.each_pair do |attr, param|
204
- value = self.send(attr)
205
- if value.nil?
206
- is_nullable = self.class.openapi_nullable.include?(attr)
207
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
208
- end
209
-
210
- hash[param] = _to_hash(value)
211
- end
212
- hash
213
- end
214
-
215
- # Outputs non-array value in the form of hash
216
- # For object, use to_hash. Otherwise, just return the value
217
- # @param [Object] value Any valid value
218
- # @return [Hash] Returns the value in the form of hash
219
- def _to_hash(value)
220
- if value.is_a?(Array)
221
- value.compact.map { |v| _to_hash(v) }
222
- elsif value.is_a?(Hash)
223
- {}.tap do |hash|
224
- value.each { |k, v| hash[k] = _to_hash(v) }
225
- end
226
- elsif value.respond_to? :to_hash
227
- value.to_hash
228
- else
229
- value
230
- end
231
- end
5
+ class PatchCheckoutRequest < ModelBase
6
+ attribute :amount_of_money, :amountOfMoney, :AmountOfMoney
7
+ attribute :references, :references, :CheckoutReferences
8
+ attribute :shipping, :shipping, :Shipping
9
+ attribute :shopping_cart, :shoppingCart, :ShoppingCartPatch
10
+ attribute :payment_method_specific_input, :paymentMethodSpecificInput, :PaymentMethodSpecificInput
11
+ attribute :payment_references, :paymentReferences, :References
232
12
  end
233
13
  end
234
14
  end
@@ -1,189 +1,9 @@
1
+ require_relative 'model_base'
1
2
 
2
- require 'date'
3
- require 'time'
4
-
5
- # Update the customer data of the given Commerce Case
6
3
  module PCPServerSDK
7
4
  module Models
8
- class PatchCommerceCaseRequest
9
- attr_accessor :customer
10
-
11
- # Attribute mapping from ruby-style variable name to JSON key.
12
- def self.attribute_map
13
- {
14
- :'customer' => :'customer'
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
- :'customer' => :'Customer'
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 `PatchCommerceCaseRequest` 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 `PatchCommerceCaseRequest`. 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?(:'customer')
52
- self.customer = attributes[:'customer']
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
- customer == o.customer
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
- [customer].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
5
+ class PatchCommerceCaseRequest < ModelBase
6
+ attribute :customer, :customer, :Customer
187
7
  end
188
8
  end
189
9
  end