killbill 1.1.2 → 1.2.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.
Files changed (123) hide show
  1. data/VERSION +1 -1
  2. data/gen_config/api.conf +42 -0
  3. data/gen_config/plugin_api.conf +14 -0
  4. data/lib/killbill.rb +3 -3
  5. data/lib/killbill/gen/{account.rb → api/account.rb} +0 -0
  6. data/lib/killbill/gen/{account_api_exception.rb → api/account_api_exception.rb} +0 -0
  7. data/lib/killbill/gen/{account_data.rb → api/account_data.rb} +0 -0
  8. data/lib/killbill/gen/{account_email.rb → api/account_email.rb} +0 -0
  9. data/lib/killbill/gen/{account_user_api.rb → api/account_user_api.rb} +19 -16
  10. data/lib/killbill/gen/{audit_user_api.rb → api/audit_user_api.rb} +25 -0
  11. data/lib/killbill/gen/{billing_exception_base.rb → api/billing_exception_base.rb} +0 -0
  12. data/lib/killbill/gen/{blockable.rb → api/blockable.rb} +0 -0
  13. data/lib/killbill/gen/{blocking_api_exception.rb → api/blocking_api_exception.rb} +0 -0
  14. data/lib/killbill/gen/{blocking_state.rb → api/blocking_state.rb} +0 -0
  15. data/lib/killbill/gen/{call_context.rb → api/call_context.rb} +0 -0
  16. data/lib/killbill/gen/{catalog.rb → api/catalog.rb} +0 -0
  17. data/lib/killbill/gen/{catalog_api_exception.rb → api/catalog_api_exception.rb} +0 -0
  18. data/lib/killbill/gen/{catalog_user_api.rb → api/catalog_user_api.rb} +2 -0
  19. data/lib/killbill/gen/{column_info.rb → api/column_info.rb} +0 -0
  20. data/lib/killbill/gen/{control_tag.rb → api/control_tag.rb} +0 -0
  21. data/lib/killbill/gen/{currency_value_null.rb → api/currency_value_null.rb} +0 -0
  22. data/lib/killbill/gen/{custom_field.rb → api/custom_field.rb} +0 -0
  23. data/lib/killbill/gen/{custom_field_api_exception.rb → api/custom_field_api_exception.rb} +0 -0
  24. data/lib/killbill/gen/{custom_field_user_api.rb → api/custom_field_user_api.rb} +10 -0
  25. data/lib/killbill/gen/{database_export_output_stream.rb → api/database_export_output_stream.rb} +0 -0
  26. data/lib/killbill/gen/{duration.rb → api/duration.rb} +0 -0
  27. data/lib/killbill/gen/{entitlement_user_api.rb → api/entitlement_user_api.rb} +31 -0
  28. data/lib/killbill/gen/{entitlement_user_api_exception.rb → api/entitlement_user_api_exception.rb} +0 -0
  29. data/lib/killbill/gen/{entity.rb → api/entity.rb} +0 -0
  30. data/lib/killbill/gen/{illegal_plan_change.rb → api/illegal_plan_change.rb} +0 -0
  31. data/lib/killbill/gen/{international_price.rb → api/international_price.rb} +2 -2
  32. data/lib/killbill/gen/{invalid_config_exception.rb → api/invalid_config_exception.rb} +0 -0
  33. data/lib/killbill/gen/{invoice.rb → api/invoice.rb} +12 -12
  34. data/lib/killbill/gen/{invoice_api_exception.rb → api/invoice_api_exception.rb} +0 -0
  35. data/lib/killbill/gen/{invoice_creation_event.rb → api/invoice_creation_event.rb} +0 -0
  36. data/lib/killbill/gen/api/invoice_formatter.rb +278 -0
  37. data/lib/killbill/gen/{invoice_item.rb → api/invoice_item.rb} +4 -4
  38. data/lib/killbill/gen/api/invoice_item_formatter.rb +213 -0
  39. data/lib/killbill/gen/{invoice_payment.rb → api/invoice_payment.rb} +2 -2
  40. data/lib/killbill/gen/{invoice_payment_api.rb → api/invoice_payment_api.rb} +23 -2
  41. data/lib/killbill/gen/{invoice_user_api.rb → api/invoice_user_api.rb} +85 -8
  42. data/lib/killbill/gen/{junction_api.rb → api/junction_api.rb} +2 -0
  43. data/lib/killbill/gen/{limit.rb → api/limit.rb} +0 -0
  44. data/lib/killbill/gen/{listing.rb → api/listing.rb} +0 -0
  45. data/lib/killbill/gen/{migration_plan.rb → api/migration_plan.rb} +0 -0
  46. data/lib/killbill/gen/{mutable_account_data.rb → api/mutable_account_data.rb} +0 -0
  47. data/lib/killbill/gen/api/osgi_killbill.rb +175 -0
  48. data/lib/killbill/gen/{external_bus.rb → api/osgi_plugin_properties.rb} +3 -3
  49. data/lib/killbill/gen/{payment.rb → api/payment.rb} +4 -4
  50. data/lib/killbill/gen/{payment_api.rb → api/payment_api.rb} +63 -4
  51. data/lib/killbill/gen/{payment_api_exception.rb → api/payment_api_exception.rb} +0 -0
  52. data/lib/killbill/gen/{payment_attempt.rb → api/payment_attempt.rb} +0 -0
  53. data/lib/killbill/gen/{payment_method.rb → api/payment_method.rb} +0 -0
  54. data/lib/killbill/gen/{payment_method_kv_info.rb → api/payment_method_kv_info.rb} +0 -0
  55. data/lib/killbill/gen/{payment_method_plugin.rb → api/payment_method_plugin.rb} +0 -0
  56. data/lib/killbill/gen/{plan.rb → api/plan.rb} +0 -0
  57. data/lib/killbill/gen/{plan_change_result.rb → api/plan_change_result.rb} +0 -0
  58. data/lib/killbill/gen/{plan_phase.rb → api/plan_phase.rb} +0 -0
  59. data/lib/killbill/gen/{plan_phase_specifier.rb → api/plan_phase_specifier.rb} +0 -0
  60. data/lib/killbill/gen/{plan_specifier.rb → api/plan_specifier.rb} +0 -0
  61. data/lib/killbill/gen/api/plugin_config_service_api.rb +64 -0
  62. data/lib/killbill/gen/{price.rb → api/price.rb} +2 -2
  63. data/lib/killbill/gen/{price_list.rb → api/price_list.rb} +0 -0
  64. data/lib/killbill/gen/{price_list_set.rb → api/price_list_set.rb} +0 -0
  65. data/lib/killbill/gen/{product.rb → api/product.rb} +0 -0
  66. data/lib/killbill/gen/{record_id_api.rb → api/record_id_api.rb} +3 -0
  67. data/lib/killbill/gen/{refund.rb → api/refund.rb} +2 -2
  68. data/lib/killbill/gen/api/require_gen.rb +107 -0
  69. data/lib/killbill/gen/api/rolled_up_usage.rb +101 -0
  70. data/lib/killbill/gen/{static_catalog.rb → api/static_catalog.rb} +0 -0
  71. data/lib/killbill/gen/{subscription.rb → api/subscription.rb} +0 -0
  72. data/lib/killbill/gen/{subscription_bundle.rb → api/subscription_bundle.rb} +0 -0
  73. data/lib/killbill/gen/{subscription_status_dry_run.rb → api/subscription_status_dry_run.rb} +0 -0
  74. data/lib/killbill/gen/{subscription_transition.rb → api/subscription_transition.rb} +0 -0
  75. data/lib/killbill/gen/{tag.rb → api/tag.rb} +0 -0
  76. data/lib/killbill/gen/{tag_api_exception.rb → api/tag_api_exception.rb} +0 -0
  77. data/lib/killbill/gen/{tag_definition.rb → api/tag_definition.rb} +0 -0
  78. data/lib/killbill/gen/{tag_definition_api_exception.rb → api/tag_definition_api_exception.rb} +0 -0
  79. data/lib/killbill/gen/{tag_user_api.rb → api/tag_user_api.rb} +34 -0
  80. data/lib/killbill/gen/{tenant.rb → api/tenant.rb} +0 -0
  81. data/lib/killbill/gen/{tenant_api_exception.rb → api/tenant_api_exception.rb} +0 -0
  82. data/lib/killbill/gen/{tenant_context.rb → api/tenant_context.rb} +0 -0
  83. data/lib/killbill/gen/{tenant_data.rb → api/tenant_data.rb} +0 -0
  84. data/lib/killbill/gen/{tenant_kv.rb → api/tenant_kv.rb} +0 -0
  85. data/lib/killbill/gen/{tenant_user_api.rb → api/tenant_user_api.rb} +11 -0
  86. data/lib/killbill/gen/{unit.rb → api/unit.rb} +0 -0
  87. data/lib/killbill/gen/api/usage_user_api.rb +89 -0
  88. data/lib/killbill/gen/{ext_bus_event.rb → plugin-api/ext_bus_event.rb} +0 -0
  89. data/lib/killbill/gen/plugin-api/notification_plugin_api.rb +61 -0
  90. data/lib/killbill/gen/{payment_info_plugin.rb → plugin-api/payment_info_plugin.rb} +2 -2
  91. data/lib/killbill/gen/{payment_method_info_plugin.rb → plugin-api/payment_method_info_plugin.rb} +0 -0
  92. data/lib/killbill/gen/plugin-api/payment_plugin_api.rb +356 -0
  93. data/lib/killbill/gen/{payment_plugin_api_exception.rb → plugin-api/payment_plugin_api_exception.rb} +0 -0
  94. data/lib/killbill/gen/{refund_info_plugin.rb → plugin-api/refund_info_plugin.rb} +2 -2
  95. data/lib/killbill/gen/plugin-api/require_gen.rb +32 -0
  96. data/lib/killbill/jplugin.rb +0 -71
  97. data/lib/killbill/killbill_api.rb +0 -7
  98. data/spec/killbill/killbillapi_spec.rb +1 -1
  99. data/spec/killbill/notification_plugin_api_spec.rb +22 -0
  100. data/spec/killbill/payment_plugin_api_spec.rb +122 -0
  101. data/spec/killbill/payment_test.rb +1 -1
  102. metadata +100 -107
  103. data/lib/killbill/enum.rb +0 -72
  104. data/lib/killbill/gen/account_service.rb +0 -55
  105. data/lib/killbill/gen/beatrix_service.rb +0 -55
  106. data/lib/killbill/gen/catalog_service.rb +0 -69
  107. data/lib/killbill/gen/default_mutable_account_data.rb +0 -180
  108. data/lib/killbill/gen/entitlement_service.rb +0 -55
  109. data/lib/killbill/gen/entity_persistence_exception.rb +0 -66
  110. data/lib/killbill/gen/export_user_api.rb +0 -17
  111. data/lib/killbill/gen/invoice_migration_api.rb +0 -66
  112. data/lib/killbill/gen/invoice_notifier.rb +0 -51
  113. data/lib/killbill/gen/invoice_service.rb +0 -55
  114. data/lib/killbill/gen/migration_account_data.rb +0 -228
  115. data/lib/killbill/gen/no_op_payment_plugin_api.rb +0 -254
  116. data/lib/killbill/gen/payment_plugin_api.rb +0 -232
  117. data/lib/killbill/gen/payment_service.rb +0 -62
  118. data/lib/killbill/gen/require_gen.rb +0 -120
  119. data/lib/killbill/gen/tenant_service.rb +0 -55
  120. data/lib/killbill/jpayment.rb +0 -107
  121. data/spec/killbill/jnotification_spec.rb +0 -39
  122. data/spec/killbill/jpayment_spec.rb +0 -126
  123. data/tools/java2ruby.rb +0 -440
