cybersource_rest_client 0.0.53 → 0.0.55

Sign up to get free protection for your applications and to get access to all the features.
Files changed (148) hide show
  1. checksums.yaml +4 -4
  2. data/lib/AuthenticationSDK/authentication/http/GetSignatureParameter.rb +2 -2
  3. data/lib/AuthenticationSDK/authentication/http/HttpSignatureHeader.rb +6 -6
  4. data/lib/AuthenticationSDK/core/MerchantConfig.rb +6 -0
  5. data/lib/AuthenticationSDK/util/Cache.rb +15 -1
  6. data/lib/AuthenticationSDK/util/Constants.rb +1 -1
  7. data/lib/AuthenticationSDK/util/JWEUtility.rb +14 -0
  8. data/lib/cybersource_rest_client/api/batches_api.rb +12 -12
  9. data/lib/cybersource_rest_client/api/billing_agreements_api.rb +231 -0
  10. data/lib/cybersource_rest_client/api/decision_manager_api.rb +142 -0
  11. data/lib/cybersource_rest_client/api/invoice_settings_api.rb +2 -2
  12. data/lib/cybersource_rest_client/api/invoices_api.rb +6 -6
  13. data/lib/cybersource_rest_client/api/keymanagement_api.rb +3 -3
  14. data/lib/cybersource_rest_client/api/payments_api.rb +2 -2
  15. data/lib/cybersource_rest_client/api/plans_api.rb +32 -32
  16. data/lib/cybersource_rest_client/api/subscriptions_api.rb +32 -32
  17. data/lib/cybersource_rest_client/api/void_api.rb +2 -2
  18. data/lib/cybersource_rest_client/models/access_token_response.rb +244 -244
  19. data/lib/cybersource_rest_client/models/activate_deactivate_plan_response.rb +239 -0
  20. data/lib/cybersource_rest_client/models/{inline_response_200_9.rb → activate_subscription_response.rb} +2 -2
  21. data/lib/cybersource_rest_client/models/{inline_response_200_9_subscription_information.rb → activate_subscription_response_subscription_information.rb} +1 -1
  22. data/lib/cybersource_rest_client/models/bad_request_error.rb +192 -192
  23. data/lib/cybersource_rest_client/models/{inline_response_202_1.rb → cancel_subscription_response.rb} +2 -2
  24. data/lib/cybersource_rest_client/models/{inline_response_202_subscription_information.rb → cancel_subscription_response_subscription_information.rb} +1 -1
  25. data/lib/cybersource_rest_client/models/case_management_actions_request.rb +200 -0
  26. data/lib/cybersource_rest_client/models/case_management_comments_request.rb +206 -0
  27. data/lib/cybersource_rest_client/models/create_access_token_request.rb +254 -254
  28. data/lib/cybersource_rest_client/models/{inline_response_200_14.rb → create_billing_agreement.rb} +65 -88
  29. data/lib/cybersource_rest_client/models/create_bundled_decision_manager_case_request.rb +15 -5
  30. data/lib/cybersource_rest_client/models/create_plan_response.rb +239 -0
  31. data/lib/cybersource_rest_client/models/{inline_response_201_plan_information.rb → create_plan_response_plan_information.rb} +1 -1
  32. data/lib/cybersource_rest_client/models/create_subscription_request.rb +1 -1
  33. data/lib/cybersource_rest_client/models/{inline_response_201_1.rb → create_subscription_response.rb} +3 -3
  34. data/lib/cybersource_rest_client/models/{inline_response_201_1__links.rb → create_subscription_response__links.rb} +1 -1
  35. data/lib/cybersource_rest_client/models/{inline_response_201_1_subscription_information.rb → create_subscription_response_subscription_information.rb} +1 -1
  36. data/lib/cybersource_rest_client/models/delete_plan_response.rb +202 -0
  37. data/lib/cybersource_rest_client/models/{inline_response_202_2.rb → get_all_plans_response.rb} +31 -18
  38. data/lib/cybersource_rest_client/models/{inline_response_200__links.rb → get_all_plans_response__links.rb} +1 -1
  39. data/lib/cybersource_rest_client/models/{inline_response_200_order_information.rb → get_all_plans_response_order_information.rb} +2 -2
  40. data/lib/cybersource_rest_client/models/{inline_response_200_order_information_amount_details.rb → get_all_plans_response_order_information_amount_details.rb} +1 -1
  41. data/lib/cybersource_rest_client/models/{inline_response_200_plan_information.rb → get_all_plans_response_plan_information.rb} +3 -3
  42. data/lib/cybersource_rest_client/models/{inline_response_200_plan_information_billing_cycles.rb → get_all_plans_response_plan_information_billing_cycles.rb} +1 -1
  43. data/lib/cybersource_rest_client/models/{inline_response_200_plan_information_billing_period.rb → get_all_plans_response_plan_information_billing_period.rb} +1 -1
  44. data/lib/cybersource_rest_client/models/{inline_response_200_plans.rb → get_all_plans_response_plans.rb} +3 -3
  45. data/lib/cybersource_rest_client/models/{inline_response_200_6.rb → get_all_subscriptions_response.rb} +3 -3
  46. data/lib/cybersource_rest_client/models/{inline_response_200_6__links.rb → get_all_subscriptions_response__links.rb} +1 -1
  47. data/lib/cybersource_rest_client/models/get_all_subscriptions_response_order_information.rb +200 -0
  48. data/lib/cybersource_rest_client/models/{inline_response_200_6_order_information_bill_to.rb → get_all_subscriptions_response_order_information_bill_to.rb} +1 -1
  49. data/lib/cybersource_rest_client/models/{inline_response_200_6_payment_information.rb → get_all_subscriptions_response_payment_information.rb} +2 -2
  50. data/lib/cybersource_rest_client/models/{inline_response_200_6_payment_information_customer.rb → get_all_subscriptions_response_payment_information_customer.rb} +1 -1
  51. data/lib/cybersource_rest_client/models/{inline_response_200_6_plan_information.rb → get_all_subscriptions_response_plan_information.rb} +3 -3
  52. data/lib/cybersource_rest_client/models/{inline_response_200_6_plan_information_billing_cycles.rb → get_all_subscriptions_response_plan_information_billing_cycles.rb} +1 -1
  53. data/lib/cybersource_rest_client/models/{inline_response_200_6_subscription_information.rb → get_all_subscriptions_response_subscription_information.rb} +1 -1
  54. data/lib/cybersource_rest_client/models/{inline_response_200_6_subscriptions.rb → get_all_subscriptions_response_subscriptions.rb} +6 -6
  55. data/lib/cybersource_rest_client/models/{inline_response_200_5.rb → get_plan_code_response.rb} +1 -1
  56. data/lib/cybersource_rest_client/models/get_plan_response.rb +238 -0
  57. data/lib/cybersource_rest_client/models/{inline_response_200_10.rb → get_subscription_code_response.rb} +1 -1
  58. data/lib/cybersource_rest_client/models/{inline_response_200_7.rb → get_subscription_response.rb} +6 -6
  59. data/lib/cybersource_rest_client/models/inline_response_200.rb +30 -25
  60. data/lib/cybersource_rest_client/models/inline_response_200_1.rb +50 -40
  61. data/lib/cybersource_rest_client/models/{inline_response_200_11_keys.rb → inline_response_200_1_keys.rb} +1 -1
  62. data/lib/cybersource_rest_client/models/inline_response_200_2.rb +67 -17
  63. data/lib/cybersource_rest_client/models/{inline_response_200_12__embedded.rb → inline_response_200_2__embedded.rb} +2 -2
  64. data/lib/cybersource_rest_client/models/{inline_response_200_12__embedded__links.rb → inline_response_200_2__embedded__links.rb} +2 -2
  65. data/lib/cybersource_rest_client/models/{inline_response_200_12__embedded__links_reports.rb → inline_response_200_2__embedded__links_reports.rb} +1 -1
  66. data/lib/cybersource_rest_client/models/{inline_response_200_12__embedded_batches.rb → inline_response_200_2__embedded_batches.rb} +3 -3
  67. data/lib/cybersource_rest_client/models/{inline_response_200_12__embedded_totals.rb → inline_response_200_2__embedded_totals.rb} +1 -1
  68. data/lib/cybersource_rest_client/models/{inline_response_200_12__links.rb → inline_response_200_2__links.rb} +1 -1
  69. data/lib/cybersource_rest_client/models/inline_response_200_3.rb +81 -29
  70. data/lib/cybersource_rest_client/models/{inline_response_200_13__links.rb → inline_response_200_3__links.rb} +3 -3
  71. data/lib/cybersource_rest_client/models/{inline_response_202_2__links_status.rb → inline_response_200_3__links_report.rb} +1 -1
  72. data/lib/cybersource_rest_client/models/{inline_response_200_13_billing.rb → inline_response_200_3_billing.rb} +1 -1
  73. data/lib/cybersource_rest_client/models/inline_response_200_4.rb +96 -42
  74. data/lib/cybersource_rest_client/models/{inline_response_200_14_records.rb → inline_response_200_4_records.rb} +3 -3
  75. data/lib/cybersource_rest_client/models/{inline_response_200_14_response_record.rb → inline_response_200_4_response_record.rb} +2 -2
  76. data/lib/cybersource_rest_client/models/{inline_response_200_14_response_record_additional_updates.rb → inline_response_200_4_response_record_additional_updates.rb} +1 -1
  77. data/lib/cybersource_rest_client/models/{inline_response_200_14_source_record.rb → inline_response_200_4_source_record.rb} +1 -1
  78. data/lib/cybersource_rest_client/models/inline_response_200__embedded.rb +201 -0
  79. data/lib/cybersource_rest_client/models/inline_response_200__embedded_capture.rb +202 -0
  80. data/lib/cybersource_rest_client/models/inline_response_200__embedded_capture__links.rb +191 -0
  81. data/lib/cybersource_rest_client/models/inline_response_200__embedded_capture__links_self.rb +203 -0
  82. data/lib/cybersource_rest_client/models/inline_response_200__embedded_reversal.rb +202 -0
  83. data/lib/cybersource_rest_client/models/inline_response_200__embedded_reversal__links.rb +191 -0
  84. data/lib/cybersource_rest_client/models/inline_response_200__embedded_reversal__links_self.rb +203 -0
  85. data/lib/cybersource_rest_client/models/inline_response_201.rb +7 -27
  86. data/lib/cybersource_rest_client/models/inline_response_202.rb +17 -45
  87. data/lib/cybersource_rest_client/models/{inline_response_202_2__links.rb → inline_response_202__links.rb} +2 -2
  88. data/lib/cybersource_rest_client/models/{inline_response_200_13__links_report.rb → inline_response_202__links_status.rb} +1 -1
  89. data/lib/cybersource_rest_client/models/inline_response_400_1.rb +3 -3
  90. data/lib/cybersource_rest_client/models/inline_response_400_2.rb +1 -1
  91. data/lib/cybersource_rest_client/models/inline_response_400_3.rb +37 -60
  92. data/lib/cybersource_rest_client/models/inline_response_400_4.rb +61 -37
  93. data/lib/cybersource_rest_client/models/{inline_response_400_3_fields.rb → inline_response_400_4_fields.rb} +1 -1
  94. data/lib/cybersource_rest_client/models/inline_response_400_5.rb +10 -11
  95. data/lib/cybersource_rest_client/models/inline_response_400_6.rb +35 -75
  96. data/lib/cybersource_rest_client/models/inline_response_400_7.rb +276 -0
  97. data/lib/cybersource_rest_client/models/{inline_response_400_6_details.rb → inline_response_400_7_details.rb} +1 -1
  98. data/lib/cybersource_rest_client/models/inline_response_403_1.rb +236 -0
  99. data/lib/cybersource_rest_client/models/inline_response_422.rb +236 -0
  100. data/lib/cybersource_rest_client/models/inline_response_500_1.rb +20 -8
  101. data/lib/cybersource_rest_client/models/inline_response_500_2.rb +224 -0
  102. data/lib/cybersource_rest_client/models/inline_response_502.rb +13 -12
  103. data/lib/cybersource_rest_client/models/inline_response_502_1.rb +235 -0
  104. data/lib/cybersource_rest_client/models/inline_response_503.rb +236 -0
  105. data/lib/cybersource_rest_client/models/{inline_response_200_12.rb → intimate_billing_agreement.rb} +37 -59
  106. data/lib/cybersource_rest_client/models/invoicing_v2_invoices_all_get200_response.rb +1 -1
  107. data/lib/cybersource_rest_client/models/modify_billing_agreement.rb +270 -0
  108. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_1.rb +239 -0
  109. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_1_installment_information.rb +197 -0
  110. data/lib/cybersource_rest_client/models/pts_v2_credits_post201_response_1_processor_information.rb +214 -0
  111. data/lib/cybersource_rest_client/models/ptsv2billingagreements_aggregator_information.rb +207 -0
  112. data/lib/cybersource_rest_client/models/ptsv2billingagreements_consumer_authentication_information.rb +242 -0
  113. data/lib/cybersource_rest_client/models/ptsv2billingagreements_device_information.rb +231 -0
  114. data/lib/cybersource_rest_client/models/ptsv2billingagreements_installment_information.rb +327 -0
  115. data/lib/cybersource_rest_client/models/ptsv2billingagreements_merchant_information.rb +235 -0
  116. data/lib/cybersource_rest_client/models/ptsv2billingagreements_merchant_information_merchant_descriptor.rb +242 -0
  117. data/lib/cybersource_rest_client/models/{inline_response_200_6_order_information.rb → ptsv2billingagreements_order_information.rb} +3 -3
  118. data/lib/cybersource_rest_client/models/ptsv2billingagreements_order_information_bill_to.rb +401 -0
  119. data/lib/cybersource_rest_client/models/ptsv2billingagreements_payment_information.rb +200 -0
  120. data/lib/cybersource_rest_client/models/ptsv2billingagreements_payment_information_card.rb +259 -0
  121. data/lib/cybersource_rest_client/models/ptsv2billingagreements_payment_information_tokenized_card.rb +276 -0
  122. data/lib/cybersource_rest_client/models/ptsv2billingagreements_processing_information.rb +210 -0
  123. data/lib/cybersource_rest_client/models/ptsv2payments_order_information.rb +12 -1
  124. data/lib/cybersource_rest_client/models/ptsv2payments_processing_information_authorization_options.rb +16 -5
  125. data/lib/cybersource_rest_client/models/rbsv1plans_plan_information.rb +1 -1
  126. data/lib/cybersource_rest_client/models/rbsv1plansid_plan_information.rb +1 -1
  127. data/lib/cybersource_rest_client/models/rbsv1subscriptions_plan_information.rb +1 -1
  128. data/lib/cybersource_rest_client/models/resource_not_found_error.rb +192 -192
  129. data/lib/cybersource_rest_client/models/risk_v1_decisions_post201_response_consumer_authentication_information.rb +1 -1
  130. data/lib/cybersource_rest_client/models/riskv1authenticationsetups_token_information.rb +22 -5
  131. data/lib/cybersource_rest_client/models/riskv1decisions_order_information.rb +12 -1
  132. data/lib/cybersource_rest_client/models/riskv1decisions_processing_information.rb +1 -1
  133. data/lib/cybersource_rest_client/models/riskv1decisions_token_information.rb +197 -0
  134. data/lib/cybersource_rest_client/models/riskv1decisionsidactions_decision_information.rb +208 -0
  135. data/lib/cybersource_rest_client/models/riskv1decisionsidactions_processing_information.rb +193 -0
  136. data/lib/cybersource_rest_client/models/suspend_subscription_response.rb +239 -0
  137. data/lib/cybersource_rest_client/models/{inline_response_202_1_subscription_information.rb → suspend_subscription_response_subscription_information.rb} +1 -1
  138. data/lib/cybersource_rest_client/models/unauthorized_client_error.rb +192 -192
  139. data/lib/cybersource_rest_client/models/update_plan_request.rb +1 -1
  140. data/lib/cybersource_rest_client/models/update_plan_response.rb +239 -0
  141. data/lib/cybersource_rest_client/models/{inline_response_200_3_plan_information.rb → update_plan_response_plan_information.rb} +1 -1
  142. data/lib/cybersource_rest_client/models/{inline_response_200_8.rb → update_subscription_response.rb} +3 -3
  143. data/lib/cybersource_rest_client/models/validate_request.rb +15 -5
  144. data/lib/cybersource_rest_client/utilities/jwe_utility.rb +12 -0
  145. data/lib/cybersource_rest_client.rb +95 -54
  146. metadata +112 -57
  147. data/lib/cybersource_rest_client/models/inline_response_200_11.rb +0 -248
  148. data/lib/cybersource_rest_client/models/inline_response_200_13.rb +0 -291
