killbill 3.2.2 → 3.2.3
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/.travis.yml +5 -2
- data/Jarfile +7 -7
- data/README.md +16 -4
- data/VERSION +1 -1
- data/gen_config/api.conf +48 -47
- data/gen_config/plugin_api.conf +17 -16
- data/generators/active_merchant/templates/.gitignore.rb +2 -2
- data/generators/active_merchant/templates/lib/api.rb +8 -0
- data/generators/active_merchant/templates/plugin.gemspec.rb +1 -0
- data/generators/active_merchant/templates/spec/base_plugin_spec.rb +1 -0
- data/generators/active_merchant/templates/spec/integration_spec.rb +5 -1
- data/killbill.gemspec +1 -0
- data/lib/killbill/creator.rb +9 -0
- data/lib/killbill/currency.rb +6 -0
- data/lib/killbill/gen/api/account_audit_logs_for_object_type.rb +9 -7
- data/lib/killbill/gen/api/catalog_user_api.rb +37 -4
- data/lib/killbill/gen/api/payment_api.rb +104 -0
- data/lib/killbill/gen/api/payment_gateway_api.rb +6 -3
- data/lib/killbill/gen/api/plan_phase.rb +1 -8
- data/lib/killbill/gen/api/price_list_set.rb +9 -7
- data/lib/killbill/gen/api/subscription.rb +20 -1
- data/lib/killbill/gen/api/tenant_user_api.rb +3 -3
- data/lib/killbill/gen/plugin-api/currency_plugin_with_events_api.rb +207 -0
- data/lib/killbill/gen/plugin-api/ext_bus_event.rb +7 -1
- data/lib/killbill/gen/plugin-api/invoice_plugin_with_events_api.rb +103 -0
- data/lib/killbill/gen/plugin-api/payment_plugin_with_events_api.rb +782 -0
- data/lib/killbill/gen/plugin-api/require_gen.rb +3 -0
- data/lib/killbill/helpers/active_merchant/configuration.rb +116 -46
- data/lib/killbill/helpers/active_merchant/killbill_spec_helper.rb +49 -32
- data/lib/killbill/helpers/active_merchant/payment_plugin.rb +18 -6
- data/lib/killbill/helpers/active_merchant/private_payment_plugin.rb +3 -3
- data/lib/killbill/helpers/active_merchant/utils.rb +37 -70
- data/lib/killbill/invoice.rb +6 -0
- data/lib/killbill/payment.rb +6 -0
- data/lib/killbill/plugin.rb +1 -1
- data/lib/killbill/rake_task.rb +1 -1
- data/spec/killbill/helpers/configuration_spec.rb +41 -5
- data/spec/killbill/helpers/payment_plugin_spec.rb +4 -1
- data/spec/killbill/helpers/private_payment_plugin_spec.rb +4 -2
- data/spec/killbill/helpers/utils_spec.rb +6 -6
- data/spec/killbill/invoice_plugin_api_spec.rb +1 -1
- data/spec/killbill/notification_plugin_api_spec.rb +1 -1
- data/spec/killbill/payment_plugin_api_spec.rb +1 -1
- metadata +19 -3
- data/lib/killbill/jnotification.rb +0 -31
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 81fd77593c6707e51b7365481f0796b8df77cd6c
|
4
|
+
data.tar.gz: 78da91e758f7cc14cf63ebe0b5581220dd52545f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d36c0fd012d95ea600cc317a8b7c23e1355987989d66b564e5ce54dd8d75c457f4d3ef757787c2db5f0bd3179464865e9235e42abb53c455e6eb583d13e0c263
|
7
|
+
data.tar.gz: 5510fa30a9acc0cc9ca5fc6cd15b0aef3f22d7cad6d7ba4385007a1ff88c20633a55466fdcc9bae41fe40b8896636179fa7d9c106116be88524e5250a47461e0
|
data/.travis.yml
CHANGED
@@ -5,8 +5,8 @@ notifications:
|
|
5
5
|
- kill-bill-commits@googlegroups.com
|
6
6
|
|
7
7
|
rvm:
|
8
|
-
- jruby-
|
9
|
-
- jruby-20mode
|
8
|
+
- jruby-1.7.16
|
9
|
+
- jruby-20mode # latest 1.7.x
|
10
10
|
- jruby-head
|
11
11
|
|
12
12
|
jdk:
|
@@ -17,3 +17,6 @@ jdk:
|
|
17
17
|
matrix:
|
18
18
|
allow_failures:
|
19
19
|
- rvm: jruby-head
|
20
|
+
exclude:
|
21
|
+
- rvm: jruby-head
|
22
|
+
jdk: openjdk6
|
data/Jarfile
CHANGED
@@ -1,9 +1,9 @@
|
|
1
|
-
jar 'org.kill-bill.billing:killbill-api', '0.
|
2
|
-
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-notification', '0.8.
|
3
|
-
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-payment', '0.8.
|
4
|
-
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-currency', '0.8.
|
5
|
-
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-retry', '0.8.
|
6
|
-
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-invoice', '0.8.
|
7
|
-
jar 'org.kill-bill.billing:killbill-util:tests', '0.
|
1
|
+
jar 'org.kill-bill.billing:killbill-api', '0.12.4'
|
2
|
+
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-notification', '0.8.3'
|
3
|
+
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-payment', '0.8.3'
|
4
|
+
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-currency', '0.8.3'
|
5
|
+
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-retry', '0.8.3'
|
6
|
+
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-invoice', '0.8.3'
|
7
|
+
jar 'org.kill-bill.billing:killbill-util:tests', '0.13.4'
|
8
8
|
jar 'org.mockito:mockito-all', '1.9.0'
|
9
9
|
jar 'javax.servlet:javax.servlet-api', '3.0.1'
|
data/README.md
CHANGED
@@ -4,14 +4,17 @@
|
|
4
4
|
killbill-plugin-framework-ruby
|
5
5
|
==============================
|
6
6
|
|
7
|
-
Framework to write
|
7
|
+
Framework to write Kill Bill plugins in Ruby.
|
8
8
|
|
9
9
|
There are various types of plugins one can write for Killbill:
|
10
10
|
|
11
|
-
|
12
|
-
|
11
|
+
* notifications plugins, which listen to external bus events and can react to it
|
12
|
+
* payment plugins, which issue payments against a payment gateway
|
13
|
+
* payment routing plugins, which modify the behavior of payments
|
14
|
+
* invoice plugins, which add line items during the creation of an invoice
|
15
|
+
* currency plugins, which return currency conversion information
|
13
16
|
|
14
|
-
|
17
|
+
All plugin types can interact with Kill Bill directly via APIs and expose HTTP endpoints.
|
15
18
|
|
16
19
|
How to write a Notification plugin
|
17
20
|
----------------------------------
|
@@ -140,6 +143,15 @@ In case the templates behind the generator change and you want to upgrade your p
|
|
140
143
|
generate command on top of your existing code. For each file, you'll be prompted whether you want to overwrite it, show a
|
141
144
|
diff, etc.
|
142
145
|
|
146
|
+
How to write an Invoice plugin
|
147
|
+
------------------------------
|
148
|
+
|
149
|
+
See the [killbill-invoice-test-plugin](https://github.com/killbill/killbill-invoice-test-plugin).
|
150
|
+
|
151
|
+
How to write a Currency plugin
|
152
|
+
------------------------------
|
153
|
+
|
154
|
+
See the [killbill-currency-plugin](https://github.com/killbill/killbill-currency-plugin).
|
143
155
|
|
144
156
|
How to expose HTTP endpoints
|
145
157
|
----------------------------
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.2.
|
1
|
+
3.2.3
|
data/gen_config/api.conf
CHANGED
@@ -1,48 +1,49 @@
|
|
1
|
-
-
|
2
|
-
|
3
|
-
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
org.killbill.billing
|
10
|
-
org.killbill.billing.account
|
11
|
-
org.killbill.billing.
|
12
|
-
org.killbill.billing.catalog
|
13
|
-
org.killbill.billing.
|
14
|
-
org.killbill.billing.entitlement
|
15
|
-
org.killbill.billing.entitlement.api
|
16
|
-
org.killbill.billing.
|
17
|
-
org.killbill.billing.invoice
|
18
|
-
org.killbill.billing.invoice.api
|
19
|
-
org.killbill.billing.
|
20
|
-
org.killbill.billing.junction
|
21
|
-
org.killbill.billing.
|
22
|
-
org.killbill.billing.osgi
|
23
|
-
org.killbill.billing.osgi.api
|
24
|
-
org.killbill.billing.
|
25
|
-
org.killbill.billing.payment
|
26
|
-
org.killbill.billing.
|
27
|
-
org.killbill.billing.subscription
|
28
|
-
org.killbill.billing.subscription.api
|
29
|
-
org.killbill.billing.
|
30
|
-
org.killbill.billing.tenant
|
31
|
-
org.killbill.billing.
|
32
|
-
org.killbill.billing.usage
|
33
|
-
org.killbill.billing.
|
34
|
-
org.killbill.billing.util
|
35
|
-
org.killbill.billing.util.
|
36
|
-
org.killbill.billing.util.
|
37
|
-
org.killbill.billing.util.
|
38
|
-
org.killbill.billing.util.
|
39
|
-
org.killbill.billing.util.
|
40
|
-
org.killbill.billing.
|
41
|
-
org.killbill.billing.
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
1
|
+
java -cp target/killbill-java-parser-0.0.1-SNAPSHOT.jar com.ning.killbill.KillbillParser \
|
2
|
+
-i \
|
3
|
+
file:///PATH_TO_REPO/killbill-api/src/main/java/ \
|
4
|
+
-o \
|
5
|
+
/tmp/output \
|
6
|
+
-t \
|
7
|
+
JRUBY_PLUGIN \
|
8
|
+
-q \
|
9
|
+
org.killbill.billing, \
|
10
|
+
org.killbill.billing.account, \
|
11
|
+
org.killbill.billing.account.api, \
|
12
|
+
org.killbill.billing.catalog, \
|
13
|
+
org.killbill.billing.catalog.api, \
|
14
|
+
org.killbill.billing.entitlement, \
|
15
|
+
org.killbill.billing.entitlement.api, \
|
16
|
+
org.killbill.billing.entitlement.api.user, \
|
17
|
+
org.killbill.billing.invoice, \
|
18
|
+
org.killbill.billing.invoice.api, \
|
19
|
+
org.killbill.billing.invoice.api.formatters, \
|
20
|
+
org.killbill.billing.junction, \
|
21
|
+
org.killbill.billing.junction.api, \
|
22
|
+
org.killbill.billing.osgi, \
|
23
|
+
org.killbill.billing.osgi.api, \
|
24
|
+
org.killbill.billing.osgi.api.config, \
|
25
|
+
org.killbill.billing.payment, \
|
26
|
+
org.killbill.billing.payment.api, \
|
27
|
+
org.killbill.billing.subscription, \
|
28
|
+
org.killbill.billing.subscription.api, \
|
29
|
+
org.killbill.billing.subscription.api.user, \
|
30
|
+
org.killbill.billing.tenant, \
|
31
|
+
org.killbill.billing.tenant.api, \
|
32
|
+
org.killbill.billing.usage, \
|
33
|
+
org.killbill.billing.usage.api, \
|
34
|
+
org.killbill.billing.util, \
|
35
|
+
org.killbill.billing.util.api, \
|
36
|
+
org.killbill.billing.util.audit, \
|
37
|
+
org.killbill.billing.util.callcontext, \
|
38
|
+
org.killbill.billing.util.customfield, \
|
39
|
+
org.killbill.billing.util.entity, \
|
40
|
+
org.killbill.billing.util.tag, \
|
41
|
+
org.killbill.billing.security, \
|
42
|
+
org.killbill.billing.currency.api \
|
43
|
+
-x \
|
44
|
+
ExportUserApi, \
|
45
|
+
PluginConfig, \
|
46
|
+
PluginJavaConfig, \
|
47
|
+
PluginRubyConfig \
|
48
|
+
-m \
|
48
49
|
JRUBY_API
|
data/gen_config/plugin_api.conf
CHANGED
@@ -1,18 +1,19 @@
|
|
1
|
-
-
|
2
|
-
|
3
|
-
file:///PATH_TO_REPO/killbill-plugin-api/
|
4
|
-
file:///PATH_TO_REPO/killbill-plugin-api/
|
5
|
-
file:///PATH_TO_REPO/killbill-plugin-api/
|
6
|
-
file:///PATH_TO_REPO/killbill-api/src/main/java
|
7
|
-
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
org.killbill.billing.
|
14
|
-
org.killbill.billing.
|
15
|
-
org.killbill.billing.
|
16
|
-
|
1
|
+
java -cp target/killbill-java-parser-0.0.1-SNAPSHOT.jar com.ning.killbill.KillbillParser \
|
2
|
+
-i \
|
3
|
+
file:///PATH_TO_REPO/killbill-plugin-api/payment/src/main/java, \
|
4
|
+
file:///PATH_TO_REPO/killbill-plugin-api/notification/src/main/java, \
|
5
|
+
file:///PATH_TO_REPO/killbill-plugin-api/invoice/src/main/java, \
|
6
|
+
file:///PATH_TO_REPO/killbill-plugin-api/currency/src/main/java, \
|
7
|
+
file:///PATH_TO_REPO/killbill-api/src/main/java/ \
|
8
|
+
-o \
|
9
|
+
/tmp/output \
|
10
|
+
-t \
|
11
|
+
JRUBY_PLUGIN \
|
12
|
+
-q \
|
13
|
+
org.killbill.billing.payment.plugin.api, \
|
14
|
+
org.killbill.billing.notification.plugin.api, \
|
15
|
+
org.killbill.billing.invoice.plugin.api \
|
16
|
+
org.killbill.billing.currency.plugin.api \
|
17
|
+
-m \
|
17
18
|
JRUBY_PLUGIN_API
|
18
19
|
|
@@ -15,6 +15,14 @@ module Killbill #:nodoc:
|
|
15
15
|
::Killbill::<%= class_name %>::<%= class_name %>Response)
|
16
16
|
end
|
17
17
|
|
18
|
+
def on_event(event)
|
19
|
+
# Require to deal with per tenant configuration invalidation
|
20
|
+
super(event)
|
21
|
+
#
|
22
|
+
# Custom event logic could be added below...
|
23
|
+
#
|
24
|
+
end
|
25
|
+
|
18
26
|
def authorize_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
|
19
27
|
# Pass extra parameters for the gateway here
|
20
28
|
options = {}
|
@@ -32,6 +32,7 @@ Gem::Specification.new do |s|
|
|
32
32
|
s.add_dependency 'money', '~> 6.1.1'
|
33
33
|
s.add_dependency 'monetize', '~> 0.3.0'
|
34
34
|
s.add_dependency 'sinatra', '~> 1.3.4'
|
35
|
+
s.add_dependency 'thread_safe', '~> 0.3.4'
|
35
36
|
if defined?(JRUBY_VERSION)
|
36
37
|
s.add_dependency 'activerecord-jdbcmysql-adapter', '~> 1.3.7'
|
37
38
|
# Required to avoid errors like java.lang.NoClassDefFoundError: org/bouncycastle/asn1/DERBoolean
|
@@ -19,6 +19,7 @@ describe Killbill::<%= class_name %>::PaymentPlugin do
|
|
19
19
|
@plugin.logger.level = Logger::INFO
|
20
20
|
@plugin.conf_dir = File.dirname(file)
|
21
21
|
@plugin.kb_apis = Killbill::Plugin::KillbillApi.new('<%= identifier %>', {})
|
22
|
+
@plugin.root = '/foo/killbill-<%= identifier %>/0.0.1'
|
22
23
|
|
23
24
|
# Start the plugin here - since the config file will be deleted
|
24
25
|
@plugin.start_plugin
|
@@ -11,7 +11,9 @@ describe Killbill::<%= class_name %>::PaymentPlugin do
|
|
11
11
|
|
12
12
|
@account_api = ::Killbill::Plugin::ActiveMerchant::RSpec::FakeJavaUserAccountApi.new
|
13
13
|
@payment_api = ::Killbill::Plugin::ActiveMerchant::RSpec::FakeJavaPaymentApi.new
|
14
|
-
|
14
|
+
@tenant_api = ::Killbill::Plugin::ActiveMerchant::RSpec::FakeJavaTenantUserApi.new({})
|
15
|
+
|
16
|
+
svcs = {:account_user_api => @account_api, :payment_api => @payment_api, :tenant_user_api => @tenant_api}
|
15
17
|
@plugin.kb_apis = Killbill::Plugin::KillbillApi.new('<%= identifier %>', svcs)
|
16
18
|
|
17
19
|
@call_context = ::Killbill::Plugin::Model::CallContext.new
|
@@ -21,6 +23,8 @@ describe Killbill::<%= class_name %>::PaymentPlugin do
|
|
21
23
|
@plugin.logger = Logger.new(STDOUT)
|
22
24
|
@plugin.logger.level = Logger::INFO
|
23
25
|
@plugin.conf_dir = File.expand_path(File.dirname(__FILE__) + '../../../../')
|
26
|
+
@plugin.root = '/foo/killbill-<%= identifier %>/0.0.1'
|
27
|
+
|
24
28
|
@plugin.start_plugin
|
25
29
|
|
26
30
|
@properties = []
|
data/killbill.gemspec
CHANGED
@@ -25,6 +25,7 @@ Gem::Specification.new do |s|
|
|
25
25
|
s.add_dependency 'sinatra', '~> 1.3.4'
|
26
26
|
s.add_dependency 'typhoeus', '~> 0.6.9'
|
27
27
|
s.add_dependency 'tzinfo', '~> 1.1.0'
|
28
|
+
s.add_dependency 'thread_safe', '~> 0.3.4'
|
28
29
|
|
29
30
|
s.add_development_dependency 'activerecord', '~> 4.1.0'
|
30
31
|
if defined?(JRUBY_VERSION)
|
data/lib/killbill/creator.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'java'
|
2
|
+
require 'pathname'
|
2
3
|
|
3
4
|
require 'killbill/killbill_api'
|
4
5
|
|
@@ -19,6 +20,7 @@ module Killbill
|
|
19
20
|
|
20
21
|
plugin_delegate = real_class.new
|
21
22
|
plugin_delegate.root = services.delete("root")
|
23
|
+
plugin_delegate.plugin_name = extract_plugin_name(plugin_delegate.root)
|
22
24
|
plugin_delegate.logger = services.delete("logger")
|
23
25
|
plugin_delegate.conf_dir = services.delete("conf_dir")
|
24
26
|
# At this point we removed everything from the map which is not API, so we can build the APIs
|
@@ -28,6 +30,13 @@ module Killbill
|
|
28
30
|
end
|
29
31
|
|
30
32
|
|
33
|
+
private
|
34
|
+
|
35
|
+
def extract_plugin_name(root)
|
36
|
+
p = Pathname.new(root)
|
37
|
+
p.split[0].split[-1].to_s
|
38
|
+
end
|
39
|
+
|
31
40
|
end
|
32
41
|
end
|
33
42
|
end
|
data/lib/killbill/currency.rb
CHANGED
@@ -34,18 +34,20 @@ module Killbill
|
|
34
34
|
|
35
35
|
include org.killbill.billing.util.audit.AccountAuditLogsForObjectType
|
36
36
|
|
37
|
+
attr_accessor
|
38
|
+
|
37
39
|
def initialize()
|
38
40
|
end
|
39
41
|
|
40
42
|
def to_java()
|
41
|
-
|
42
|
-
end
|
43
|
-
|
44
|
-
def to_ruby(j_obj)
|
45
|
-
self
|
46
|
-
end
|
47
|
-
|
43
|
+
self
|
48
44
|
end
|
45
|
+
|
46
|
+
def to_ruby(j_obj)
|
47
|
+
self
|
49
48
|
end
|
49
|
+
|
50
50
|
end
|
51
51
|
end
|
52
|
+
end
|
53
|
+
end
|
@@ -47,10 +47,43 @@ module Killbill
|
|
47
47
|
|
48
48
|
# conversion for context [type = org.killbill.billing.util.callcontext.TenantContext]
|
49
49
|
context = context.to_java unless context.nil?
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
50
|
+
begin
|
51
|
+
res = @real_java_api.get_catalog(catalogName, context)
|
52
|
+
# conversion for res [type = org.killbill.billing.catalog.api.Catalog]
|
53
|
+
res = Killbill::Plugin::Model::Catalog.new.to_ruby(res) unless res.nil?
|
54
|
+
return res
|
55
|
+
rescue Java::org.killbill.billing.catalog.api.CatalogApiException => e
|
56
|
+
raise Killbill::Plugin::Model::CatalogApiException.new.to_ruby(e)
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
java_signature 'Java::org.killbill.billing.catalog.api.StaticCatalog getCurrentCatalog(Java::java.lang.String, Java::org.killbill.billing.util.callcontext.TenantContext)'
|
61
|
+
def get_current_catalog(catalogName, context)
|
62
|
+
|
63
|
+
# conversion for catalogName [type = java.lang.String]
|
64
|
+
catalogName = catalogName.to_s unless catalogName.nil?
|
65
|
+
|
66
|
+
# conversion for context [type = org.killbill.billing.util.callcontext.TenantContext]
|
67
|
+
context = context.to_java unless context.nil?
|
68
|
+
begin
|
69
|
+
res = @real_java_api.get_current_catalog(catalogName, context)
|
70
|
+
# conversion for res [type = org.killbill.billing.catalog.api.StaticCatalog]
|
71
|
+
res = Killbill::Plugin::Model::StaticCatalog.new.to_ruby(res) unless res.nil?
|
72
|
+
return res
|
73
|
+
rescue Java::org.killbill.billing.catalog.api.CatalogApiException => e
|
74
|
+
raise Killbill::Plugin::Model::CatalogApiException.new.to_ruby(e)
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
78
|
+
java_signature 'Java::void uploadCatalog(Java::java.lang.String, Java::org.killbill.billing.util.callcontext.CallContext)'
|
79
|
+
def upload_catalog(catalogXML, context)
|
80
|
+
|
81
|
+
# conversion for catalogXML [type = java.lang.String]
|
82
|
+
catalogXML = catalogXML.to_s unless catalogXML.nil?
|
83
|
+
|
84
|
+
# conversion for context [type = org.killbill.billing.util.callcontext.CallContext]
|
85
|
+
context = context.to_java unless context.nil?
|
86
|
+
@real_java_api.upload_catalog(catalogXML, context)
|
54
87
|
end
|
55
88
|
end
|
56
89
|
end
|
@@ -88,6 +88,58 @@ module Killbill
|
|
88
88
|
end
|
89
89
|
end
|
90
90
|
|
91
|
+
java_signature 'Java::org.killbill.billing.payment.api.Payment createAuthorizationWithPaymentControl(Java::org.killbill.billing.account.api.Account, Java::java.util.UUID, Java::java.util.UUID, Java::java.math.BigDecimal, Java::org.killbill.billing.catalog.api.Currency, Java::java.lang.String, Java::java.lang.String, Java::java.lang.Iterable, Java::org.killbill.billing.payment.api.PaymentOptions, Java::org.killbill.billing.util.callcontext.CallContext)'
|
92
|
+
def create_authorization_with_payment_control(account, paymentMethodId, paymentId, amount, currency, paymentExternalKey, paymentTransactionExternalKey, properties, paymentOptions, context)
|
93
|
+
|
94
|
+
# conversion for account [type = org.killbill.billing.account.api.Account]
|
95
|
+
account = account.to_java unless account.nil?
|
96
|
+
|
97
|
+
# conversion for paymentMethodId [type = java.util.UUID]
|
98
|
+
paymentMethodId = java.util.UUID.fromString(paymentMethodId.to_s) unless paymentMethodId.nil?
|
99
|
+
|
100
|
+
# conversion for paymentId [type = java.util.UUID]
|
101
|
+
paymentId = java.util.UUID.fromString(paymentId.to_s) unless paymentId.nil?
|
102
|
+
|
103
|
+
# conversion for amount [type = java.math.BigDecimal]
|
104
|
+
if amount.nil?
|
105
|
+
amount = java.math.BigDecimal::ZERO
|
106
|
+
else
|
107
|
+
amount = java.math.BigDecimal.new(amount.to_s)
|
108
|
+
end
|
109
|
+
|
110
|
+
# conversion for currency [type = org.killbill.billing.catalog.api.Currency]
|
111
|
+
currency = Java::org.killbill.billing.catalog.api.Currency.value_of("#{currency.to_s}") unless currency.nil?
|
112
|
+
|
113
|
+
# conversion for paymentExternalKey [type = java.lang.String]
|
114
|
+
paymentExternalKey = paymentExternalKey.to_s unless paymentExternalKey.nil?
|
115
|
+
|
116
|
+
# conversion for paymentTransactionExternalKey [type = java.lang.String]
|
117
|
+
paymentTransactionExternalKey = paymentTransactionExternalKey.to_s unless paymentTransactionExternalKey.nil?
|
118
|
+
|
119
|
+
# conversion for properties [type = java.lang.Iterable]
|
120
|
+
tmp = java.util.ArrayList.new
|
121
|
+
(properties || []).each do |m|
|
122
|
+
# conversion for m [type = org.killbill.billing.payment.api.PluginProperty]
|
123
|
+
m = m.to_java unless m.nil?
|
124
|
+
tmp.add(m)
|
125
|
+
end
|
126
|
+
properties = tmp
|
127
|
+
|
128
|
+
# conversion for paymentOptions [type = org.killbill.billing.payment.api.PaymentOptions]
|
129
|
+
paymentOptions = paymentOptions.to_java unless paymentOptions.nil?
|
130
|
+
|
131
|
+
# conversion for context [type = org.killbill.billing.util.callcontext.CallContext]
|
132
|
+
context = context.to_java unless context.nil?
|
133
|
+
begin
|
134
|
+
res = @real_java_api.create_authorization_with_payment_control(account, paymentMethodId, paymentId, amount, currency, paymentExternalKey, paymentTransactionExternalKey, properties, paymentOptions, context)
|
135
|
+
# conversion for res [type = org.killbill.billing.payment.api.Payment]
|
136
|
+
res = Killbill::Plugin::Model::Payment.new.to_ruby(res) unless res.nil?
|
137
|
+
return res
|
138
|
+
rescue Java::org.killbill.billing.payment.api.PaymentApiException => e
|
139
|
+
raise Killbill::Plugin::Model::PaymentApiException.new.to_ruby(e)
|
140
|
+
end
|
141
|
+
end
|
142
|
+
|
91
143
|
java_signature 'Java::org.killbill.billing.payment.api.Payment createCapture(Java::org.killbill.billing.account.api.Account, Java::java.util.UUID, Java::java.math.BigDecimal, Java::org.killbill.billing.catalog.api.Currency, Java::java.lang.String, Java::java.lang.Iterable, Java::org.killbill.billing.util.callcontext.CallContext)'
|
92
144
|
def create_capture(account, paymentId, amount, currency, paymentTransactionExternalKey, properties, context)
|
93
145
|
|
@@ -403,6 +455,58 @@ module Killbill
|
|
403
455
|
end
|
404
456
|
end
|
405
457
|
|
458
|
+
java_signature 'Java::org.killbill.billing.payment.api.Payment createCreditWithPaymentControl(Java::org.killbill.billing.account.api.Account, Java::java.util.UUID, Java::java.util.UUID, Java::java.math.BigDecimal, Java::org.killbill.billing.catalog.api.Currency, Java::java.lang.String, Java::java.lang.String, Java::java.lang.Iterable, Java::org.killbill.billing.payment.api.PaymentOptions, Java::org.killbill.billing.util.callcontext.CallContext)'
|
459
|
+
def create_credit_with_payment_control(account, paymentMethodId, paymentId, amount, currency, paymentExternalKey, paymentTransactionExternalKey, properties, paymentOptions, context)
|
460
|
+
|
461
|
+
# conversion for account [type = org.killbill.billing.account.api.Account]
|
462
|
+
account = account.to_java unless account.nil?
|
463
|
+
|
464
|
+
# conversion for paymentMethodId [type = java.util.UUID]
|
465
|
+
paymentMethodId = java.util.UUID.fromString(paymentMethodId.to_s) unless paymentMethodId.nil?
|
466
|
+
|
467
|
+
# conversion for paymentId [type = java.util.UUID]
|
468
|
+
paymentId = java.util.UUID.fromString(paymentId.to_s) unless paymentId.nil?
|
469
|
+
|
470
|
+
# conversion for amount [type = java.math.BigDecimal]
|
471
|
+
if amount.nil?
|
472
|
+
amount = java.math.BigDecimal::ZERO
|
473
|
+
else
|
474
|
+
amount = java.math.BigDecimal.new(amount.to_s)
|
475
|
+
end
|
476
|
+
|
477
|
+
# conversion for currency [type = org.killbill.billing.catalog.api.Currency]
|
478
|
+
currency = Java::org.killbill.billing.catalog.api.Currency.value_of("#{currency.to_s}") unless currency.nil?
|
479
|
+
|
480
|
+
# conversion for paymentExternalKey [type = java.lang.String]
|
481
|
+
paymentExternalKey = paymentExternalKey.to_s unless paymentExternalKey.nil?
|
482
|
+
|
483
|
+
# conversion for paymentTransactionExternalKey [type = java.lang.String]
|
484
|
+
paymentTransactionExternalKey = paymentTransactionExternalKey.to_s unless paymentTransactionExternalKey.nil?
|
485
|
+
|
486
|
+
# conversion for properties [type = java.lang.Iterable]
|
487
|
+
tmp = java.util.ArrayList.new
|
488
|
+
(properties || []).each do |m|
|
489
|
+
# conversion for m [type = org.killbill.billing.payment.api.PluginProperty]
|
490
|
+
m = m.to_java unless m.nil?
|
491
|
+
tmp.add(m)
|
492
|
+
end
|
493
|
+
properties = tmp
|
494
|
+
|
495
|
+
# conversion for paymentOptions [type = org.killbill.billing.payment.api.PaymentOptions]
|
496
|
+
paymentOptions = paymentOptions.to_java unless paymentOptions.nil?
|
497
|
+
|
498
|
+
# conversion for context [type = org.killbill.billing.util.callcontext.CallContext]
|
499
|
+
context = context.to_java unless context.nil?
|
500
|
+
begin
|
501
|
+
res = @real_java_api.create_credit_with_payment_control(account, paymentMethodId, paymentId, amount, currency, paymentExternalKey, paymentTransactionExternalKey, properties, paymentOptions, context)
|
502
|
+
# conversion for res [type = org.killbill.billing.payment.api.Payment]
|
503
|
+
res = Killbill::Plugin::Model::Payment.new.to_ruby(res) unless res.nil?
|
504
|
+
return res
|
505
|
+
rescue Java::org.killbill.billing.payment.api.PaymentApiException => e
|
506
|
+
raise Killbill::Plugin::Model::PaymentApiException.new.to_ruby(e)
|
507
|
+
end
|
508
|
+
end
|
509
|
+
|
406
510
|
java_signature 'Java::org.killbill.billing.payment.api.Payment createChargeback(Java::org.killbill.billing.account.api.Account, Java::java.util.UUID, Java::java.math.BigDecimal, Java::org.killbill.billing.catalog.api.Currency, Java::java.lang.String, Java::org.killbill.billing.util.callcontext.CallContext)'
|
407
511
|
def create_chargeback(account, paymentId, amount, currency, paymentTransactionExternalKey, context)
|
408
512
|
|