@@ -42,7 +42,7 @@ module Killbill
42
42
  if @amount.nil?
43
43
  @amount = java.math.BigDecimal::ZERO
44
44
  else
45
- @amount = java.math.BigDecimal.new(@amount.to_i)
45
+ @amount = java.math.BigDecimal.new(@amount.to_s)
46
46
  end
47
47
 
48
48
  # conversion for created_date [type = org.joda.time.DateTime]
@@ -74,7 +74,7 @@ module Killbill
74
74
  def to_ruby(j_obj)
75
75
  # conversion for amount [type = java.math.BigDecimal]
76
76
  @amount = j_obj.amount
77
- @amount = @amount.nil? ? 0 : @amount.to_s.to_i
77
+ @amount = @amount.nil? ? 0 : BigDecimal.new(@amount.to_s)
78
78
 
79
79
  # conversion for created_date [type = org.joda.time.DateTime]
80
80
  @created_date = j_obj.created_date
@@ -0,0 +1,32 @@
1
+ ###################################################################################
2
+ # #
3
+ # Copyright 2010-2013 Ning, Inc. #
4
+ # #
5
+ # Ning licenses this file to you under the Apache License, version 2.0 #
6
+ # (the "License"); you may not use this file except in compliance with the #
7
+ # License. You may obtain a copy of the License at: #
8
+ # #
9
+ # http://www.apache.org/licenses/LICENSE-2.0 #
10
+ # #
11
+ # Unless required by applicable law or agreed to in writing, software #
12
+ # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT #
13
+ # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the #
14
+ # License for the specific language governing permissions and limitations #
15
+ # under the License. #
16
+ # #
17
+ ###################################################################################
18
+
19
+
20
+ #
21
+ # DO NOT EDIT!!!
22
+ # File automatically generated by killbill-java-parser (git@github.com:killbill/killbill-java-parser.git)
23
+ #
24
+
25
+
26
+ require 'killbill/gen/plugin-api/payment_method_info_plugin'
27
+ require 'killbill/gen/plugin-api/payment_plugin_api'
28
+ require 'killbill/gen/plugin-api/payment_plugin_api_exception'
29
+ require 'killbill/gen/plugin-api/ext_bus_event'
30
+ require 'killbill/gen/plugin-api/notification_plugin_api'
31
+ require 'killbill/gen/plugin-api/payment_info_plugin'
32
+ require 'killbill/gen/plugin-api/refund_info_plugin'
@@ -63,77 +63,6 @@ module Killbill
63
63
  def unconfigure_rack_handler
