killbill 3.1.11 → 3.1.12
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/Jarfile +6 -6
- data/NEWS +6 -0
- data/VERSION +1 -1
- data/generators/active_merchant/templates/Jarfile.rb +7 -7
- data/generators/active_merchant/templates/db/ddl.sql.rb +2 -0
- data/generators/active_merchant/templates/db/schema.rb +2 -0
- data/generators/active_merchant/templates/lib/application.rb +1 -5
- data/generators/active_merchant/templates/lib/models/response.rb +2 -1
- data/generators/active_merchant/templates/lib/plugin.rb +1 -0
- data/generators/active_merchant/templates/lib/private_api.rb +7 -0
- data/generators/active_merchant/templates/plugin.gemspec.rb +3 -2
- data/generators/active_merchant/templates/spec/integration_spec.rb +103 -2
- data/killbill.gemspec +4 -1
- data/lib/killbill/gen/api/dry_run_arguments.rb +100 -0
- data/lib/killbill/gen/api/invoice_user_api.rb +5 -5
- data/lib/killbill/gen/api/killbill_api.rb +19 -18
- data/lib/killbill/gen/api/payment_options.rb +17 -5
- data/lib/killbill/gen/api/require_gen.rb +5 -0
- data/lib/killbill/gen/api/rolled_up_unit.rb +63 -0
- data/lib/killbill/gen/api/rolled_up_usage.rb +31 -35
- data/lib/killbill/gen/api/static_catalog.rb +8 -8
- data/lib/killbill/gen/api/subscription_usage_record.rb +75 -0
- data/lib/killbill/gen/api/unit_usage_record.rb +74 -0
- data/lib/killbill/gen/api/usage_record.rb +66 -0
- data/lib/killbill/gen/api/usage_user_api.rb +22 -56
- data/lib/killbill/gen/plugin-api/currency_plugin_api.rb +19 -18
- data/lib/killbill/gen/plugin-api/ext_bus_event.rb +19 -18
- data/lib/killbill/gen/plugin-api/gateway_notification.rb +19 -18
- data/lib/killbill/gen/plugin-api/hosted_payment_page_form_descriptor.rb +19 -18
- data/lib/killbill/gen/plugin-api/notification_plugin_api.rb +19 -18
- data/lib/killbill/gen/plugin-api/payment_method_info_plugin.rb +19 -18
- data/lib/killbill/gen/plugin-api/payment_plugin_api.rb +19 -18
- data/lib/killbill/gen/plugin-api/payment_plugin_api_exception.rb +19 -18
- data/lib/killbill/gen/plugin-api/payment_transaction_info_plugin.rb +19 -18
- data/lib/killbill/gen/plugin-api/require_gen.rb +19 -18
- data/lib/killbill/helpers/active_merchant/active_record/models/payment_method.rb +4 -0
- data/lib/killbill/helpers/active_merchant/active_record/models/response.rb +65 -34
- data/lib/killbill/helpers/active_merchant/active_record/models/streamy_result_set.rb +14 -2
- data/lib/killbill/helpers/active_merchant/active_record/models/transaction.rb +9 -5
- data/lib/killbill/helpers/active_merchant/killbill_spec_helper.rb +28 -23
- data/lib/killbill/helpers/active_merchant/payment_plugin.rb +66 -36
- data/lib/killbill/helpers/active_merchant/private_payment_plugin.rb +18 -31
- data/lib/killbill/helpers/active_merchant/sinatra.rb +7 -2
- data/lib/killbill/helpers/active_merchant/utils.rb +12 -0
- data/spec/killbill/helpers/killbill_spec_helper_spec.rb +24 -0
- data/spec/killbill/helpers/payment_method_spec.rb +5 -0
- data/spec/killbill/helpers/payment_plugin_spec.rb +33 -2
- data/spec/killbill/helpers/private_payment_plugin_spec.rb +83 -0
- data/spec/killbill/helpers/response_spec.rb +47 -24
- data/spec/killbill/helpers/streamy_result_set_spec.rb +38 -0
- data/spec/killbill/helpers/test_schema.rb +2 -0
- metadata +57 -8
- data/lib/killbill/gen/api/payment_attempt.rb +0 -117
- data/lib/killbill/gen/api/payment_method_kv_info.rb +0 -71
- data/lib/killbill/gen/plugin-api/billing_address.rb +0 -85
- data/lib/killbill/gen/plugin-api/customer.rb +0 -73
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: eb6ce6556b61301d292afa1aa2747c108fd4687e
|
4
|
+
data.tar.gz: b3416f3c099da146bfbe28436af347b23e12c7ee
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 341509f358870f14af3ed361cc6d32b8bd234b2a18277fefd88dac6ea5876c2533e4576b32523b0de739c112d3b6974bff147c44c88b9404ca2b6ef67ce6d1eb
|
7
|
+
data.tar.gz: 0cf95757be6be80a1cf04757f284cdef25bccf4936db9d46ed02f8fe5ea2f0068092270fe9adbb0a934afb11c3207c36289dfc5eda7728bbc14baa2fe714dd1b
|
data/Jarfile
CHANGED
@@ -1,8 +1,8 @@
|
|
1
|
-
jar 'org.kill-bill.billing:killbill-api', '0.
|
2
|
-
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-notification', '0.
|
3
|
-
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-payment', '0.
|
4
|
-
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-currency', '0.
|
5
|
-
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-retry', '0.
|
6
|
-
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-invoice', '0.
|
1
|
+
jar 'org.kill-bill.billing:killbill-api', '0.10.2'
|
2
|
+
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-notification', '0.8.1'
|
3
|
+
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-payment', '0.8.1'
|
4
|
+
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-currency', '0.8.1'
|
5
|
+
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-retry', '0.8.1'
|
6
|
+
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-invoice', '0.8.1'
|
7
7
|
jar 'org.kill-bill.billing:killbill-util:tests', '0.11.9'
|
8
8
|
jar 'javax.servlet:javax.servlet-api', '3.0.1'
|
data/NEWS
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.1.
|
1
|
+
3.1.12
|
@@ -1,8 +1,8 @@
|
|
1
|
-
jar 'org.kill-bill.billing:killbill-api', '0.
|
2
|
-
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-notification', '0.
|
3
|
-
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-payment', '0.
|
4
|
-
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-currency', '0.
|
5
|
-
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-retry', '0.
|
6
|
-
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-invoice', '0.
|
7
|
-
jar 'org.kill-bill.billing:killbill-util:tests', '0.11.
|
1
|
+
jar 'org.kill-bill.billing:killbill-api', '0.10.2'
|
2
|
+
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-notification', '0.8.1'
|
3
|
+
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-payment', '0.8.1'
|
4
|
+
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-currency', '0.8.1'
|
5
|
+
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-retry', '0.8.1'
|
6
|
+
jar 'org.kill-bill.billing.plugin:killbill-plugin-api-invoice', '0.8.1'
|
7
|
+
jar 'org.kill-bill.billing:killbill-util:tests', '0.11.9'
|
8
8
|
jar 'javax.servlet:javax.servlet-api', '3.0.1'
|
@@ -37,6 +37,7 @@ CREATE TABLE `<%= identifier %>_transactions` (
|
|
37
37
|
`kb_payment_id` varchar(255) NOT NULL,
|
38
38
|
`kb_payment_transaction_id` varchar(255) NOT NULL,
|
39
39
|
`transaction_type` varchar(255) NOT NULL,
|
40
|
+
`payment_processor_account_id` varchar(255) DEFAULT NULL,
|
40
41
|
`txn_id` varchar(255) DEFAULT NULL,
|
41
42
|
`amount_in_cents` int(11) DEFAULT NULL,
|
42
43
|
`currency` varchar(255) DEFAULT NULL,
|
@@ -54,6 +55,7 @@ CREATE TABLE `<%= identifier %>_responses` (
|
|
54
55
|
`kb_payment_id` varchar(255) DEFAULT NULL,
|
55
56
|
`kb_payment_transaction_id` varchar(255) DEFAULT NULL,
|
56
57
|
`transaction_type` varchar(255) DEFAULT NULL,
|
58
|
+
`payment_processor_account_id` varchar(255) DEFAULT NULL,
|
57
59
|
`message` varchar(255) DEFAULT NULL,
|
58
60
|
`authorization` varchar(255) DEFAULT NULL,
|
59
61
|
`fraud_review` tinyint(1) DEFAULT NULL,
|
@@ -38,6 +38,7 @@ ActiveRecord::Schema.define(:version => 20140410153635) do
|
|
38
38
|
t.string "kb_payment_id", :null => false
|
39
39
|
t.string "kb_payment_transaction_id", :null => false
|
40
40
|
t.string "transaction_type", :null => false
|
41
|
+
t.string "payment_processor_account_id"
|
41
42
|
t.string "txn_id" # <%= identifier %> transaction id
|
42
43
|
# Both null for void
|
43
44
|
t.integer "amount_in_cents"
|
@@ -55,6 +56,7 @@ ActiveRecord::Schema.define(:version => 20140410153635) do
|
|
55
56
|
t.string "kb_payment_id"
|
56
57
|
t.string "kb_payment_transaction_id"
|
57
58
|
t.string "transaction_type"
|
59
|
+
t.string "payment_processor_account_id"
|
58
60
|
t.string "message"
|
59
61
|
t.string "authorization"
|
60
62
|
t.boolean "fraud_review"
|
@@ -18,11 +18,7 @@ end
|
|
18
18
|
|
19
19
|
helpers do
|
20
20
|
def plugin(session = {})
|
21
|
-
::Killbill::<%= class_name %>::PrivatePaymentPlugin.new(
|
22
|
-
::Killbill::<%= class_name %>::<%= class_name %>PaymentMethod,
|
23
|
-
::Killbill::<%= class_name %>::<%= class_name %>Transaction,
|
24
|
-
::Killbill::<%= class_name %>::<%= class_name %>Response,
|
25
|
-
session)
|
21
|
+
::Killbill::<%= class_name %>::PrivatePaymentPlugin.new(session)
|
26
22
|
end
|
27
23
|
end
|
28
24
|
|
@@ -6,12 +6,13 @@ module Killbill #:nodoc:
|
|
6
6
|
|
7
7
|
has_one :<%= identifier %>_transaction
|
8
8
|
|
9
|
-
def self.from_response(api_call, kb_account_id, kb_payment_id, kb_payment_transaction_id, transaction_type, kb_tenant_id, response, extra_params = {}, model = ::Killbill::<%= class_name %>::<%= class_name %>Response)
|
9
|
+
def self.from_response(api_call, kb_account_id, kb_payment_id, kb_payment_transaction_id, transaction_type, payment_processor_account_id, kb_tenant_id, response, extra_params = {}, model = ::Killbill::<%= class_name %>::<%= class_name %>Response)
|
10
10
|
super(api_call,
|
11
11
|
kb_account_id,
|
12
12
|
kb_payment_id,
|
13
13
|
kb_payment_transaction_id,
|
14
14
|
transaction_type,
|
15
|
+
payment_processor_account_id,
|
15
16
|
kb_tenant_id,
|
16
17
|
response,
|
17
18
|
{
|
@@ -1,6 +1,13 @@
|
|
1
1
|
module Killbill #:nodoc:
|
2
2
|
module <%= class_name %> #:nodoc:
|
3
3
|
class PrivatePaymentPlugin < ::Killbill::Plugin::ActiveMerchant::PrivatePaymentPlugin
|
4
|
+
def initialize(session = {})
|
5
|
+
super(:<%= identifier %>,
|
6
|
+
::Killbill::<%= class_name %>::<%= class_name %>PaymentMethod,
|
7
|
+
::Killbill::<%= class_name %>::<%= class_name %>Transaction,
|
8
|
+
::Killbill::<%= class_name %>::<%= class_name %>Response,
|
9
|
+
session)
|
10
|
+
end
|
4
11
|
end
|
5
12
|
end
|
6
13
|
end
|
@@ -22,8 +22,9 @@ Gem::Specification.new do |s|
|
|
22
22
|
|
23
23
|
s.rdoc_options << '--exclude' << '.'
|
24
24
|
|
25
|
-
s.add_dependency 'killbill', '~> 3.1.
|
26
|
-
s.add_dependency 'activemerchant', '~> 1.
|
25
|
+
s.add_dependency 'killbill', '~> 3.1.11'
|
26
|
+
s.add_dependency 'activemerchant', '~> 1.44.1'
|
27
|
+
s.add_dependency 'offsite_payments', '~> 2.0.1'
|
27
28
|
s.add_dependency 'activerecord', '~> 4.1.0'
|
28
29
|
s.add_dependency 'actionpack', '~> 4.1.0'
|
29
30
|
s.add_dependency 'actionview', '~> 4.1.0'
|
@@ -10,22 +10,123 @@ describe Killbill::<%= class_name %>::PaymentPlugin do
|
|
10
10
|
@plugin = Killbill::<%= class_name %>::PaymentPlugin.new
|
11
11
|
|
12
12
|
@account_api = ::Killbill::Plugin::ActiveMerchant::RSpec::FakeJavaUserAccountApi.new
|
13
|
-
|
13
|
+
@payment_api = ::Killbill::Plugin::ActiveMerchant::RSpec::FakeJavaPaymentApi.new
|
14
|
+
svcs = {:account_user_api => @account_api, :payment_api => @payment_api}
|
14
15
|
@plugin.kb_apis = Killbill::Plugin::KillbillApi.new('<%= identifier %>', svcs)
|
15
16
|
|
17
|
+
@call_context = ::Killbill::Plugin::Model::CallContext.new
|
18
|
+
@call_context.tenant_id = '00000011-0022-0033-0044-000000000055'
|
19
|
+
@call_context = @call_context.to_ruby(@call_context)
|
20
|
+
|
16
21
|
@plugin.logger = Logger.new(STDOUT)
|
17
22
|
@plugin.logger.level = Logger::INFO
|
18
23
|
@plugin.conf_dir = File.expand_path(File.dirname(__FILE__) + '../../../../')
|
19
24
|
@plugin.start_plugin
|
25
|
+
|
26
|
+
@properties = []
|
27
|
+
@pm = create_payment_method(::Killbill::<%= class_name %>::<%= class_name %>PaymentMethod, nil, @call_context.tenant_id, @properties)
|
28
|
+
@amount = BigDecimal.new('100')
|
29
|
+
@currency = 'USD'
|
30
|
+
|
31
|
+
kb_payment_id = SecureRandom.uuid
|
32
|
+
1.upto(6) do
|
33
|
+
@kb_payment = @payment_api.add_payment(kb_payment_id)
|
34
|
+
end
|
20
35
|
end
|
21
36
|
|
22
37
|
after(:each) do
|
23
38
|
@plugin.stop_plugin
|
24
39
|
end
|
25
40
|
|
26
|
-
it 'should be able to
|
41
|
+
it 'should be able to charge a Credit Card directly' do
|
42
|
+
properties = build_pm_properties
|
43
|
+
|
44
|
+
# We created the payment method, hence the rows
|
45
|
+
Killbill::<%= class_name %>::<%= class_name %>Response.all.size.should == 1
|
46
|
+
Killbill::<%= class_name %>::<%= class_name %>Transaction.all.size.should == 0
|
47
|
+
|
48
|
+
payment_response = @plugin.purchase_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[0].id, SecureRandom.uuid, @amount, @currency, properties, @call_context)
|
49
|
+
payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
|
50
|
+
payment_response.amount.should == @amount
|
51
|
+
payment_response.transaction_type.should == :PURCHASE
|
52
|
+
|
53
|
+
responses = Killbill::<%= class_name %>::<%= class_name %>Response.all
|
54
|
+
responses.size.should == 2
|
55
|
+
responses[0].api_call.should == 'add_payment_method'
|
56
|
+
responses[0].message.should == 'Successful transaction'
|
57
|
+
responses[1].api_call.should == 'purchase'
|
58
|
+
responses[1].message.should == 'Successful transaction'
|
59
|
+
transactions = Killbill::<%= class_name %>::<%= class_name %>Transaction.all
|
60
|
+
transactions.size.should == 1
|
61
|
+
transactions[0].api_call.should == 'purchase'
|
27
62
|
end
|
28
63
|
|
29
64
|
it 'should be able to charge and refund' do
|
65
|
+
payment_response = @plugin.purchase_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[0].id, @pm.kb_payment_method_id, @amount, @currency, @properties, @call_context)
|
66
|
+
payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
|
67
|
+
payment_response.amount.should == @amount
|
68
|
+
payment_response.transaction_type.should == :PURCHASE
|
69
|
+
|
70
|
+
# Try a full refund
|
71
|
+
refund_response = @plugin.refund_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[1].id, @pm.kb_payment_method_id, @amount, @currency, @properties, @call_context)
|
72
|
+
refund_response.status.should eq(:PROCESSED), refund_response.gateway_error
|
73
|
+
refund_response.amount.should == @amount
|
74
|
+
refund_response.transaction_type.should == :REFUND
|
75
|
+
end
|
76
|
+
|
77
|
+
it 'should be able to auth, capture and refund' do
|
78
|
+
payment_response = @plugin.authorize_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[0].id, @pm.kb_payment_method_id, @amount, @currency, @properties, @call_context)
|
79
|
+
payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
|
80
|
+
payment_response.amount.should == @amount
|
81
|
+
payment_response.transaction_type.should == :AUTHORIZE
|
82
|
+
|
83
|
+
# Try multiple partial captures
|
84
|
+
partial_capture_amount = BigDecimal.new('10')
|
85
|
+
1.upto(3) do |i|
|
86
|
+
payment_response = @plugin.capture_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[i].id, @pm.kb_payment_method_id, partial_capture_amount, @currency, @properties, @call_context)
|
87
|
+
payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
|
88
|
+
payment_response.amount.should == partial_capture_amount
|
89
|
+
payment_response.transaction_type.should == :CAPTURE
|
90
|
+
end
|
91
|
+
|
92
|
+
# Try a partial refund
|
93
|
+
refund_response = @plugin.refund_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[4].id, @pm.kb_payment_method_id, partial_capture_amount, @currency, @properties, @call_context)
|
94
|
+
refund_response.status.should eq(:PROCESSED), refund_response.gateway_error
|
95
|
+
refund_response.amount.should == partial_capture_amount
|
96
|
+
refund_response.transaction_type.should == :REFUND
|
97
|
+
|
98
|
+
# Try to capture again
|
99
|
+
payment_response = @plugin.capture_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[5].id, @pm.kb_payment_method_id, partial_capture_amount, @currency, @properties, @call_context)
|
100
|
+
payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
|
101
|
+
payment_response.amount.should == partial_capture_amount
|
102
|
+
payment_response.transaction_type.should == :CAPTURE
|
103
|
+
end
|
104
|
+
|
105
|
+
it 'should be able to auth and void' do
|
106
|
+
payment_response = @plugin.authorize_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[0].id, @pm.kb_payment_method_id, @amount, @currency, @properties, @call_context)
|
107
|
+
payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
|
108
|
+
payment_response.amount.should == @amount
|
109
|
+
payment_response.transaction_type.should == :AUTHORIZE
|
110
|
+
|
111
|
+
payment_response = @plugin.void_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[1].id, @pm.kb_payment_method_id, @properties, @call_context)
|
112
|
+
payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
|
113
|
+
payment_response.transaction_type.should == :VOID
|
114
|
+
end
|
115
|
+
|
116
|
+
it 'should be able to auth, partial capture and void' do
|
117
|
+
payment_response = @plugin.authorize_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[0].id, @pm.kb_payment_method_id, @amount, @currency, @properties, @call_context)
|
118
|
+
payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
|
119
|
+
payment_response.amount.should == @amount
|
120
|
+
payment_response.transaction_type.should == :AUTHORIZE
|
121
|
+
|
122
|
+
partial_capture_amount = BigDecimal.new('10')
|
123
|
+
payment_response = @plugin.capture_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[1].id, @pm.kb_payment_method_id, partial_capture_amount, @currency, @properties, @call_context)
|
124
|
+
payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
|
125
|
+
payment_response.amount.should == partial_capture_amount
|
126
|
+
payment_response.transaction_type.should == :CAPTURE
|
127
|
+
|
128
|
+
payment_response = @plugin.void_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[2].id, @pm.kb_payment_method_id, @properties, @call_context)
|
129
|
+
payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
|
130
|
+
payment_response.transaction_type.should == :VOID
|
30
131
|
end
|
31
132
|
end
|
data/killbill.gemspec
CHANGED
@@ -33,7 +33,10 @@ Gem::Specification.new do |s|
|
|
33
33
|
else
|
34
34
|
s.add_development_dependency 'sqlite3', '~> 1.3.7'
|
35
35
|
end
|
36
|
-
s.add_development_dependency '
|
36
|
+
s.add_development_dependency 'actionpack', '~> 4.1.0'
|
37
|
+
s.add_development_dependency 'actionview', '~> 4.1.0'
|
38
|
+
s.add_development_dependency 'activemerchant', '~> 1.44.1'
|
39
|
+
s.add_development_dependency 'offsite_payments', '~> 2.0.1'
|
37
40
|
s.add_development_dependency 'monetize', '~> 0.3.0'
|
38
41
|
s.add_development_dependency 'money', '~> 6.1.1'
|
39
42
|
s.add_development_dependency 'jbundler', '~> 0.4.3'
|
@@ -0,0 +1,100 @@
|
|
1
|
+
#############################################################################################
|
2
|
+
# #
|
3
|
+
# Copyright 2010-2013 Ning, Inc. #
|
4
|
+
# Copyright 2014 Groupon, Inc. #
|
5
|
+
# Copyright 2014 The Billing Project, LLC #
|
6
|
+
# #
|
7
|
+
# The Billing Project licenses this file to you under the Apache License, version 2.0 #
|
8
|
+
# (the "License"); you may not use this file except in compliance with the #
|
9
|
+
# License. You may obtain a copy of the License at: #
|
10
|
+
# #
|
11
|
+
# http://www.apache.org/licenses/LICENSE-2.0 #
|
12
|
+
# #
|
13
|
+
# Unless required by applicable law or agreed to in writing, software #
|
14
|
+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT #
|
15
|
+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the #
|
16
|
+
# License for the specific language governing permissions and limitations #
|
17
|
+
# under the License. #
|
18
|
+
# #
|
19
|
+
#############################################################################################
|
20
|
+
|
21
|
+
|
22
|
+
#
|
23
|
+
# DO NOT EDIT!!!
|
24
|
+
# File automatically generated by killbill-java-parser (git@github.com:killbill/killbill-java-parser.git)
|
25
|
+
#
|
26
|
+
|
27
|
+
|
28
|
+
module Killbill
|
29
|
+
module Plugin
|
30
|
+
module Model
|
31
|
+
|
32
|
+
java_package 'org.killbill.billing.invoice.api'
|
33
|
+
class DryRunArguments
|
34
|
+
|
35
|
+
include org.killbill.billing.invoice.api.DryRunArguments
|
36
|
+
|
37
|
+
attr_accessor :plan_phase_specifier, :action, :subscription_id, :effective_date, :bundle_id, :billing_action_policy
|
38
|
+
|
39
|
+
def initialize()
|
40
|
+
end
|
41
|
+
|
42
|
+
def to_java()
|
43
|
+
# conversion for plan_phase_specifier [type = org.killbill.billing.catalog.api.PlanPhaseSpecifier]
|
44
|
+
@plan_phase_specifier = @plan_phase_specifier.to_java unless @plan_phase_specifier.nil?
|
45
|
+
|
46
|
+
# conversion for action [type = org.killbill.billing.entitlement.api.SubscriptionEventType]
|
47
|
+
@action = Java::org.killbill.billing.entitlement.api.SubscriptionEventType.value_of("#{@action.to_s}") unless @action.nil?
|
48
|
+
|
49
|
+
# conversion for subscription_id [type = java.util.UUID]
|
50
|
+
@subscription_id = java.util.UUID.fromString(@subscription_id.to_s) unless @subscription_id.nil?
|
51
|
+
|
52
|
+
# conversion for effective_date [type = org.joda.time.DateTime]
|
53
|
+
if !@effective_date.nil?
|
54
|
+
@effective_date = (@effective_date.kind_of? Time) ? DateTime.parse(@effective_date.to_s) : @effective_date
|
55
|
+
@effective_date = Java::org.joda.time.DateTime.new(@effective_date.to_s, Java::org.joda.time.DateTimeZone::UTC)
|
56
|
+
end
|
57
|
+
|
58
|
+
# conversion for bundle_id [type = java.util.UUID]
|
59
|
+
@bundle_id = java.util.UUID.fromString(@bundle_id.to_s) unless @bundle_id.nil?
|
60
|
+
|
61
|
+
# conversion for billing_action_policy [type = org.killbill.billing.catalog.api.BillingActionPolicy]
|
62
|
+
@billing_action_policy = Java::org.killbill.billing.catalog.api.BillingActionPolicy.value_of("#{@billing_action_policy.to_s}") unless @billing_action_policy.nil?
|
63
|
+
self
|
64
|
+
end
|
65
|
+
|
66
|
+
def to_ruby(j_obj)
|
67
|
+
# conversion for plan_phase_specifier [type = org.killbill.billing.catalog.api.PlanPhaseSpecifier]
|
68
|
+
@plan_phase_specifier = j_obj.plan_phase_specifier
|
69
|
+
@plan_phase_specifier = Killbill::Plugin::Model::PlanPhaseSpecifier.new.to_ruby(@plan_phase_specifier) unless @plan_phase_specifier.nil?
|
70
|
+
|
71
|
+
# conversion for action [type = org.killbill.billing.entitlement.api.SubscriptionEventType]
|
72
|
+
@action = j_obj.action
|
73
|
+
@action = @action.to_s.to_sym unless @action.nil?
|
74
|
+
|
75
|
+
# conversion for subscription_id [type = java.util.UUID]
|
76
|
+
@subscription_id = j_obj.subscription_id
|
77
|
+
@subscription_id = @subscription_id.nil? ? nil : @subscription_id.to_s
|
78
|
+
|
79
|
+
# conversion for effective_date [type = org.joda.time.DateTime]
|
80
|
+
@effective_date = j_obj.effective_date
|
81
|
+
if !@effective_date.nil?
|
82
|
+
fmt = Java::org.joda.time.format.ISODateTimeFormat.date_time_no_millis # See https://github.com/killbill/killbill-java-parser/issues/3
|
83
|
+
str = fmt.print(@effective_date)
|
84
|
+
@effective_date = DateTime.iso8601(str)
|
85
|
+
end
|
86
|
+
|
87
|
+
# conversion for bundle_id [type = java.util.UUID]
|
88
|
+
@bundle_id = j_obj.bundle_id
|
89
|
+
@bundle_id = @bundle_id.nil? ? nil : @bundle_id.to_s
|
90
|
+
|
91
|
+
# conversion for billing_action_policy [type = org.killbill.billing.catalog.api.BillingActionPolicy]
|
92
|
+
@billing_action_policy = j_obj.billing_action_policy
|
93
|
+
@billing_action_policy = @billing_action_policy.to_s.to_sym unless @billing_action_policy.nil?
|
94
|
+
self
|
95
|
+
end
|
96
|
+
|
97
|
+
end
|
98
|
+
end
|
99
|
+
end
|
100
|
+
end
|
@@ -203,8 +203,8 @@ module Killbill
|
|
203
203
|
return res
|
204
204
|
end
|
205
205
|
|
206
|
-
java_signature 'Java::org.killbill.billing.invoice.api.Invoice triggerInvoiceGeneration(Java::java.util.UUID, Java::org.joda.time.LocalDate, Java::
|
207
|
-
def trigger_invoice_generation(accountId, targetDate,
|
206
|
+
java_signature 'Java::org.killbill.billing.invoice.api.Invoice triggerInvoiceGeneration(Java::java.util.UUID, Java::org.joda.time.LocalDate, Java::org.killbill.billing.invoice.api.DryRunArguments, Java::org.killbill.billing.util.callcontext.CallContext)'
|
207
|
+
def trigger_invoice_generation(accountId, targetDate, dryRunArguments, context)
|
208
208
|
|
209
209
|
# conversion for accountId [type = java.util.UUID]
|
210
210
|
accountId = java.util.UUID.fromString(accountId.to_s) unless accountId.nil?
|
@@ -214,13 +214,13 @@ module Killbill
|
|
214
214
|
targetDate = Java::org.joda.time.LocalDate.parse(targetDate.to_s)
|
215
215
|
end
|
216
216
|
|
217
|
-
# conversion for
|
218
|
-
|
217
|
+
# conversion for dryRunArguments [type = org.killbill.billing.invoice.api.DryRunArguments]
|
218
|
+
dryRunArguments = dryRunArguments.to_java unless dryRunArguments.nil?
|
219
219
|
|
220
220
|
# conversion for context [type = org.killbill.billing.util.callcontext.CallContext]
|
221
221
|
context = context.to_java unless context.nil?
|
222
222
|
begin
|
223
|
-
res = @real_java_api.trigger_invoice_generation(accountId, targetDate,
|
223
|
+
res = @real_java_api.trigger_invoice_generation(accountId, targetDate, dryRunArguments, context)
|
224
224
|
# conversion for res [type = org.killbill.billing.invoice.api.Invoice]
|
225
225
|
res = Killbill::Plugin::Model::Invoice.new.to_ruby(res) unless res.nil?
|
226
226
|
return res
|
@@ -1,21 +1,22 @@
|
|
1
|
-
|
2
|
-
#
|
3
|
-
# Copyright 2010-2013 Ning, Inc.
|
4
|
-
# Copyright 2014
|
5
|
-
#
|
6
|
-
#
|
7
|
-
#
|
8
|
-
#
|
9
|
-
#
|
10
|
-
#
|
11
|
-
#
|
12
|
-
#
|
13
|
-
#
|
14
|
-
#
|
15
|
-
#
|
16
|
-
#
|
17
|
-
#
|
18
|
-
|
1
|
+
#############################################################################################
|
2
|
+
# #
|
3
|
+
# Copyright 2010-2013 Ning, Inc. #
|
4
|
+
# Copyright 2014 Groupon, Inc. #
|
5
|
+
# Copyright 2014 The Billing Project, LLC #
|
6
|
+
# #
|
7
|
+
# The Billing Project licenses this file to you under the Apache License, version 2.0 #
|
8
|
+
# (the "License"); you may not use this file except in compliance with the #
|
9
|
+
# License. You may obtain a copy of the License at: #
|
10
|
+
# #
|
11
|
+
# http://www.apache.org/licenses/LICENSE-2.0 #
|
12
|
+
# #
|
13
|
+
# Unless required by applicable law or agreed to in writing, software #
|
14
|
+
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT #
|
15
|
+
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the #
|
16
|
+
# License for the specific language governing permissions and limitations #
|
17
|
+
# under the License. #
|
18
|
+
# #
|
19
|
+
#############################################################################################
|
19
20
|
|
20
21
|
|
21
22
|
#
|