killbill 1.1.2 → 1.2.0

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