64
64
  @rack_handler.unconfigure unless @rack_handler.nil?
65
65
  end
66
-
67
- def do_call_handle_exception(method_name, *args)
68
- begin
69
- rargs = convert_args(method_name, args)
70
- res = @delegate_plugin.send(method_name.to_s.snake_case.to_sym, *rargs)
71
- yield(res)
72
- rescue Exception => e
73
- wrap_and_throw_exception(method_name, e)
74
- ensure
75
- @delegate_plugin.after_request
76
- end
77
- end
78
-
79
- def wrap_and_throw_exception(api, e)
80
- message = "#{api} failure: #{e}"
81
- unless e.backtrace.nil?
82
- message = "#{message}\n#{e.backtrace.join("\n")}"
83
- end
84
- logger.warn message
85
- raise Java::com.ning.billing.payment.plugin.api.PaymentPluginApiException.new("#{api} failure", e.message)
86
- end
87
-
88
- def convert_args(api, args)
89
- args.collect! do |a|
90
- if a.nil?
91
- nil
92
- elsif a.java_kind_of? java.util.UUID
93
- a.nil? ? nil : a.to_s
94
- elsif a.java_kind_of? java.math.BigDecimal
95
- a.nil? ? 0 : a.to_s.to_i
96
- elsif a.java_kind_of? Java::com.ning.billing.catalog.api.Currency
97
- a.to_string
98
- elsif a.java_kind_of? Java::com.ning.billing.payment.api.PaymentMethodPlugin
99
- Killbill::Plugin::Model::PaymentMethodPlugin.new.to_ruby(a)
100
- elsif a.java_kind_of? Java::com.ning.billing.notification.plugin.api.ExtBusEvent
101
- Killbill::Plugin::Model::ExtBusEvent.new.to_ruby(a)
102
- elsif ((a.java_kind_of? Java::boolean) || (a.java_kind_of? java.lang.Boolean))
103
- elsif ((a.java_kind_of? TrueClass) || (a.java_kind_of? FalseClass))
104
- if a.nil?
105
- false
106
- else
107
- b_value = (a.java_kind_of? java.lang.Boolean) ? a.boolean_value : a
108
- b_value ? true : false
109
- end
110
- elsif a.java_kind_of? java.util.List
111
- result = Array.new
112
- if a.size > 0
113
- first_element = a.get(0)
114
- if first_element.java_kind_of? Java::com.ning.billing.payment.plugin.api.PaymentMethodInfoPlugin
115
- a.each do |el|
116
- result << Killbill::Plugin::Model::PaymentMethodInfoPlugin.new.to_ruby(el)
117
- end
118
- else
119
- raise Java::com.ning.billing.payment.plugin.api.PaymentPluginApiException.new("#{api} failure", "Unexpected parameter type #{first_element.class} for list")
120
- end
121
- end
122
- result
123
- elsif a.java_kind_of? Java::com.ning.billing.util.callcontext.CallContext
124
- Killbill::Plugin::Model::CallContext.new.to_ruby(a)
125
- elsif a.java_kind_of? Java::com.ning.billing.util.callcontext.TenantContext
126
- Killbill::Plugin::Model::TenantContext.new.to_ruby(a)
127
- else
128
- # Since we don't pass the Context at this point, we can't raise any exceptions for unexpected types.
129
- raise Java::com.ning.billing.payment.plugin.api.PaymentPluginApiException.new("#{api} failure", "Unexpected parameter type #{a.class}")
130
- end
131
- end
132
- # Remove last argument if this is null (it means we passed a context)
133
- #args.delete_at(-1) if args[-1].nil?
134
- #args
135
- end
136
-
137
66
  end
