bleumi_pay_sdk_ruby 1.0.3 → 1.0.4
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.
- checksums.yaml +4 -4
- data/README.md +6 -7
- data/bleumi_pay_sdk_ruby.gemspec +3 -3
- data/docs/AlgorandBalance.md +27 -0
- data/docs/BadRequest.md +1 -1
- data/docs/Chain.md +4 -3
- data/docs/CheckoutToken.md +6 -3
- data/docs/CreateCheckoutUrlRequest.md +7 -7
- data/docs/CreatePaymentRequest.md +3 -3
- data/docs/CreatePaymentResponse.md +1 -1
- data/docs/CreatePayoutRequest.md +1 -1
- data/docs/CreatePayoutResponse.md +1 -1
- data/docs/EthereumBalance.md +29 -0
- data/docs/HostedCheckoutsApi.md +26 -12
- data/docs/PaginatedPaymentOperations.md +2 -3
- data/docs/PaginatedPayments.md +3 -3
- data/docs/PaginatedPayoutItems.md +1 -1
- data/docs/Payment.md +0 -1
- data/docs/PaymentAddresses.md +2 -1
- data/docs/PaymentBalances.md +2 -1
- data/docs/PaymentOperation.md +2 -2
- data/docs/PaymentOperationInputs.md +4 -4
- data/docs/PaymentRefundRequest.md +1 -2
- data/docs/PaymentSettleRequest.md +1 -1
- data/docs/PaymentsApi.md +17 -15
- data/docs/Payout.md +2 -1
- data/docs/PayoutItem.md +1 -1
- data/docs/PayoutItemInputs.md +1 -1
- data/docs/PayoutsApi.md +10 -10
- data/docs/ValidateCheckoutRequest.md +1 -1
- data/docs/WalletAddress.md +1 -0
- data/docs/WalletBalance.md +1 -1
- data/lib/bleumi_pay_sdk_ruby.rb +5 -5
- data/lib/bleumi_pay_sdk_ruby/api/hosted_checkouts_api.rb +17 -5
- data/lib/bleumi_pay_sdk_ruby/api/payments_api.rb +46 -17
- data/lib/bleumi_pay_sdk_ruby/api/payouts_api.rb +14 -6
- data/lib/bleumi_pay_sdk_ruby/api/request_validator.rb +264 -0
- data/lib/bleumi_pay_sdk_ruby/api_client.rb +3 -3
- data/lib/bleumi_pay_sdk_ruby/api_error.rb +2 -2
- data/lib/bleumi_pay_sdk_ruby/configuration.rb +3 -3
- data/lib/bleumi_pay_sdk_ruby/models/{token.rb → algorand_balance.rb} +43 -38
- data/lib/bleumi_pay_sdk_ruby/models/bad_request.rb +3 -3
- data/lib/bleumi_pay_sdk_ruby/models/chain.rb +4 -5
- data/lib/bleumi_pay_sdk_ruby/models/checkout_token.rb +28 -13
- data/lib/bleumi_pay_sdk_ruby/models/create_checkout_url_request.rb +19 -7
- data/lib/bleumi_pay_sdk_ruby/models/create_checkout_url_response.rb +2 -2
- data/lib/bleumi_pay_sdk_ruby/models/create_payment_request.rb +17 -5
- data/lib/bleumi_pay_sdk_ruby/models/create_payment_response.rb +2 -2
- data/lib/bleumi_pay_sdk_ruby/models/create_payout_request.rb +4 -3
- data/lib/bleumi_pay_sdk_ruby/models/create_payout_response.rb +2 -2
- data/lib/bleumi_pay_sdk_ruby/models/{network_balance.rb → ethereum_balance.rb} +13 -46
- data/lib/bleumi_pay_sdk_ruby/models/paginated_payment_operations.rb +2 -2
- data/lib/bleumi_pay_sdk_ruby/models/paginated_payments.rb +2 -2
- data/lib/bleumi_pay_sdk_ruby/models/paginated_payout_items.rb +2 -2
- data/lib/bleumi_pay_sdk_ruby/models/payment.rb +2 -2
- data/lib/bleumi_pay_sdk_ruby/models/payment_addresses.rb +17 -6
- data/lib/bleumi_pay_sdk_ruby/models/payment_balances.rb +15 -6
- data/lib/bleumi_pay_sdk_ruby/models/payment_operation.rb +4 -3
- data/lib/bleumi_pay_sdk_ruby/models/payment_operation_inputs.rb +3 -3
- data/lib/bleumi_pay_sdk_ruby/models/payment_operation_response.rb +2 -2
- data/lib/bleumi_pay_sdk_ruby/models/payment_refund_request.rb +3 -3
- data/lib/bleumi_pay_sdk_ruby/models/payment_settle_request.rb +3 -3
- data/lib/bleumi_pay_sdk_ruby/models/payout.rb +16 -6
- data/lib/bleumi_pay_sdk_ruby/models/payout_item.rb +2 -2
- data/lib/bleumi_pay_sdk_ruby/models/payout_item_inputs.rb +2 -2
- data/lib/bleumi_pay_sdk_ruby/models/validate_checkout_request.rb +2 -2
- data/lib/bleumi_pay_sdk_ruby/models/validate_checkout_response.rb +2 -2
- data/lib/bleumi_pay_sdk_ruby/models/wallet_address.rb +2 -2
- data/lib/bleumi_pay_sdk_ruby/models/wallet_balance.rb +2 -2
- data/lib/bleumi_pay_sdk_ruby/version.rb +3 -3
- data/py_create.rb +38 -0
- data/spec/api/payments_api_spec.rb +2 -2
- data/spec/models/algorand_balance_spec.rb +47 -0
- data/spec/models/ethereum_balance_spec.rb +59 -0
- metadata +14 -10
- data/docs/EthAddress.md +0 -13
- data/docs/NetworkBalance.md +0 -29
- data/docs/Token.md +0 -15
- data/lib/bleumi_pay_sdk_ruby/models/eth_address.rb +0 -208
@@ -1,7 +1,7 @@
|
|
1
1
|
=begin
|
2
|
-
#Bleumi Pay API
|
2
|
+
#Bleumi Pay REST API
|
3
3
|
|
4
|
-
#A simple and powerful REST API to integrate ERC-20, Ethereum, xDai payments and/or payouts into your business or application
|
4
|
+
#A simple and powerful REST API to integrate ERC-20, Ethereum, xDai, Algorand payments and/or payouts into your business or application
|
5
5
|
|
6
6
|
The version of the OpenAPI document: 1.0.0
|
7
7
|
Contact: info@bleumi.com
|
@@ -15,14 +15,16 @@ require 'cgi'
|
|
15
15
|
module BleumiPay
|
16
16
|
class PayoutsApi
|
17
17
|
attr_accessor :api_client
|
18
|
+
attr_accessor :request_validator
|
18
19
|
|
19
|
-
def initialize(api_client = ApiClient.default)
|
20
|
+
def initialize(api_client = ApiClient.default, request_validator = RequestValidator.default)
|
20
21
|
@api_client = api_client
|
22
|
+
@request_validator = request_validator
|
21
23
|
end
|
22
24
|
# Create a payout.
|
23
25
|
# @param create_payout_request [CreatePayoutRequest] Request body - used to specify payout creation parameters.
|
24
26
|
# @param [Hash] opts the optional parameters
|
25
|
-
# @option opts [Chain] :chain
|
27
|
+
# @option opts [Chain] :chain Network in which payment is to be created. Please refer documentation for Supported Networks
|
26
28
|
# @return [CreatePayoutResponse]
|
27
29
|
def create_payout(create_payout_request, opts = {})
|
28
30
|
data, _status_code, _headers = create_payout_with_http_info(create_payout_request, opts)
|
@@ -32,7 +34,7 @@ module BleumiPay
|
|
32
34
|
# Create a payout.
|
33
35
|
# @param create_payout_request [CreatePayoutRequest] Request body - used to specify payout creation parameters.
|
34
36
|
# @param [Hash] opts the optional parameters
|
35
|
-
# @option opts [Chain] :chain
|
37
|
+
# @option opts [Chain] :chain Network in which payment is to be created. Please refer documentation for Supported Networks
|
36
38
|
# @return [Array<(CreatePayoutResponse, Integer, Hash)>] CreatePayoutResponse data, response status code and response headers
|
37
39
|
def create_payout_with_http_info(create_payout_request, opts = {})
|
38
40
|
if @api_client.config.debugging
|
@@ -42,12 +44,18 @@ module BleumiPay
|
|
42
44
|
if @api_client.config.client_side_validation && create_payout_request.nil?
|
43
45
|
fail ArgumentError, "Missing the required parameter 'create_payout_request' when calling PayoutsApi.create_payout"
|
44
46
|
end
|
47
|
+
# verify the values in the request body are valid
|
48
|
+
chain = opts[:'chain'] if !opts[:'chain'].nil?
|
49
|
+
msg = @request_validator.validate_create_payout_request(create_payout_request, chain)
|
50
|
+
if (@request_validator.is_not_empty(msg))
|
51
|
+
fail ArgumentError, "`#{msg}` when calling PayoutsApi.create_payout"
|
52
|
+
end
|
45
53
|
# resource path
|
46
54
|
local_var_path = '/v1/payout'
|
47
55
|
|
48
56
|
# query parameters
|
49
57
|
query_params = opts[:query_params] || {}
|
50
|
-
query_params[:'chain'] =
|
58
|
+
query_params[:'chain'] = chain
|
51
59
|
|
52
60
|
# header parameters
|
53
61
|
header_params = opts[:header_params] || {}
|
@@ -0,0 +1,264 @@
|
|
1
|
+
=begin
|
2
|
+
#Bleumi Pay REST API
|
3
|
+
|
4
|
+
#A simple and powerful REST API to integrate ERC-20, Ethereum, xDai, Algorand payments and/or payouts into your business or application
|
5
|
+
|
6
|
+
Contact: info@bleumi.com
|
7
|
+
|
8
|
+
=end
|
9
|
+
module BleumiPay
|
10
|
+
class RequestValidator
|
11
|
+
|
12
|
+
def self.default
|
13
|
+
@@default ||= RequestValidator.new
|
14
|
+
end
|
15
|
+
|
16
|
+
def eth_address?(str)
|
17
|
+
# We use !! to convert the return value to a boolean
|
18
|
+
!!(str =~ /^0x[a-fA-F0-9]{40}$/)
|
19
|
+
end
|
20
|
+
|
21
|
+
def algo_address?(str)
|
22
|
+
# We use !! to convert the return value to a boolean
|
23
|
+
!!(str =~ /^[A-Z2-7+=*]{58}$/)
|
24
|
+
end
|
25
|
+
|
26
|
+
def is_not_empty(str)
|
27
|
+
if (str == nil || str == "") then
|
28
|
+
return false
|
29
|
+
end
|
30
|
+
return true
|
31
|
+
end
|
32
|
+
|
33
|
+
def check_eth_addr(name, input)
|
34
|
+
if !((eth_address?(input))||(input == "ETH")||(input == "XDAI")||(input == "XDAIT")) then
|
35
|
+
return "`#{name}` is not a valid Ethereum address"
|
36
|
+
end
|
37
|
+
return nil
|
38
|
+
end
|
39
|
+
|
40
|
+
def check_alg_addr(name, input)
|
41
|
+
if !((algo_address?(input))||(input == "ALGO")) then
|
42
|
+
return "`#{name}` is not a valid Algorand address"
|
43
|
+
end
|
44
|
+
return nil
|
45
|
+
end
|
46
|
+
|
47
|
+
def is_algo_network(chain)
|
48
|
+
return ((chain == "alg_mainnet")||(chain == "alg_testnet"))
|
49
|
+
end
|
50
|
+
|
51
|
+
def check_req_param(name, input)
|
52
|
+
if (input == nil || input == "")
|
53
|
+
return "Missing required parameter `#{name}`"
|
54
|
+
end
|
55
|
+
return nil
|
56
|
+
end
|
57
|
+
|
58
|
+
def check_network_addr(name, input, chain, mandatory)
|
59
|
+
if mandatory then
|
60
|
+
msg = check_req_param(name, input)
|
61
|
+
if is_not_empty(msg) then
|
62
|
+
return msg
|
63
|
+
end
|
64
|
+
end
|
65
|
+
if is_not_empty(input) then
|
66
|
+
msg = nil
|
67
|
+
if is_algo_network(chain) then
|
68
|
+
msg = check_alg_addr(name, input)
|
69
|
+
else
|
70
|
+
msg = check_eth_addr(name, input)
|
71
|
+
end
|
72
|
+
if is_not_empty(msg) then
|
73
|
+
return msg
|
74
|
+
end
|
75
|
+
end
|
76
|
+
return nil
|
77
|
+
end
|
78
|
+
|
79
|
+
def validate_create_payment_request(params, chain)
|
80
|
+
# check if chain is provided
|
81
|
+
msg = check_req_param("Chain", chain)
|
82
|
+
if is_not_empty(msg) then
|
83
|
+
return msg
|
84
|
+
end
|
85
|
+
# check if buyer_address is valid address in the network
|
86
|
+
msg = check_network_addr("BuyerAddress", params.buyer_address, chain, mandatory=true)
|
87
|
+
if is_not_empty(msg) then
|
88
|
+
return msg
|
89
|
+
end
|
90
|
+
# check if transfer_address is valid address in the network
|
91
|
+
msg = check_network_addr("TransferAddress", params.transfer_address, chain, mandatory=true)
|
92
|
+
if is_not_empty(msg) then
|
93
|
+
return msg
|
94
|
+
end
|
95
|
+
|
96
|
+
# check if token is valid address in the network (if provided)
|
97
|
+
if is_not_empty(params.token) then
|
98
|
+
msg = check_network_addr("Token", params.token, chain, mandatory=false)
|
99
|
+
if is_not_empty(msg) then
|
100
|
+
return msg
|
101
|
+
end
|
102
|
+
end
|
103
|
+
return nil
|
104
|
+
end
|
105
|
+
|
106
|
+
def validate_refund_payment_request(params, chain)
|
107
|
+
# check if chain is provided
|
108
|
+
msg = check_req_param("Chain", chain)
|
109
|
+
if is_not_empty(msg) then
|
110
|
+
return msg
|
111
|
+
end
|
112
|
+
# check if token is valid address in the network
|
113
|
+
msg = check_network_addr("Token", params.token, chain, mandatory=true)
|
114
|
+
if is_not_empty(msg) then
|
115
|
+
return msg
|
116
|
+
end
|
117
|
+
return nil
|
118
|
+
end
|
119
|
+
|
120
|
+
def validate_settle_payment_request(params, chain)
|
121
|
+
# check if chain is provided
|
122
|
+
msg = check_req_param("Chain", chain)
|
123
|
+
if is_not_empty(msg) then
|
124
|
+
return msg
|
125
|
+
end
|
126
|
+
# check if token is valid address in the network
|
127
|
+
msg = check_network_addr("Token", params.token, chain, mandatory=true)
|
128
|
+
if is_not_empty(msg) then
|
129
|
+
return msg
|
130
|
+
end
|
131
|
+
# check if amount to settle is provided
|
132
|
+
msg = check_req_param("Amount", params.amount)
|
133
|
+
if is_not_empty(msg) then
|
134
|
+
return msg
|
135
|
+
end
|
136
|
+
return nil
|
137
|
+
end
|
138
|
+
|
139
|
+
def validate_create_checkout_url_request(params)
|
140
|
+
# check if id is provided while creating checkout url
|
141
|
+
msg = check_req_param("Id", params.id)
|
142
|
+
if is_not_empty(msg) then
|
143
|
+
return msg
|
144
|
+
end
|
145
|
+
|
146
|
+
# check if currency is provided while creating checkout url
|
147
|
+
msg = check_req_param("Currency", params.currency)
|
148
|
+
if is_not_empty(msg) then
|
149
|
+
return msg
|
150
|
+
end
|
151
|
+
|
152
|
+
# check if amount is provided while creating checkout url
|
153
|
+
msg = check_req_param("Amount", params.amount)
|
154
|
+
if is_not_empty(msg) then
|
155
|
+
return msg
|
156
|
+
end
|
157
|
+
|
158
|
+
# check if cancel_url is provided while creating checkout url
|
159
|
+
msg = check_req_param("CancelUrl", params.cancel_url)
|
160
|
+
if is_not_empty(msg) then
|
161
|
+
return msg
|
162
|
+
end
|
163
|
+
|
164
|
+
# check if success_url is provided while creating checkout url
|
165
|
+
msg = check_req_param("SuccessUrl", params.success_url)
|
166
|
+
if is_not_empty(msg) then
|
167
|
+
return msg
|
168
|
+
end
|
169
|
+
|
170
|
+
# check if token is valid address in the network (if provided)
|
171
|
+
if is_not_empty(params.token) then
|
172
|
+
|
173
|
+
# check if chain is provided in the request, when token is provided, this is required
|
174
|
+
msg = check_req_param("Chain", params.chain)
|
175
|
+
if is_not_empty(msg) then
|
176
|
+
return msg
|
177
|
+
end
|
178
|
+
|
179
|
+
# check if token is valid address in the network (if provided)
|
180
|
+
msg = check_network_addr("Token", params.token, params.chain, mandatory=false)
|
181
|
+
if is_not_empty(msg) then
|
182
|
+
return msg
|
183
|
+
end
|
184
|
+
|
185
|
+
# check if buyer_address is valid address in the network (if provided)
|
186
|
+
if is_not_empty(params.buyer_address) then
|
187
|
+
msg = check_network_addr("BuyerAddress", params.buyer_address, params.chain, mandatory=false)
|
188
|
+
if is_not_empty(msg) then
|
189
|
+
return msg
|
190
|
+
end
|
191
|
+
end
|
192
|
+
end
|
193
|
+
return nil
|
194
|
+
end
|
195
|
+
|
196
|
+
def validate_checkout_payment_params(params)
|
197
|
+
|
198
|
+
# check if hmac_alg is provided while creating checkout payment parameters request
|
199
|
+
msg = check_req_param("HmacAlg", params.hmac_alg)
|
200
|
+
if is_not_empty(msg) then
|
201
|
+
return msg
|
202
|
+
end
|
203
|
+
|
204
|
+
# check if hmac_input is provided while creating checkout payment parameters request
|
205
|
+
msg = check_req_param("HmacInput", params.hmac_input)
|
206
|
+
if is_not_empty(msg) then
|
207
|
+
return msg
|
208
|
+
end
|
209
|
+
|
210
|
+
# check if hmac_key_id is provided while creating checkout payment parameters request
|
211
|
+
msg = check_req_param("HmacKeyId", params.hmac_key_id)
|
212
|
+
if is_not_empty(msg) then
|
213
|
+
return msg
|
214
|
+
end
|
215
|
+
|
216
|
+
# check if hmac_value is provided while creating checkout payment parameters request
|
217
|
+
msg = check_req_param("HmacValue", params.hmac_value)
|
218
|
+
if is_not_empty(msg) then
|
219
|
+
return msg
|
220
|
+
end
|
221
|
+
return nil
|
222
|
+
end
|
223
|
+
|
224
|
+
def validate_create_payout_request(params, chain)
|
225
|
+
msg = check_req_param("Chain", chain)
|
226
|
+
if is_not_empty(msg) then
|
227
|
+
return msg
|
228
|
+
end
|
229
|
+
# check if token is valid address in the network
|
230
|
+
msg = check_network_addr("Token", params.token, chain, mandatory=true)
|
231
|
+
if is_not_empty(msg) then
|
232
|
+
return msg
|
233
|
+
end
|
234
|
+
|
235
|
+
payouts = params.payouts
|
236
|
+
if payouts.length == 0 then
|
237
|
+
return "Payouts not defined."
|
238
|
+
end
|
239
|
+
|
240
|
+
for payout in payouts
|
241
|
+
# check if payout.transfer_address is valid address in the network
|
242
|
+
msg = check_network_addr("TransferAddress", payout.transfer_address, chain, mandatory=true)
|
243
|
+
if is_not_empty(msg) then
|
244
|
+
return msg
|
245
|
+
end
|
246
|
+
|
247
|
+
# check if payout.amount is provided for payout
|
248
|
+
msg = check_req_param("Amount", payout.amount)
|
249
|
+
if is_not_empty(msg) then
|
250
|
+
return msg
|
251
|
+
end
|
252
|
+
|
253
|
+
if is_algo_network(chain) then
|
254
|
+
# check if payout.authorization is provided for Algorand payout
|
255
|
+
msg = check_req_param("Authorization", payout.authorization)
|
256
|
+
if is_not_empty(msg) then
|
257
|
+
return msg
|
258
|
+
end
|
259
|
+
end
|
260
|
+
end
|
261
|
+
return nil
|
262
|
+
end
|
263
|
+
end
|
264
|
+
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
=begin
|
2
|
-
#Bleumi Pay API
|
2
|
+
#Bleumi Pay REST API
|
3
3
|
|
4
|
-
#A simple and powerful REST API to integrate ERC-20, Ethereum, xDai payments and/or payouts into your business or application
|
4
|
+
#A simple and powerful REST API to integrate ERC-20, Ethereum, xDai, Algorand payments and/or payouts into your business or application
|
5
5
|
|
6
6
|
The version of the OpenAPI document: 1.0.0
|
7
7
|
Contact: info@bleumi.com
|
@@ -30,7 +30,7 @@ module BleumiPay
|
|
30
30
|
# @option config [Configuration] Configuration for initializing the object, default to Configuration.default
|
31
31
|
def initialize(config = Configuration.default)
|
32
32
|
@config = config
|
33
|
-
@user_agent = "
|
33
|
+
@user_agent = "bleumi_pay_sdk_ruby/#{VERSION}/ruby"
|
34
34
|
@default_headers = {
|
35
35
|
'Content-Type' => 'application/json',
|
36
36
|
'User-Agent' => @user_agent
|
@@ -1,7 +1,7 @@
|
|
1
1
|
=begin
|
2
|
-
#Bleumi Pay API
|
2
|
+
#Bleumi Pay REST API
|
3
3
|
|
4
|
-
#A simple and powerful REST API to integrate ERC-20, Ethereum, xDai payments and/or payouts into your business or application
|
4
|
+
#A simple and powerful REST API to integrate ERC-20, Ethereum, xDai, Algorand payments and/or payouts into your business or application
|
5
5
|
|
6
6
|
The version of the OpenAPI document: 1.0.0
|
7
7
|
Contact: info@bleumi.com
|
@@ -1,7 +1,7 @@
|
|
1
1
|
=begin
|
2
|
-
#Bleumi Pay API
|
2
|
+
#Bleumi Pay REST API
|
3
3
|
|
4
|
-
#A simple and powerful REST API to integrate ERC-20, Ethereum, xDai payments and/or payouts into your business or application
|
4
|
+
#A simple and powerful REST API to integrate ERC-20, Ethereum, xDai, Algorand payments and/or payouts into your business or application
|
5
5
|
|
6
6
|
The version of the OpenAPI document: 1.0.0
|
7
7
|
Contact: info@bleumi.com
|
@@ -208,7 +208,7 @@ module BleumiPay
|
|
208
208
|
[
|
209
209
|
{
|
210
210
|
url: "https://api.pay.bleumi.com/",
|
211
|
-
description: "Bleumi Pay API",
|
211
|
+
description: "Bleumi Pay REST API",
|
212
212
|
}
|
213
213
|
]
|
214
214
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
=begin
|
2
|
-
#Bleumi Pay API
|
2
|
+
#Bleumi Pay REST API
|
3
3
|
|
4
|
-
#A simple and powerful REST API to integrate ERC-20, Ethereum, xDai payments and/or payouts into your business or application
|
4
|
+
#A simple and powerful REST API to integrate ERC-20, Ethereum, xDai, Algorand payments and/or payouts into your business or application
|
5
5
|
|
6
6
|
The version of the OpenAPI document: 1.0.0
|
7
7
|
Contact: info@bleumi.com
|
@@ -13,21 +13,24 @@ OpenAPI Generator version: 4.2.2
|
|
13
13
|
require 'date'
|
14
14
|
|
15
15
|
module BleumiPay
|
16
|
-
class
|
17
|
-
|
18
|
-
|
16
|
+
class AlgorandBalance
|
17
|
+
attr_accessor :alg_mainnet
|
18
|
+
|
19
|
+
attr_accessor :alg_testnet
|
19
20
|
|
20
21
|
# Attribute mapping from ruby-style variable name to JSON key.
|
21
22
|
def self.attribute_map
|
22
23
|
{
|
23
|
-
:'
|
24
|
+
:'alg_mainnet' => :'alg_mainnet',
|
25
|
+
:'alg_testnet' => :'alg_testnet'
|
24
26
|
}
|
25
27
|
end
|
26
28
|
|
27
29
|
# Attribute type mapping.
|
28
30
|
def self.openapi_types
|
29
31
|
{
|
30
|
-
:'
|
32
|
+
:'alg_mainnet' => :'Hash<String, WalletBalance>',
|
33
|
+
:'alg_testnet' => :'Hash<String, WalletBalance>'
|
31
34
|
}
|
32
35
|
end
|
33
36
|
|
@@ -37,46 +40,44 @@ module BleumiPay
|
|
37
40
|
])
|
38
41
|
end
|
39
42
|
|
40
|
-
def eth_address?(str)
|
41
|
-
# We use !! to convert the return value to a boolean
|
42
|
-
!!(str =~ /^0x[a-fA-F0-9]{40}$/)
|
43
|
-
end
|
44
|
-
|
45
43
|
# Initializes the object
|
46
44
|
# @param [Hash] attributes Model attributes in the form of hash
|
47
|
-
def initialize(
|
48
|
-
|
49
|
-
|
50
|
-
fail ArgumentError, "`#{value}` The input argument must be valid Ethereum Address `BleumiPay::EthAddress` initialize method"
|
45
|
+
def initialize(attributes = {})
|
46
|
+
if (!attributes.is_a?(Hash))
|
47
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `BleumiPay::AlgorandBalance` initialize method"
|
51
48
|
end
|
52
49
|
|
53
|
-
|
50
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
51
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
52
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
53
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `BleumiPay::AlgorandBalance`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
54
|
+
end
|
55
|
+
h[k.to_sym] = v
|
56
|
+
}
|
54
57
|
|
55
|
-
|
58
|
+
if attributes.key?(:'alg_mainnet')
|
59
|
+
if (value = attributes[:'alg_mainnet']).is_a?(Hash)
|
60
|
+
self.alg_mainnet = value
|
61
|
+
end
|
62
|
+
end
|
56
63
|
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
64
|
+
if attributes.key?(:'alg_testnet')
|
65
|
+
if (value = attributes[:'alg_testnet']).is_a?(Hash)
|
66
|
+
self.alg_testnet = value
|
67
|
+
end
|
61
68
|
end
|
62
|
-
@addr = new_addr
|
63
69
|
end
|
64
70
|
|
65
71
|
# Show invalid properties with the reasons. Usually used together with valid?
|
66
72
|
# @return Array for valid properties with the reasons
|
67
73
|
def list_invalid_properties
|
68
74
|
invalid_properties = Array.new
|
69
|
-
if @addr.nil?
|
70
|
-
invalid_properties.push('invalid value for "addr", addr cannot be nil.')
|
71
|
-
end
|
72
|
-
|
73
75
|
invalid_properties
|
74
76
|
end
|
75
77
|
|
76
78
|
# Check to see if the all the properties in the model are valid
|
77
79
|
# @return true if the model is valid
|
78
80
|
def valid?
|
79
|
-
return false if @addr.nil?
|
80
81
|
true
|
81
82
|
end
|
82
83
|
|
@@ -85,7 +86,8 @@ module BleumiPay
|
|
85
86
|
def ==(o)
|
86
87
|
return true if self.equal?(o)
|
87
88
|
self.class == o.class &&
|
88
|
-
|
89
|
+
alg_mainnet == o.alg_mainnet &&
|
90
|
+
alg_testnet == o.alg_testnet
|
89
91
|
end
|
90
92
|
|
91
93
|
# @see the `==` method
|
@@ -97,7 +99,7 @@ module BleumiPay
|
|
97
99
|
# Calculates hash code according to all attributes.
|
98
100
|
# @return [Integer] Hash code
|
99
101
|
def hash
|
100
|
-
[
|
102
|
+
[alg_mainnet, alg_testnet].hash
|
101
103
|
end
|
102
104
|
|
103
105
|
# Builds the object from hash
|
@@ -183,14 +185,17 @@ module BleumiPay
|
|
183
185
|
# Returns the object in the form of hash
|
184
186
|
# @return [Hash] Returns the object in the form of hash
|
185
187
|
def to_hash
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
188
|
+
hash = {}
|
189
|
+
self.class.attribute_map.each_pair do |attr, param|
|
190
|
+
value = self.send(attr)
|
191
|
+
if value.nil?
|
192
|
+
is_nullable = self.class.openapi_nullable.include?(attr)
|
193
|
+
next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
|
194
|
+
end
|
195
|
+
|
196
|
+
hash[param] = _to_hash(value)
|
197
|
+
end
|
198
|
+
hash
|
194
199
|
end
|
195
200
|
|
196
201
|
# Outputs non-array value in the form of hash
|