processout 2.15.1 → 2.16.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.
- checksums.yaml +4 -4
- data/lib/processout/balance.rb +81 -0
- data/lib/processout/balances.rb +111 -0
- data/lib/processout/networking/request.rb +1 -1
- data/lib/processout/token.rb +13 -0
- data/lib/processout/version.rb +1 -1
- data/lib/processout.rb +12 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 779ee1846ec8e9b73d6723ca8a356dc0bec6c6c1789365d0e7e3c46d99a04fa2
|
4
|
+
data.tar.gz: 4d1876dd17cc8913ee449c35909ea8c27f63aa39aa1c4b9562c426c6091827f2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dd40187eb822037e6914d2a43c28e4e1a7f4c60bf4c7e4d6e36fd4bfcd46817feca556a13d9deb779031d570816be5967145a620ac205fad1a7878a73ffd37bc
|
7
|
+
data.tar.gz: fe2ac4474ef41366774350e8c3c63dfc8d46fb562b4c373e2612541912774a6053f0b7d2c9e40f44c2aa948f7aa68818c8f5a3c0946464bf6009e1bbc0ef6e39
|
@@ -0,0 +1,81 @@
|
|
1
|
+
# The content of this file was automatically generated
|
2
|
+
|
3
|
+
require "cgi"
|
4
|
+
require "json"
|
5
|
+
require "processout/networking/request"
|
6
|
+
require "processout/networking/response"
|
7
|
+
|
8
|
+
module ProcessOut
|
9
|
+
class Balance
|
10
|
+
|
11
|
+
attr_reader :amount
|
12
|
+
attr_reader :currency
|
13
|
+
|
14
|
+
|
15
|
+
def amount=(val)
|
16
|
+
@amount = val
|
17
|
+
end
|
18
|
+
|
19
|
+
def currency=(val)
|
20
|
+
@currency = val
|
21
|
+
end
|
22
|
+
|
23
|
+
|
24
|
+
# Initializes the Balance object
|
25
|
+
# Params:
|
26
|
+
# +client+:: +ProcessOut+ client instance
|
27
|
+
# +data+:: data that can be used to fill the object
|
28
|
+
def initialize(client, data = {})
|
29
|
+
@client = client
|
30
|
+
|
31
|
+
self.amount = data.fetch(:amount, nil)
|
32
|
+
self.currency = data.fetch(:currency, nil)
|
33
|
+
|
34
|
+
end
|
35
|
+
|
36
|
+
# Create a new Balance using the current client
|
37
|
+
def new(data = {})
|
38
|
+
Balance.new(@client, data)
|
39
|
+
end
|
40
|
+
|
41
|
+
# Overrides the JSON marshaller to only send the fields we want
|
42
|
+
def to_json(options)
|
43
|
+
{
|
44
|
+
"amount": self.amount,
|
45
|
+
"currency": self.currency,
|
46
|
+
}.to_json
|
47
|
+
end
|
48
|
+
|
49
|
+
# Fills the object with data coming from the API
|
50
|
+
# Params:
|
51
|
+
# +data+:: +Hash+ of data coming from the API
|
52
|
+
def fill_with_data(data)
|
53
|
+
if data.nil?
|
54
|
+
return self
|
55
|
+
end
|
56
|
+
if data.include? "amount"
|
57
|
+
self.amount = data["amount"]
|
58
|
+
end
|
59
|
+
if data.include? "currency"
|
60
|
+
self.currency = data["currency"]
|
61
|
+
end
|
62
|
+
|
63
|
+
self
|
64
|
+
end
|
65
|
+
|
66
|
+
# Prefills the object with the data passed as parameters
|
67
|
+
# Params:
|
68
|
+
# +data+:: +Hash+ of data
|
69
|
+
def prefill(data)
|
70
|
+
if data.nil?
|
71
|
+
return self
|
72
|
+
end
|
73
|
+
self.amount = data.fetch(:amount, self.amount)
|
74
|
+
self.currency = data.fetch(:currency, self.currency)
|
75
|
+
|
76
|
+
self
|
77
|
+
end
|
78
|
+
|
79
|
+
|
80
|
+
end
|
81
|
+
end
|
@@ -0,0 +1,111 @@
|
|
1
|
+
# The content of this file was automatically generated
|
2
|
+
|
3
|
+
require "cgi"
|
4
|
+
require "json"
|
5
|
+
require "processout/networking/request"
|
6
|
+
require "processout/networking/response"
|
7
|
+
|
8
|
+
module ProcessOut
|
9
|
+
class Balances
|
10
|
+
|
11
|
+
attr_reader :vouchers
|
12
|
+
|
13
|
+
|
14
|
+
def vouchers=(val)
|
15
|
+
if val.nil?
|
16
|
+
@vouchers = []
|
17
|
+
return
|
18
|
+
end
|
19
|
+
|
20
|
+
if val.length > 0 and val[0].instance_of? Balance
|
21
|
+
@vouchers = val
|
22
|
+
else
|
23
|
+
l = Array.new
|
24
|
+
for v in val
|
25
|
+
obj = Balance.new(@client)
|
26
|
+
obj.fill_with_data(v)
|
27
|
+
l.push(obj)
|
28
|
+
end
|
29
|
+
@vouchers = l
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
33
|
+
|
34
|
+
|
35
|
+
# Initializes the Balances object
|
36
|
+
# Params:
|
37
|
+
# +client+:: +ProcessOut+ client instance
|
38
|
+
# +data+:: data that can be used to fill the object
|
39
|
+
def initialize(client, data = {})
|
40
|
+
@client = client
|
41
|
+
|
42
|
+
self.vouchers = data.fetch(:vouchers, nil)
|
43
|
+
|
44
|
+
end
|
45
|
+
|
46
|
+
# Create a new Balances using the current client
|
47
|
+
def new(data = {})
|
48
|
+
Balances.new(@client, data)
|
49
|
+
end
|
50
|
+
|
51
|
+
# Overrides the JSON marshaller to only send the fields we want
|
52
|
+
def to_json(options)
|
53
|
+
{
|
54
|
+
"vouchers": self.vouchers,
|
55
|
+
}.to_json
|
56
|
+
end
|
57
|
+
|
58
|
+
# Fills the object with data coming from the API
|
59
|
+
# Params:
|
60
|
+
# +data+:: +Hash+ of data coming from the API
|
61
|
+
def fill_with_data(data)
|
62
|
+
if data.nil?
|
63
|
+
return self
|
64
|
+
end
|
65
|
+
if data.include? "vouchers"
|
66
|
+
self.vouchers = data["vouchers"]
|
67
|
+
end
|
68
|
+
|
69
|
+
self
|
70
|
+
end
|
71
|
+
|
72
|
+
# Prefills the object with the data passed as parameters
|
73
|
+
# Params:
|
74
|
+
# +data+:: +Hash+ of data
|
75
|
+
def prefill(data)
|
76
|
+
if data.nil?
|
77
|
+
return self
|
78
|
+
end
|
79
|
+
self.vouchers = data.fetch(:vouchers, self.vouchers)
|
80
|
+
|
81
|
+
self
|
82
|
+
end
|
83
|
+
|
84
|
+
# Fetch a customer token's balance
|
85
|
+
# Params:
|
86
|
+
# +token_id+:: ID of the customer's token
|
87
|
+
# +options+:: +Hash+ of options
|
88
|
+
def find(token_id, options = {})
|
89
|
+
self.prefill(options)
|
90
|
+
|
91
|
+
request = Request.new(@client)
|
92
|
+
path = "/balances/tokens/" + CGI.escape(token_id) + ""
|
93
|
+
data = {
|
94
|
+
|
95
|
+
}
|
96
|
+
|
97
|
+
response = Response.new(request.get(path, data, options))
|
98
|
+
return_values = Array.new
|
99
|
+
|
100
|
+
body = response.body
|
101
|
+
body = body["balances"]
|
102
|
+
balances = Balances.new(@client)
|
103
|
+
return_values.push(balances.fill_with_data(body))
|
104
|
+
|
105
|
+
|
106
|
+
return_values[0]
|
107
|
+
end
|
108
|
+
|
109
|
+
|
110
|
+
end
|
111
|
+
end
|
@@ -13,7 +13,7 @@ module ProcessOut
|
|
13
13
|
req.basic_auth @client.project_id, @client.project_secret
|
14
14
|
req.content_type = "application/json"
|
15
15
|
req["API-Version"] = "1.4.0.0"
|
16
|
-
req["User-Agent"] = "ProcessOut Ruby-Bindings/2.
|
16
|
+
req["User-Agent"] = "ProcessOut Ruby-Bindings/2.16.0"
|
17
17
|
|
18
18
|
unless options.nil?
|
19
19
|
req["Idempotency-Key"] = options.fetch(:idempotency_key, "")
|
data/lib/processout/token.rb
CHANGED
@@ -27,6 +27,7 @@ module ProcessOut
|
|
27
27
|
attr_reader :description
|
28
28
|
attr_reader :invoice
|
29
29
|
attr_reader :invoice_id
|
30
|
+
attr_reader :manual_invoice_cancellation
|
30
31
|
|
31
32
|
|
32
33
|
def id=(val)
|
@@ -153,6 +154,10 @@ module ProcessOut
|
|
153
154
|
@invoice_id = val
|
154
155
|
end
|
155
156
|
|
157
|
+
def manual_invoice_cancellation=(val)
|
158
|
+
@manual_invoice_cancellation = val
|
159
|
+
end
|
160
|
+
|
156
161
|
|
157
162
|
# Initializes the Token object
|
158
163
|
# Params:
|
@@ -180,6 +185,7 @@ module ProcessOut
|
|
180
185
|
self.description = data.fetch(:description, nil)
|
181
186
|
self.invoice = data.fetch(:invoice, nil)
|
182
187
|
self.invoice_id = data.fetch(:invoice_id, nil)
|
188
|
+
self.manual_invoice_cancellation = data.fetch(:manual_invoice_cancellation, nil)
|
183
189
|
|
184
190
|
end
|
185
191
|
|
@@ -210,6 +216,7 @@ module ProcessOut
|
|
210
216
|
"description": self.description,
|
211
217
|
"invoice": self.invoice,
|
212
218
|
"invoice_id": self.invoice_id,
|
219
|
+
"manual_invoice_cancellation": self.manual_invoice_cancellation,
|
213
220
|
}.to_json
|
214
221
|
end
|
215
222
|
|
@@ -277,6 +284,9 @@ module ProcessOut
|
|
277
284
|
if data.include? "invoice_id"
|
278
285
|
self.invoice_id = data["invoice_id"]
|
279
286
|
end
|
287
|
+
if data.include? "manual_invoice_cancellation"
|
288
|
+
self.manual_invoice_cancellation = data["manual_invoice_cancellation"]
|
289
|
+
end
|
280
290
|
|
281
291
|
self
|
282
292
|
end
|
@@ -307,6 +317,7 @@ module ProcessOut
|
|
307
317
|
self.description = data.fetch(:description, self.description)
|
308
318
|
self.invoice = data.fetch(:invoice, self.invoice)
|
309
319
|
self.invoice_id = data.fetch(:invoice_id, self.invoice_id)
|
320
|
+
self.manual_invoice_cancellation = data.fetch(:manual_invoice_cancellation, self.manual_invoice_cancellation)
|
310
321
|
|
311
322
|
self
|
312
323
|
end
|
@@ -384,6 +395,8 @@ module ProcessOut
|
|
384
395
|
"return_url" => @return_url,
|
385
396
|
"cancel_url" => @cancel_url,
|
386
397
|
"description" => @description,
|
398
|
+
"invoice_id" => @invoice_id,
|
399
|
+
"manual_invoice_cancellation" => @manual_invoice_cancellation,
|
387
400
|
"source" => options.fetch(:source, nil),
|
388
401
|
"settings" => options.fetch(:settings, nil),
|
389
402
|
"device" => options.fetch(:device, nil),
|
data/lib/processout/version.rb
CHANGED
data/lib/processout.rb
CHANGED
@@ -4,6 +4,8 @@ require "processout/activity"
|
|
4
4
|
require "processout/addon"
|
5
5
|
require "processout/api_request"
|
6
6
|
require "processout/api_version"
|
7
|
+
require "processout/balances"
|
8
|
+
require "processout/balance"
|
7
9
|
require "processout/card"
|
8
10
|
require "processout/card_information"
|
9
11
|
require "processout/coupon"
|
@@ -69,6 +71,16 @@ module ProcessOut
|
|
69
71
|
obj = APIVersion.new(self, data)
|
70
72
|
end
|
71
73
|
|
74
|
+
# Create a new Balances instance
|
75
|
+
def balances(data = {})
|
76
|
+
obj = Balances.new(self, data)
|
77
|
+
end
|
78
|
+
|
79
|
+
# Create a new Balance instance
|
80
|
+
def balance(data = {})
|
81
|
+
obj = Balance.new(self, data)
|
82
|
+
end
|
83
|
+
|
72
84
|
# Create a new Card instance
|
73
85
|
def card(data = {})
|
74
86
|
obj = Card.new(self, data)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: processout
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.16.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Manuel HUEZ
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-02-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -75,6 +75,8 @@ files:
|
|
75
75
|
- lib/processout/addon.rb
|
76
76
|
- lib/processout/api_request.rb
|
77
77
|
- lib/processout/api_version.rb
|
78
|
+
- lib/processout/balance.rb
|
79
|
+
- lib/processout/balances.rb
|
78
80
|
- lib/processout/card.rb
|
79
81
|
- lib/processout/card_information.rb
|
80
82
|
- lib/processout/coupon.rb
|