138
67
  end
139
68
  end
@@ -11,7 +11,6 @@ module Killbill
11
11
  def initialize(plugin_name, java_service_map)
12
12
  @plugin_name = plugin_name
13
13
  @services = {}
14
- puts "STEPH ::::::::::::::::: #{java_service_map.inspect}"
15
14
  java_service_map.each do |k,v|
16
15
  @services[k.to_sym] = create_proxy_api(k, v)
17
16
  end
@@ -21,9 +20,6 @@ module Killbill
21
20
  # Returns the proxy to the java api
22
21
  #
23
22
  def method_missing(m, *args, &block)
24
-
25
- puts "Looking for api #{m}"
26
-
27
23
  return @services[m.to_sym] if @services.include? m.to_sym
28
24
  raise NoMethodError.new("undefined method `#{m}' for #{self}")
29
25
  end
@@ -49,9 +45,6 @@ module Killbill
49
45
  if api_name == "overdue_user_api"
50
46
  return nil
51
47
  end
52
-
53
- puts "create_proxy_api #{api_name} #{java_api.inspect}"
54
-
55
48
  proxy_class_name = "Killbill::Plugin::Api::#{api_name.to_s.split('_').map{|e| e.capitalize}.join}"
56
49
  proxy_class_name.to_class.new(java_api)
57
50
  end
@@ -2,7 +2,7 @@ require 'spec_helper'
2
2
  require 'date'
3
3
  require 'killbill/killbill_api'
4
4
 
5
- require 'killbill/gen/account_data'
5
+ require 'killbill/gen/api/account_data'
6
6
 
7
7
 
8
8
 
