killbill 3.2.2 → 3.2.3
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
|