@@ -0,0 +1,270 @@
1
+ =begin
2
+ #CyberSource Merged Spec
3
+
4
+ #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
+
6
+ OpenAPI spec version: 0.0.1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.2.3
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CyberSource
16
+ class ModifyBillingAgreement
17
+ attr_accessor :client_reference_information
18
+
19
+ attr_accessor :aggregator_information
20
+
21
+ attr_accessor :consumer_authentication_information
22
+
23
+ attr_accessor :device_information
24
+
25
+ attr_accessor :installment_information
26
+
27
+ attr_accessor :merchant_information
28
+
29
+ attr_accessor :order_information
30
+
31
+ attr_accessor :payment_information
32
+
33
+ attr_accessor :processing_information
34
+
35
+ # Attribute mapping from ruby-style variable name to JSON key.
36
+ def self.attribute_map
37
+ {
38
+ :'client_reference_information' => :'clientReferenceInformation',
39
+ :'aggregator_information' => :'aggregatorInformation',
40
+ :'consumer_authentication_information' => :'consumerAuthenticationInformation',
41
+ :'device_information' => :'deviceInformation',
42
+ :'installment_information' => :'installmentInformation',
43
+ :'merchant_information' => :'merchantInformation',
44
+ :'order_information' => :'orderInformation',
45
+ :'payment_information' => :'paymentInformation',
46
+ :'processing_information' => :'processingInformation'
47
+ }
48
+ end
49
+
50
+ # Attribute mapping from JSON key to ruby-style variable name.
51
+ def self.json_map
52
+ {
53
+ :'client_reference_information' => :'client_reference_information',
54
+ :'aggregator_information' => :'aggregator_information',
55
+ :'consumer_authentication_information' => :'consumer_authentication_information',
56
+ :'device_information' => :'device_information',
57
+ :'installment_information' => :'installment_information',
58
+ :'merchant_information' => :'merchant_information',
59
+ :'order_information' => :'order_information',
60
+ :'payment_information' => :'payment_information',
61
+ :'processing_information' => :'processing_information'
62
+ }
63
+ end
64
+
65
+ # Attribute type mapping.
66
+ def self.swagger_types
67
+ {
68
+ :'client_reference_information' => :'Ptsv2paymentsClientReferenceInformation',
69
+ :'aggregator_information' => :'Ptsv2billingagreementsAggregatorInformation',
70
+ :'consumer_authentication_information' => :'Ptsv2billingagreementsConsumerAuthenticationInformation',
71
+ :'device_information' => :'Ptsv2billingagreementsDeviceInformation',
72
+ :'installment_information' => :'Ptsv2billingagreementsInstallmentInformation',
73
+ :'merchant_information' => :'Ptsv2billingagreementsMerchantInformation',
74
+ :'order_information' => :'Ptsv2billingagreementsOrderInformation',
75
+ :'payment_information' => :'Ptsv2billingagreementsPaymentInformation',
76
+ :'processing_information' => :'Ptsv2billingagreementsProcessingInformation'
77
+ }
78
+ end
79
+
80
+ # Initializes the object
81
+ # @param [Hash] attributes Model attributes in the form of hash
82
+ def initialize(attributes = {})
83
+ return unless attributes.is_a?(Hash)
84
+
85
+ # convert string to symbol for hash key
86
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
87
+
88
+ if attributes.has_key?(:'clientReferenceInformation')
89
+ self.client_reference_information = attributes[:'clientReferenceInformation']
90
+ end
91
+
92
+ if attributes.has_key?(:'aggregatorInformation')
93
+ self.aggregator_information = attributes[:'aggregatorInformation']
94
+ end
95
+
96
+ if attributes.has_key?(:'consumerAuthenticationInformation')
97
+ self.consumer_authentication_information = attributes[:'consumerAuthenticationInformation']
98
+ end
99
+
100
+ if attributes.has_key?(:'deviceInformation')
101
+ self.device_information = attributes[:'deviceInformation']
102
+ end
103
+
104
+ if attributes.has_key?(:'installmentInformation')
105
+ self.installment_information = attributes[:'installmentInformation']
106
+ end
107
+
108
+ if attributes.has_key?(:'merchantInformation')
109
+ self.merchant_information = attributes[:'merchantInformation']
110
+ end
111
+
112
+ if attributes.has_key?(:'orderInformation')
113
+ self.order_information = attributes[:'orderInformation']
114
+ end
115
+
116
+ if attributes.has_key?(:'paymentInformation')
117
+ self.payment_information = attributes[:'paymentInformation']
118
+ end
119
+
120
+ if attributes.has_key?(:'processingInformation')
121
+ self.processing_information = attributes[:'processingInformation']
122
+ end
123
+ end
124
+
125
+ # Show invalid properties with the reasons. Usually used together with valid?
126
+ # @return Array for valid properties with the reasons
127
+ def list_invalid_properties
128
+ invalid_properties = Array.new
129
+ invalid_properties
130
+ end
131
+
132
+ # Check to see if the all the properties in the model are valid
133
+ # @return true if the model is valid
134
+ def valid?
135
+ true
136
+ end
137
+
138
+ # Checks equality by comparing each attribute.
139
+ # @param [Object] Object to be compared
140
+ def ==(o)
141
+ return true if self.equal?(o)
142
+ self.class == o.class &&
143
+ client_reference_information == o.client_reference_information &&
144
+ aggregator_information == o.aggregator_information &&
145
+ consumer_authentication_information == o.consumer_authentication_information &&
146
+ device_information == o.device_information &&
147
+ installment_information == o.installment_information &&
148
+ merchant_information == o.merchant_information &&
149
+ order_information == o.order_information &&
150
+ payment_information == o.payment_information &&
151
+ processing_information == o.processing_information
152
+ end
153
+
154
+ # @see the `==` method
155
+ # @param [Object] Object to be compared
156
+ def eql?(o)
157
+ self == o
158
+ end
159
+
160
+ # Calculates hash code according to all attributes.
161
+ # @return [Fixnum] Hash code
162
+ def hash
163
+ [client_reference_information, aggregator_information, consumer_authentication_information, device_information, installment_information, merchant_information, order_information, payment_information, processing_information].hash
164
+ end
165
+
166
+ # Builds the object from hash
167
+ # @param [Hash] attributes Model attributes in the form of hash
168
+ # @return [Object] Returns the model itself
169
+ def build_from_hash(attributes)
170
+ return nil unless attributes.is_a?(Hash)
171
+ self.class.swagger_types.each_pair do |key, type|
172
+ if type =~ /\AArray<(.*)>/i
173
+ # check to ensure the input is an array given that the the attribute
174
+ # is documented as an array but the input is not
175
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
176
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
177
+ end
178
+ elsif !attributes[self.class.attribute_map[key]].nil?
179
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
180
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
181
+ end
182
+
183
+ self
184
+ end
185
+
186
+ # Deserializes the data based on type
187
+ # @param string type Data type
188
+ # @param string value Value to be deserialized
189
+ # @return [Object] Deserialized data
190
+ def _deserialize(type, value)
191
+ case type.to_sym
192
+ when :DateTime
193
+ DateTime.parse(value)
194
+ when :Date
195
+ Date.parse(value)
196
+ when :String
197
+ value.to_s
198
+ when :Integer
199
+ value.to_i
200
+ when :Float
201
+ value.to_f
202
+ when :BOOLEAN
203
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
204
+ true
205
+ else
206
+ false
207
+ end
208
+ when :Object
209
+ # generic object (usually a Hash), return directly
210
+ value
211
+ when /\AArray<(?<inner_type>.+)>\z/
212
+ inner_type = Regexp.last_match[:inner_type]
213
+ value.map { |v| _deserialize(inner_type, v) }
214
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
215
+ k_type = Regexp.last_match[:k_type]
216
+ v_type = Regexp.last_match[:v_type]
217
+ {}.tap do |hash|
218
+ value.each do |k, v|
219
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
220
+ end
221
+ end
222
+ else # model
223
+ temp_model = CyberSource.const_get(type).new
224
+ temp_model.build_from_hash(value)
225
+ end
226
+ end
227
+
228
+ # Returns the string representation of the object
229
+ # @return [String] String presentation of the object
230
+ def to_s
231
+ to_hash.to_s
232
+ end
233
+
234
+ # to_body is an alias to to_hash (backward compatibility)
235
+ # @return [Hash] Returns the object in the form of hash
236
+ def to_body
237
+ to_hash
238
+ end
239
+
240
+ # Returns the object in the form of hash
241
+ # @return [Hash] Returns the object in the form of hash
242
+ def to_hash
243
+ hash = {}
244
+ self.class.attribute_map.each_pair do |attr, param|
245
+ value = self.send(attr)
246
+ next if value.nil?
247
+ hash[param] = _to_hash(value)
248
+ end
249
+ hash
250
+ end
251
+
252
+ # Outputs non-array value in the form of hash
253
+ # For object, use to_hash. Otherwise, just return the value
254
+ # @param [Object] value Any valid value
255
+ # @return [Hash] Returns the value in the form of hash
256
+ def _to_hash(value)
257
+ if value.is_a?(Array)
258
+ value.compact.map { |v| _to_hash(v) }
259
+ elsif value.is_a?(Hash)
260
+ {}.tap do |hash|
261
+ value.each { |k, v| hash[k] = _to_hash(v) }
262
+ end
263
+ elsif value.respond_to? :to_hash
264
+ value.to_hash
265
+ else
266
+ value
267
+ end
268
+ end
269
+ end
270
+ end
@@ -0,0 +1,239 @@
1
+ =begin
2
+ #CyberSource Merged Spec
3
+
4
+ #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
+
6
+ OpenAPI spec version: 0.0.1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.2.3
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CyberSource
16
+ class PtsV2CreditsPost201Response1
17
+ # An unique identification number generated by Cybersource to identify the submitted request. Returned by all services. It is also appended to the endpoint of the resource. On incremental authorizations, this value with be the same as the identification number returned in the original authorization response.
18
+ attr_accessor :id
19
+
20
+ # Time of request in UTC. Format: `YYYY-MM-DDThh:mm:ssZ` **Example** `2016-08-11T22:47:57Z` equals August 11, 2016, at 22:47:57 (10:47:57 p.m.). The `T` separates the date and the time. The `Z` indicates UTC. Returned by Cybersource for all services.
21
+ attr_accessor :submit_time_utc
22
+
23
+ # The status of the submitted transaction.
24
+ attr_accessor :status
25
+
26
+ attr_accessor :processor_information
27
+
28
+ attr_accessor :installment_information
29
+
30
+ # Attribute mapping from ruby-style variable name to JSON key.
31
+ def self.attribute_map
32
+ {
33
+ :'id' => :'id',
34
+ :'submit_time_utc' => :'submitTimeUtc',
35
+ :'status' => :'status',
36
+ :'processor_information' => :'processorInformation',
37
+ :'installment_information' => :'installmentInformation'
38
+ }
39
+ end
40
+
41
+ # Attribute mapping from JSON key to ruby-style variable name.
42
+ def self.json_map
43
+ {
44
+ :'id' => :'id',
45
+ :'submit_time_utc' => :'submit_time_utc',
46
+ :'status' => :'status',
47
+ :'processor_information' => :'processor_information',
48
+ :'installment_information' => :'installment_information'
49
+ }
50
+ end
51
+
52
+ # Attribute type mapping.
53
+ def self.swagger_types
54
+ {
55
+ :'id' => :'String',
56
+ :'submit_time_utc' => :'String',
57
+ :'status' => :'String',
58
+ :'processor_information' => :'PtsV2CreditsPost201Response1ProcessorInformation',
59
+ :'installment_information' => :'PtsV2CreditsPost201Response1InstallmentInformation'
60
+ }
61
+ end
62
+
63
+ # Initializes the object
64
+ # @param [Hash] attributes Model attributes in the form of hash
65
+ def initialize(attributes = {})
66
+ return unless attributes.is_a?(Hash)
67
+
68
+ # convert string to symbol for hash key
69
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
70
+
71
+ if attributes.has_key?(:'id')
72
+ self.id = attributes[:'id']
73
+ end
74
+
75
+ if attributes.has_key?(:'submitTimeUtc')
76
+ self.submit_time_utc = attributes[:'submitTimeUtc']
77
+ end
78
+
79
+ if attributes.has_key?(:'status')
80
+ self.status = attributes[:'status']
81
+ end
82
+
83
+ if attributes.has_key?(:'processorInformation')
84
+ self.processor_information = attributes[:'processorInformation']
85
+ end
86
+
87
+ if attributes.has_key?(:'installmentInformation')
88
+ self.installment_information = attributes[:'installmentInformation']
89
+ end
90
+ end
91
+
92
+ # Show invalid properties with the reasons. Usually used together with valid?
93
+ # @return Array for valid properties with the reasons
94
+ def list_invalid_properties
95
+ invalid_properties = Array.new
96
+ invalid_properties
97
+ end
98
+
99
+ # Check to see if the all the properties in the model are valid
100
+ # @return true if the model is valid
101
+ def valid?
102
+ true
103
+ end
104
+
105
+ # Custom attribute writer method with validation
106
+ # @param [Object] id Value to be assigned
107
+ def id=(id)
108
+ @id = id
109
+ end
110
+
111
+ # Checks equality by comparing each attribute.
112
+ # @param [Object] Object to be compared
113
+ def ==(o)
114
+ return true if self.equal?(o)
115
+ self.class == o.class &&
116
+ id == o.id &&
117
+ submit_time_utc == o.submit_time_utc &&
118
+ status == o.status &&
119
+ processor_information == o.processor_information &&
120
+ installment_information == o.installment_information
121
+ end
122
+
123
+ # @see the `==` method
124
+ # @param [Object] Object to be compared
125
+ def eql?(o)
126
+ self == o
127
+ end
128
+
129
+ # Calculates hash code according to all attributes.
130
+ # @return [Fixnum] Hash code
131
+ def hash
132
+ [id, submit_time_utc, status, processor_information, installment_information].hash
133
+ end
134
+
135
+ # Builds the object from hash
136
+ # @param [Hash] attributes Model attributes in the form of hash
137
+ # @return [Object] Returns the model itself
138
+ def build_from_hash(attributes)
139
+ return nil unless attributes.is_a?(Hash)
140
+ self.class.swagger_types.each_pair do |key, type|
141
+ if type =~ /\AArray<(.*)>/i
142
+ # check to ensure the input is an array given that the the attribute
143
+ # is documented as an array but the input is not
144
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
145
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
146
+ end
147
+ elsif !attributes[self.class.attribute_map[key]].nil?
148
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
149
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
150
+ end
151
+
152
+ self
153
+ end
154
+
155
+ # Deserializes the data based on type
156
+ # @param string type Data type
157
+ # @param string value Value to be deserialized
158
+ # @return [Object] Deserialized data
159
+ def _deserialize(type, value)
160
+ case type.to_sym
161
+ when :DateTime
162
+ DateTime.parse(value)
163
+ when :Date
164
+ Date.parse(value)
165
+ when :String
166
+ value.to_s
167
+ when :Integer
168
+ value.to_i
169
+ when :Float
170
+ value.to_f
171
+ when :BOOLEAN
172
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
173
+ true
174
+ else
175
+ false
176
+ end
177
+ when :Object
178
+ # generic object (usually a Hash), return directly
179
+ value
180
+ when /\AArray<(?<inner_type>.+)>\z/
181
+ inner_type = Regexp.last_match[:inner_type]
182
+ value.map { |v| _deserialize(inner_type, v) }
183
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
184
+ k_type = Regexp.last_match[:k_type]
185
+ v_type = Regexp.last_match[:v_type]
186
+ {}.tap do |hash|
187
+ value.each do |k, v|
188
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
189
+ end
190
+ end
191
+ else # model
192
+ temp_model = CyberSource.const_get(type).new
193
+ temp_model.build_from_hash(value)
194
+ end
195
+ end
196
+
197
+ # Returns the string representation of the object
198
+ # @return [String] String presentation of the object
199
+ def to_s
200
+ to_hash.to_s
201
+ end
202
+
203
+ # to_body is an alias to to_hash (backward compatibility)
204
+ # @return [Hash] Returns the object in the form of hash
205
+ def to_body
206
+ to_hash
207
+ end
208
+
209
+ # Returns the object in the form of hash
210
+ # @return [Hash] Returns the object in the form of hash
211
+ def to_hash
212
+ hash = {}
213
+ self.class.attribute_map.each_pair do |attr, param|
214
+ value = self.send(attr)
215
+ next if value.nil?
216
+ hash[param] = _to_hash(value)
217
+ end
218
+ hash
219
+ end
220
+
221
+ # Outputs non-array value in the form of hash
222
+ # For object, use to_hash. Otherwise, just return the value
223
+ # @param [Object] value Any valid value
224
+ # @return [Hash] Returns the value in the form of hash
225
+ def _to_hash(value)
226
+ if value.is_a?(Array)
227
+ value.compact.map { |v| _to_hash(v) }
228
+ elsif value.is_a?(Hash)
229
+ {}.tap do |hash|
230
+ value.each { |k, v| hash[k] = _to_hash(v) }
231
+ end
232
+ elsif value.respond_to? :to_hash
233
+ value.to_hash
234
+ else
235
+ value
236
+ end
237
+ end
238
+ end
239
+ end
@@ -0,0 +1,197 @@
1
+ =begin
2
+ #CyberSource Merged Spec
3
+
4
+ #All CyberSource API specs merged together. These are available at https://developer.cybersource.com/api/reference/api-reference.html
5
+
6
+ OpenAPI spec version: 0.0.1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.2.3
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CyberSource
16
+ class PtsV2CreditsPost201Response1InstallmentInformation
17
+ # Identifier
18
+ attr_accessor :identifier
19
+
20
+ # Attribute mapping from ruby-style variable name to JSON key.
21
+ def self.attribute_map
22
+ {
23
+ :'identifier' => :'identifier'
24
+ }
25
+ end
26
+
27
+ # Attribute mapping from JSON key to ruby-style variable name.
28
+ def self.json_map
29
+ {
30
+ :'identifier' => :'identifier'
31
+ }
32
+ end
33
+
34
+ # Attribute type mapping.
35
+ def self.swagger_types
36
+ {
37
+ :'identifier' => :'String'
38
+ }
39
+ end
40
+
41
+ # Initializes the object
42
+ # @param [Hash] attributes Model attributes in the form of hash
43
+ def initialize(attributes = {})
44
+ return unless attributes.is_a?(Hash)
45
+
46
+ # convert string to symbol for hash key
47
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
48
+
49
+ if attributes.has_key?(:'identifier')
50
+ self.identifier = attributes[:'identifier']
51
+ end
52
+ end
53
+
54
+ # Show invalid properties with the reasons. Usually used together with valid?
55
+ # @return Array for valid properties with the reasons
56
+ def list_invalid_properties
57
+ invalid_properties = Array.new
58
+ invalid_properties
59
+ end
60
+
61
+ # Check to see if the all the properties in the model are valid
62
+ # @return true if the model is valid
63
+ def valid?
64
+ true
65
+ end
66
+
67
+ # Custom attribute writer method with validation
68
+ # @param [Object] identifier Value to be assigned
69
+ def identifier=(identifier)
70
+ @identifier = identifier
71
+ end
72
+
73
+ # Checks equality by comparing each attribute.
74
+ # @param [Object] Object to be compared
75
+ def ==(o)
76
+ return true if self.equal?(o)
77
+ self.class == o.class &&
78
+ identifier == o.identifier
79
+ end
80
+
81
+ # @see the `==` method
82
+ # @param [Object] Object to be compared
83
+ def eql?(o)
84
+ self == o
85
+ end
86
+
87
+ # Calculates hash code according to all attributes.
88
+ # @return [Fixnum] Hash code
89
+ def hash
90
+ [identifier].hash
91
+ end
92
+
93
+ # Builds the object from hash
94
+ # @param [Hash] attributes Model attributes in the form of hash
95
+ # @return [Object] Returns the model itself
96
+ def build_from_hash(attributes)
97
+ return nil unless attributes.is_a?(Hash)
98
+ self.class.swagger_types.each_pair do |key, type|
99
+ if type =~ /\AArray<(.*)>/i
100
+ # check to ensure the input is an array given that the the attribute
101
+ # is documented as an array but the input is not
102
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
103
+ self.send("#{self.class.json_map[key]}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
104
+ end
105
+ elsif !attributes[self.class.attribute_map[key]].nil?
106
+ self.send("#{self.class.json_map[key]}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
107
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
108
+ end
109
+
110
+ self
111
+ end
112
+
113
+ # Deserializes the data based on type
114
+ # @param string type Data type
115
+ # @param string value Value to be deserialized
116
+ # @return [Object] Deserialized data
117
+ def _deserialize(type, value)
118
+ case type.to_sym
119
+ when :DateTime
120
+ DateTime.parse(value)
121
+ when :Date
122
+ Date.parse(value)
123
+ when :String
124
+ value.to_s
125
+ when :Integer
126
+ value.to_i
127
+ when :Float
128
+ value.to_f
129
+ when :BOOLEAN
130
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
131
+ true
132
+ else
133
+ false
134
+ end
135
+ when :Object
136
+ # generic object (usually a Hash), return directly
137
+ value
138
+ when /\AArray<(?<inner_type>.+)>\z/
139
+ inner_type = Regexp.last_match[:inner_type]
140
+ value.map { |v| _deserialize(inner_type, v) }
141
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
142
+ k_type = Regexp.last_match[:k_type]
143
+ v_type = Regexp.last_match[:v_type]
144
+ {}.tap do |hash|
145
+ value.each do |k, v|
146
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
147
+ end
148
+ end
149
+ else # model
150
+ temp_model = CyberSource.const_get(type).new
151
+ temp_model.build_from_hash(value)
152
+ end
153
+ end
154
+
155
+ # Returns the string representation of the object
156
+ # @return [String] String presentation of the object
157
+ def to_s
158
+ to_hash.to_s
159
+ end
160
+
161
+ # to_body is an alias to to_hash (backward compatibility)
162
+ # @return [Hash] Returns the object in the form of hash
163
+ def to_body
164
+ to_hash
165
+ end
166
+
167
+ # Returns the object in the form of hash
168
+ # @return [Hash] Returns the object in the form of hash
169
+ def to_hash
170
+ hash = {}
171
+ self.class.attribute_map.each_pair do |attr, param|
172
+ value = self.send(attr)
173
+ next if value.nil?
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
196
+ end
197
+ end