@@ -0,0 +1,22 @@
1
+ require 'spec_helper'
2
+
3
+
4
+ describe Killbill::Plugin::Api::NotificationPluginApi do
5
+
6
+ before(:all) do
7
+ logger = ::Logger.new(STDOUT)
8
+ @notificationPluginApi = Killbill::Plugin::Api::NotificationPluginApi.new("Killbill::Plugin::NotificationTest", { "logger" => logger })
9
+ end
10
+
11
+
12
+ it "should_test_on_event_ok" do
13
+ object_type = Java::com.ning.billing.ObjectType::INVOICE
14
+ event_type = Java::com.ning.billing.notification.plugin.api.ExtBusEventType::INVOICE_CREATION
15
+ uuid = java.util.UUID.random_uuid
16
+ event = Java::com.ning.billing.mock.api.MockExtBusEvent.new(event_type, object_type, uuid, uuid, uuid)
17
+ @notificationPluginApi.on_event(event)
18
+ @notificationPluginApi.on_event(event)
19
+ @notificationPluginApi.on_event(event)
20
+ @notificationPluginApi.delegate_plugin.counter.should == 3
21
+ end
22
+ end
@@ -0,0 +1,122 @@
1
+ require 'spec_helper'
2
+
3
+
4
+ describe Killbill::Plugin::Api::PaymentPluginApi do
5
+
6
+ before(:all) do
7
+ logger = ::Logger.new(STDOUT)
8
+ @paymentPluginApi = Killbill::Plugin::Api::PaymentPluginApi.new("Killbill::Plugin::PaymentTest", { "logger" => logger })
9
+ @kb_account_id = java.util.UUID.fromString("aa5c926e-3d9d-4435-b44b-719d7b583256")
10
+ @kb_payment_id = java.util.UUID.fromString("bf5c926e-3d9c-470e-b34b-719d7b58323a")
11
+ @kb_payment_method_id = java.util.UUID.fromString("bf5c926e-3d9c-470e-b34b-719d7b58323a")
12
+ @payment_method_plugin = nil
13
+ @amount = java.math.BigDecimal.new("50")
14
+ @currency = Java::com.ning.billing.catalog.api.Currency::USD
15
+ end
16
+
17
+ before(:each) do
18
+ @paymentPluginApi.delegate_plugin.send(:clear_exception_on_next_calls)
19
+ end
20
+
21
+ it "should_test_charge_ok" do
22
+ output = @paymentPluginApi.process_payment(@kb_account_id, @kb_payment_id, @kb_payment_method_id, @amount, @currency, nil)
23
+ output.amount.should be_an_instance_of java.math.BigDecimal
24
+ output.amount.compare_to(@amount).should == 0
25
+ output.status.java_kind_of?(Java::com.ning.billing.payment.plugin.api.PaymentPluginStatus).should == true
26
+ output.status.to_s.should == "PROCESSED"
27
+ end
28
+
29
+ it "should_test_charge_exception" do
30
+ @paymentPluginApi.delegate_plugin.send(:raise_exception_on_next_calls)
31
+ lambda { @paymentPluginApi.process_payment(@kb_account_id, @kb_payment_id, @kb_payment_method_id, @amount, @currency, nil) }.should raise_error Java::com.ning.billing.payment.plugin.api.PaymentPluginApiException
32
+ end
33
+
34
+ it "should_test_get_payment_info_ok" do
35
+ output = @paymentPluginApi.get_payment_info(@kb_account_id, @kb_payment_method_id, nil)
36
+ output.amount.should be_an_instance_of java.math.BigDecimal
37
+ output.amount.compare_to(java.math.BigDecimal.new(0)).should == 0
38
+ output.status.java_kind_of?(Java::com.ning.billing.payment.plugin.api.PaymentPluginStatus).should == true
39
+ output.status.to_s.should == "PROCESSED"
40
+ end
41
+
42
+
43
+ it "should_test_get_payment_info_exception" do
44
+ @paymentPluginApi.delegate_plugin.send(:raise_exception_on_next_calls)
45
+ lambda { @paymentPluginApi.get_payment_info(@kb_account_id, @kb_payment_method_id, nil) }.should raise_error Java::com.ning.billing.payment.plugin.api.PaymentPluginApiException
46
+ end
47
+
48
+ it "should_test_refund_ok" do
49
+ output = @paymentPluginApi.process_refund(@kb_account_id, @kb_payment_method_id, @amount, @currency, nil)
50
+ output.amount.should be_an_instance_of java.math.BigDecimal
51
+ output.amount.compare_to(@amount).should == 0
52
+ output.status.java_kind_of?(Java::com.ning.billing.payment.plugin.api.RefundPluginStatus).should == true
53
+ output.status.to_s.should == "PROCESSED"
54
+ end
55
+
56
+
57
+ it "should_test_refund_exception" do
58
+ @paymentPluginApi.delegate_plugin.send(:raise_exception_on_next_calls)
59
+ lambda { @paymentPluginApi.process_refund(@kb_account_id, @kb_payment_method_id, @amount, @currency, nil) }.should raise_error Java::com.ning.billing.payment.plugin.api.PaymentPluginApiException
60
+ end
61
+
62
+ it "should_test_add_payment_method_ok" do
63
+ @paymentPluginApi.add_payment_method(@kb_account_id, @kb_payment_method_id, @payment_method_plugin, java.lang.Boolean.new("true"), nil)
64
+ end
65
+
66
+ it "should_test_add_payment_method_exception" do
67
+ @paymentPluginApi.delegate_plugin.send(:raise_exception_on_next_calls)
68
+ lambda { @paymentPluginApi.add_payment_method(@kb_account_id, @kb_payment_method_id, @payment_method_plugin, true, nil) }.should raise_error Java::com.ning.billing.payment.plugin.api.PaymentPluginApiException
69
+ end
70
+
71
+ it "should_test_delete_payment_method_ok" do
72
+ @paymentPluginApi.delete_payment_method(@kb_account_id, @kb_payment_method_id, nil)
73
+ end
74
+
75
+ it "should_test_delete_payment_method_exception" do
76
+ @paymentPluginApi.delegate_plugin.send(:raise_exception_on_next_calls)
77
+ lambda { @paymentPluginApi.delete_payment_method(@kb_account_id, @kb_payment_method_id, nil) }.should raise_error Java::com.ning.billing.payment.plugin.api.PaymentPluginApiException
78
+ end
79
+
80
+ it "should_test_get_payment_method_detail_ok" do
81
+ output = @paymentPluginApi.get_payment_method_detail(@kb_account_id, @kb_payment_method_id, nil)
82
+ #output.external_payment_method_id.should be_an_instance_of java.lang.String
83
+ output.external_payment_method_id.should == "external_payment_method_id"
84
+ end
85
+
86
+ it "should_test_get_payment_method_detail_exception" do
87
+ @paymentPluginApi.delegate_plugin.send(:raise_exception_on_next_calls)
88
+ lambda { @paymentPluginApi.get_payment_method_detail(@kb_account_id, @kb_payment_method_id, nil) }.should raise_error Java::com.ning.billing.payment.plugin.api.PaymentPluginApiException
89
+ end
90
+
91
+ it "should_test_set_default_payment_method_ok" do
92
+ @paymentPluginApi.set_default_payment_method(@kb_account_id, @kb_payment_method_id, nil)
93
+ end
94
+
95
+ it "should_test_set_default_payment_method_exception" do
96
+ @paymentPluginApi.delegate_plugin.send(:raise_exception_on_next_calls)
97
+ lambda { @paymentPluginApi.set_default_payment_method(@kb_account_id, @kb_payment_method_id, nil) }.should raise_error Java::com.ning.billing.payment.plugin.api.PaymentPluginApiException
98
+ end
99
+
100
+ it "should_get_payment_methods_ok" do
101
+ output = @paymentPluginApi.get_payment_methods(@kb_account_id, java.lang.Boolean.new("true"), nil)
102
+ output.should be_an_instance_of java.util.ArrayList
103
+ output.size.should == 1
104
+
105
+ current_payment_method = output.get(0)
106
+ current_payment_method.account_id.to_s.should == @kb_account_id.to_s
107
+ end
108
+
109
+ it "should_get_payment_methods_exception" do
110
+ @paymentPluginApi.delegate_plugin.send(:raise_exception_on_next_calls)
111
+ lambda { @paymentPluginApi.get_payment_methods(@kb_account_id, java.lang.Boolean.new("true"), nil) }.should raise_error Java::com.ning.billing.payment.plugin.api.PaymentPluginApiException
112
+ end
113
+
114
+ it "should_test_reset_payment_methods_ok" do
115
+ @paymentPluginApi.reset_payment_methods(@kb_account_id, java.util.ArrayList.new)
116
+ end
117
+
118
+ it "should_test_reset_payment_methods_exception" do
119
+ @paymentPluginApi.delegate_plugin.send(:raise_exception_on_next_calls)
120
+ lambda { @paymentPluginApi.reset_payment_methods(@kb_account_id, java.util.ArrayList.new) }.should raise_error Java::com.ning.billing.payment.plugin.api.PaymentPluginApiException
121
+ end
122
+ end
@@ -69,7 +69,7 @@ module Killbill
69
69
  end
70
70
  end
71
71
 
72
- def get_payment_methods(kb_account_id, options = {})
72
+ def get_payment_methods(kb_account_id, refresh_from_gateway, options = {})
73
73
  if @raise_exception
74
74
  raise StandardError.new("Test exception")
75
75
  else
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: killbill
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.2
5
4
  prerelease:
5
+ version: 1.2.0
6
6
  platform: ruby
7
7
  authors:
8
8
  - Kill Bill core team
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-06-20 00:00:00.000000000 Z
12
+ date: 2013-06-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: sinatra
@@ -120,110 +120,104 @@ files:
120
120
  - README.md
121
121
  - Rakefile
122
122
  - VERSION
123
+ - gen_config/api.conf
124
+ - gen_config/plugin_api.conf
123
125
  - killbill.gemspec
124
126
  - lib/killbill.rb
125
127
  - lib/killbill/creator.rb
126
- - lib/killbill/enum.rb
127
- - lib/killbill/gen/account.rb
128
- - lib/killbill/gen/account_api_exception.rb
129
- - lib/killbill/gen/account_data.rb
130
- - lib/killbill/gen/account_email.rb
131
- - lib/killbill/gen/account_service.rb
132
- - lib/killbill/gen/account_user_api.rb
133
- - lib/killbill/gen/audit_user_api.rb
134
- - lib/killbill/gen/beatrix_service.rb
135
- - lib/killbill/gen/billing_exception_base.rb
136
- - lib/killbill/gen/blockable.rb
137
- - lib/killbill/gen/blocking_api_exception.rb
138
- - lib/killbill/gen/blocking_state.rb
139
- - lib/killbill/gen/call_context.rb
140
- - lib/killbill/gen/catalog.rb
141
- - lib/killbill/gen/catalog_api_exception.rb
142
- - lib/killbill/gen/catalog_service.rb
143
- - lib/killbill/gen/catalog_user_api.rb
144
- - lib/killbill/gen/column_info.rb
145
- - lib/killbill/gen/control_tag.rb
146
- - lib/killbill/gen/currency_value_null.rb
147
- - lib/killbill/gen/custom_field.rb
148
- - lib/killbill/gen/custom_field_api_exception.rb
149
- - lib/killbill/gen/custom_field_user_api.rb
150
- - lib/killbill/gen/database_export_output_stream.rb
151
- - lib/killbill/gen/default_mutable_account_data.rb
152
- - lib/killbill/gen/duration.rb
153
- - lib/killbill/gen/entitlement_service.rb
154
- - lib/killbill/gen/entitlement_user_api.rb
155
- - lib/killbill/gen/entitlement_user_api_exception.rb
156
- - lib/killbill/gen/entity.rb
157
- - lib/killbill/gen/entity_persistence_exception.rb
158
- - lib/killbill/gen/export_user_api.rb
159
- - lib/killbill/gen/ext_bus_event.rb
160
- - lib/killbill/gen/external_bus.rb
161
- - lib/killbill/gen/illegal_plan_change.rb
162
- - lib/killbill/gen/international_price.rb
163
- - lib/killbill/gen/invalid_config_exception.rb
164
- - lib/killbill/gen/invoice.rb
165
- - lib/killbill/gen/invoice_api_exception.rb
166
- - lib/killbill/gen/invoice_creation_event.rb
167
- - lib/killbill/gen/invoice_item.rb
168
- - lib/killbill/gen/invoice_migration_api.rb
169
- - lib/killbill/gen/invoice_notifier.rb
170
- - lib/killbill/gen/invoice_payment.rb
171
- - lib/killbill/gen/invoice_payment_api.rb
172
- - lib/killbill/gen/invoice_service.rb
173
- - lib/killbill/gen/invoice_user_api.rb
174
- - lib/killbill/gen/junction_api.rb
175
- - lib/killbill/gen/limit.rb
176
- - lib/killbill/gen/listing.rb
177
- - lib/killbill/gen/migration_account_data.rb
178
- - lib/killbill/gen/migration_plan.rb
179
- - lib/killbill/gen/mutable_account_data.rb
180
- - lib/killbill/gen/no_op_payment_plugin_api.rb
181
- - lib/killbill/gen/payment.rb
182
- - lib/killbill/gen/payment_api.rb
183
- - lib/killbill/gen/payment_api_exception.rb
184
- - lib/killbill/gen/payment_attempt.rb
185
- - lib/killbill/gen/payment_info_plugin.rb
186
- - lib/killbill/gen/payment_method.rb
187
- - lib/killbill/gen/payment_method_info_plugin.rb
188
- - lib/killbill/gen/payment_method_kv_info.rb
189
- - lib/killbill/gen/payment_method_plugin.rb
190
- - lib/killbill/gen/payment_plugin_api.rb
191
- - lib/killbill/gen/payment_plugin_api_exception.rb
192
- - lib/killbill/gen/payment_service.rb
193
- - lib/killbill/gen/plan.rb
194
- - lib/killbill/gen/plan_change_result.rb
195
- - lib/killbill/gen/plan_phase.rb
196
- - lib/killbill/gen/plan_phase_specifier.rb
197
- - lib/killbill/gen/plan_specifier.rb
198
- - lib/killbill/gen/price.rb
199
- - lib/killbill/gen/price_list.rb
200
- - lib/killbill/gen/price_list_set.rb
201
- - lib/killbill/gen/product.rb
202
- - lib/killbill/gen/record_id_api.rb
203
- - lib/killbill/gen/refund.rb
204
- - lib/killbill/gen/refund_info_plugin.rb
205
- - lib/killbill/gen/require_gen.rb
206
- - lib/killbill/gen/static_catalog.rb
207
- - lib/killbill/gen/subscription.rb
208
- - lib/killbill/gen/subscription_bundle.rb
209
- - lib/killbill/gen/subscription_status_dry_run.rb
210
- - lib/killbill/gen/subscription_transition.rb
211
- - lib/killbill/gen/tag.rb
212
- - lib/killbill/gen/tag_api_exception.rb
213
- - lib/killbill/gen/tag_definition.rb
214
- - lib/killbill/gen/tag_definition_api_exception.rb
215
- - lib/killbill/gen/tag_user_api.rb
216
- - lib/killbill/gen/tenant.rb
217
- - lib/killbill/gen/tenant_api_exception.rb
218
- - lib/killbill/gen/tenant_context.rb
219
- - lib/killbill/gen/tenant_data.rb
220
- - lib/killbill/gen/tenant_kv.rb
221
- - lib/killbill/gen/tenant_service.rb
222
- - lib/killbill/gen/tenant_user_api.rb
223
- - lib/killbill/gen/unit.rb
128
+ - lib/killbill/gen/api/account.rb
129
+ - lib/killbill/gen/api/account_api_exception.rb
130
+ - lib/killbill/gen/api/account_data.rb
131
+ - lib/killbill/gen/api/account_email.rb
132
+ - lib/killbill/gen/api/account_user_api.rb
133
+ - lib/killbill/gen/api/audit_user_api.rb
134
+ - lib/killbill/gen/api/billing_exception_base.rb
135
+ - lib/killbill/gen/api/blockable.rb
136
+ - lib/killbill/gen/api/blocking_api_exception.rb
137
+ - lib/killbill/gen/api/blocking_state.rb
138
+ - lib/killbill/gen/api/call_context.rb
139
+ - lib/killbill/gen/api/catalog.rb
140
+ - lib/killbill/gen/api/catalog_api_exception.rb
141
+ - lib/killbill/gen/api/catalog_user_api.rb
142
+ - lib/killbill/gen/api/column_info.rb
143
+ - lib/killbill/gen/api/control_tag.rb
144
+ - lib/killbill/gen/api/currency_value_null.rb
145
+ - lib/killbill/gen/api/custom_field.rb
146
+ - lib/killbill/gen/api/custom_field_api_exception.rb
147
+ - lib/killbill/gen/api/custom_field_user_api.rb
148
+ - lib/killbill/gen/api/database_export_output_stream.rb
149
+ - lib/killbill/gen/api/duration.rb
150
+ - lib/killbill/gen/api/entitlement_user_api.rb
151
+ - lib/killbill/gen/api/entitlement_user_api_exception.rb
152
+ - lib/killbill/gen/api/entity.rb
153
+ - lib/killbill/gen/api/illegal_plan_change.rb
154
+ - lib/killbill/gen/api/international_price.rb
155
+ - lib/killbill/gen/api/invalid_config_exception.rb
156
+ - lib/killbill/gen/api/invoice.rb
157
+ - lib/killbill/gen/api/invoice_api_exception.rb
158
+ - lib/killbill/gen/api/invoice_creation_event.rb
159
+ - lib/killbill/gen/api/invoice_formatter.rb
160
+ - lib/killbill/gen/api/invoice_item.rb
161
+ - lib/killbill/gen/api/invoice_item_formatter.rb
162
+ - lib/killbill/gen/api/invoice_payment.rb
163
+ - lib/killbill/gen/api/invoice_payment_api.rb
164
+ - lib/killbill/gen/api/invoice_user_api.rb
165
+ - lib/killbill/gen/api/junction_api.rb
166
+ - lib/killbill/gen/api/limit.rb
167
+ - lib/killbill/gen/api/listing.rb
168
+ - lib/killbill/gen/api/migration_plan.rb
169
+ - lib/killbill/gen/api/mutable_account_data.rb
170
+ - lib/killbill/gen/api/osgi_killbill.rb
171
+ - lib/killbill/gen/api/osgi_plugin_properties.rb
172
+ - lib/killbill/gen/api/payment.rb
173
+ - lib/killbill/gen/api/payment_api.rb
174
+ - lib/killbill/gen/api/payment_api_exception.rb
175
+ - lib/killbill/gen/api/payment_attempt.rb
176
+ - lib/killbill/gen/api/payment_method.rb
177
+ - lib/killbill/gen/api/payment_method_kv_info.rb
178
+ - lib/killbill/gen/api/payment_method_plugin.rb
179
+ - lib/killbill/gen/api/plan.rb
180
+ - lib/killbill/gen/api/plan_change_result.rb
181
+ - lib/killbill/gen/api/plan_phase.rb
182
+ - lib/killbill/gen/api/plan_phase_specifier.rb
183
+ - lib/killbill/gen/api/plan_specifier.rb
184
+ - lib/killbill/gen/api/plugin_config_service_api.rb
185
+ - lib/killbill/gen/api/price.rb
186
+ - lib/killbill/gen/api/price_list.rb
187
+ - lib/killbill/gen/api/price_list_set.rb
188
+ - lib/killbill/gen/api/product.rb
189
+ - lib/killbill/gen/api/record_id_api.rb
190
+ - lib/killbill/gen/api/refund.rb
191
+ - lib/killbill/gen/api/require_gen.rb
192
+ - lib/killbill/gen/api/rolled_up_usage.rb
193
+ - lib/killbill/gen/api/static_catalog.rb
194
+ - lib/killbill/gen/api/subscription.rb
195
+ - lib/killbill/gen/api/subscription_bundle.rb
196
+ - lib/killbill/gen/api/subscription_status_dry_run.rb
197
+ - lib/killbill/gen/api/subscription_transition.rb
198
+ - lib/killbill/gen/api/tag.rb
199
+ - lib/killbill/gen/api/tag_api_exception.rb
200
+ - lib/killbill/gen/api/tag_definition.rb
201
+ - lib/killbill/gen/api/tag_definition_api_exception.rb
202
+ - lib/killbill/gen/api/tag_user_api.rb
203
+ - lib/killbill/gen/api/tenant.rb
204
+ - lib/killbill/gen/api/tenant_api_exception.rb
205
+ - lib/killbill/gen/api/tenant_context.rb
206
+ - lib/killbill/gen/api/tenant_data.rb
207
+ - lib/killbill/gen/api/tenant_kv.rb
208
+ - lib/killbill/gen/api/tenant_user_api.rb
209
+ - lib/killbill/gen/api/unit.rb
210
+ - lib/killbill/gen/api/usage_user_api.rb
211
+ - lib/killbill/gen/plugin-api/ext_bus_event.rb
212
+ - lib/killbill/gen/plugin-api/notification_plugin_api.rb
213
+ - lib/killbill/gen/plugin-api/payment_info_plugin.rb
214
+ - lib/killbill/gen/plugin-api/payment_method_info_plugin.rb
215
+ - lib/killbill/gen/plugin-api/payment_plugin_api.rb
216
+ - lib/killbill/gen/plugin-api/payment_plugin_api_exception.rb
217
+ - lib/killbill/gen/plugin-api/refund_info_plugin.rb
218
+ - lib/killbill/gen/plugin-api/require_gen.rb
224
219
  - lib/killbill/http_servlet.rb
225
220
  - lib/killbill/jnotification.rb
226
- - lib/killbill/jpayment.rb
227
221
  - lib/killbill/jplugin.rb
228
222
  - lib/killbill/killbill_api.rb
229
223
  - lib/killbill/killbill_logger.rb
@@ -233,17 +227,16 @@ files:
233
227
  - lib/killbill/rake_task.rb
234
228
  - spec/killbill/base_plugin_spec.rb
235
229
  - spec/killbill/config_test.ru
236
- - spec/killbill/jnotification_spec.rb
237
- - spec/killbill/jpayment_spec.rb
238
230
  - spec/killbill/killbill_integration_spec.rb
239
231
  - spec/killbill/killbillapi_spec.rb
232
+ - spec/killbill/notification_plugin_api_spec.rb
240
233
  - spec/killbill/notification_plugin_spec.rb
241
234
  - spec/killbill/notification_test.rb
235
+ - spec/killbill/payment_plugin_api_spec.rb
242
236
  - spec/killbill/payment_plugin_spec.rb
243
237
  - spec/killbill/payment_test.rb
244
238
  - spec/killbill/rack_handler_spec.rb
245
239
  - spec/spec_helper.rb
246
- - tools/java2ruby.rb
247
240
  homepage: http://kill-bill.org
248
241
  licenses:
249
242
  - Apache License (2.0)
@@ -265,9 +258,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
265
258
  - !ruby/object:Gem::Version
266
259
  segments:
267
260
  - 0
261
+ hash: 2
268
262
  version: !binary |-
269
263
  MA==
270
- hash: 2
271
264
  none: false
272
265
  requirements:
273
266
  - jar 'com.ning.billing:killbill-api'
@@ -280,12 +273,12 @@ summary: Framework to write Kill Bill plugins in Ruby.
280
273
  test_files:
281
274
  - spec/killbill/base_plugin_spec.rb
282
275
  - spec/killbill/config_test.ru
283
- - spec/killbill/jnotification_spec.rb
284
- - spec/killbill/jpayment_spec.rb
285
276
  - spec/killbill/killbill_integration_spec.rb
286
277
  - spec/killbill/killbillapi_spec.rb
278
+ - spec/killbill/notification_plugin_api_spec.rb
287
279
  - spec/killbill/notification_plugin_spec.rb
288
280
  - spec/killbill/notification_test.rb
281
+ - spec/killbill/payment_plugin_api_spec.rb
289
282
  - spec/killbill/payment_plugin_spec.rb
290
283
  - spec/killbill/payment_test.rb
291
284
  - spec/killbill/rack_handler_spec.rb