killbill 3.1.3 → 3.1.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (146) hide show
  1. checksums.yaml +4 -4
  2. data/Jarfile +7 -5
  3. data/NEWS +3 -0
  4. data/README.md +41 -17
  5. data/VERSION +1 -1
  6. data/generators/active_merchant/templates/Jarfile.rb +7 -5
  7. data/generators/active_merchant/templates/config.yml.rb +3 -3
  8. data/generators/active_merchant/templates/db/ddl.sql.rb +4 -0
  9. data/generators/active_merchant/templates/db/schema.rb +4 -0
  10. data/generators/active_merchant/templates/lib/api.rb +42 -22
  11. data/generators/active_merchant/templates/lib/models/response.rb +3 -1
  12. data/generators/active_merchant/templates/plugin.gemspec.rb +1 -1
  13. data/lib/killbill.rb +7 -4
  14. data/lib/killbill/gen/api/account.rb +4 -3
  15. data/lib/killbill/gen/api/account_api_exception.rb +4 -3
  16. data/lib/killbill/gen/api/account_audit_logs.rb +12 -68
  17. data/lib/killbill/gen/api/account_audit_logs_for_object_type.rb +4 -3
  18. data/lib/killbill/gen/api/account_data.rb +4 -3
  19. data/lib/killbill/gen/api/account_email.rb +4 -3
  20. data/lib/killbill/gen/api/account_user_api.rb +4 -3
  21. data/lib/killbill/gen/api/audit_log.rb +4 -3
  22. data/lib/killbill/gen/api/audit_user_api.rb +4 -3
  23. data/lib/killbill/gen/api/billing_exception_base.rb +4 -3
  24. data/lib/killbill/gen/api/block.rb +4 -3
  25. data/lib/killbill/gen/api/blockable.rb +4 -3
  26. data/lib/killbill/gen/api/blocking_api_exception.rb +4 -3
  27. data/lib/killbill/gen/api/blocking_state.rb +4 -3
  28. data/lib/killbill/gen/api/call_context.rb +4 -3
  29. data/lib/killbill/gen/api/catalog.rb +4 -3
  30. data/lib/killbill/gen/api/catalog_api_exception.rb +4 -3
  31. data/lib/killbill/gen/api/catalog_user_api.rb +4 -3
  32. data/lib/killbill/gen/api/column_info.rb +4 -3
  33. data/lib/killbill/gen/api/control_tag.rb +4 -3
  34. data/lib/killbill/gen/api/currency_conversion.rb +4 -3
  35. data/lib/killbill/gen/api/currency_conversion_api.rb +4 -3
  36. data/lib/killbill/gen/api/currency_conversion_exception.rb +4 -3
  37. data/lib/killbill/gen/api/currency_value_null.rb +4 -3
  38. data/lib/killbill/gen/api/custom_field.rb +4 -3
  39. data/lib/killbill/gen/api/custom_field_api_exception.rb +4 -3
  40. data/lib/killbill/gen/api/custom_field_user_api.rb +4 -3
  41. data/lib/killbill/gen/api/database_export_output_stream.rb +4 -3
  42. data/lib/killbill/gen/api/direct_payment.rb +39 -11
  43. data/lib/killbill/gen/api/direct_payment_api.rb +643 -31
  44. data/lib/killbill/gen/api/direct_payment_transaction.rb +37 -12
  45. data/lib/killbill/gen/api/duration.rb +4 -3
  46. data/lib/killbill/gen/api/entitlement.rb +4 -3
  47. data/lib/killbill/gen/api/entitlement_ao_status_dry_run.rb +4 -3
  48. data/lib/killbill/gen/api/entitlement_api.rb +4 -3
  49. data/lib/killbill/gen/api/entitlement_api_exception.rb +4 -3
  50. data/lib/killbill/gen/api/entity.rb +4 -3
  51. data/lib/killbill/gen/api/fixed.rb +4 -3
  52. data/lib/killbill/gen/api/illegal_plan_change.rb +4 -3
  53. data/lib/killbill/gen/api/international_price.rb +4 -3
  54. data/lib/killbill/gen/api/invalid_config_exception.rb +4 -3
  55. data/lib/killbill/gen/api/invoice.rb +4 -3
  56. data/lib/killbill/gen/api/invoice_api_exception.rb +4 -3
  57. data/lib/killbill/gen/api/invoice_creation_event.rb +4 -3
  58. data/lib/killbill/gen/api/invoice_formatter.rb +4 -3
  59. data/lib/killbill/gen/api/invoice_item.rb +4 -3
  60. data/lib/killbill/gen/api/invoice_item_formatter.rb +4 -3
  61. data/lib/killbill/gen/api/invoice_payment.rb +7 -7
  62. data/lib/killbill/gen/api/invoice_payment_api.rb +7 -153
  63. data/lib/killbill/gen/api/invoice_user_api.rb +22 -3
  64. data/lib/killbill/gen/api/limit.rb +4 -3
  65. data/lib/killbill/gen/api/listing.rb +4 -3
  66. data/lib/killbill/gen/api/migration_plan.rb +4 -3
  67. data/lib/killbill/gen/api/mutable_account_data.rb +4 -3
  68. data/lib/killbill/gen/api/osgi_killbill.rb +15 -7
  69. data/lib/killbill/gen/api/osgi_plugin_properties.rb +4 -3
  70. data/lib/killbill/gen/api/pagination.rb +4 -3
  71. data/lib/killbill/gen/api/payment_api_exception.rb +4 -3
  72. data/lib/killbill/gen/api/payment_gateway_api.rb +4 -3
  73. data/lib/killbill/gen/api/payment_method.rb +11 -4
  74. data/lib/killbill/gen/api/payment_method_plugin.rb +5 -76
  75. data/lib/killbill/gen/api/payment_options.rb +68 -0
  76. data/lib/killbill/gen/api/plan.rb +4 -3
  77. data/lib/killbill/gen/api/plan_change_result.rb +4 -3
  78. data/lib/killbill/gen/api/plan_phase.rb +4 -3
  79. data/lib/killbill/gen/api/plan_phase_specifier.rb +4 -3
  80. data/lib/killbill/gen/api/plan_specifier.rb +4 -3
  81. data/lib/killbill/gen/api/plugin_config_service_api.rb +4 -3
  82. data/lib/killbill/gen/api/plugin_property.rb +4 -3
  83. data/lib/killbill/gen/api/price.rb +4 -3
  84. data/lib/killbill/gen/api/price_list.rb +4 -3
  85. data/lib/killbill/gen/api/price_list_set.rb +4 -3
  86. data/lib/killbill/gen/api/product.rb +4 -3
  87. data/lib/killbill/gen/api/rate.rb +4 -3
  88. data/lib/killbill/gen/api/record_id_api.rb +4 -3
  89. data/lib/killbill/gen/api/recurring.rb +4 -3
  90. data/lib/killbill/gen/api/refund.rb +7 -6
  91. data/lib/killbill/gen/api/require_gen.rb +5 -6
  92. data/lib/killbill/gen/api/rolled_up_usage.rb +4 -3
  93. data/lib/killbill/gen/api/security_api_exception.rb +4 -3
  94. data/lib/killbill/gen/api/static_catalog.rb +4 -3
  95. data/lib/killbill/gen/api/subscription.rb +4 -3
  96. data/lib/killbill/gen/api/subscription_api.rb +4 -3
  97. data/lib/killbill/gen/api/subscription_api_exception.rb +4 -3
  98. data/lib/killbill/gen/api/subscription_bundle.rb +4 -3
  99. data/lib/killbill/gen/api/subscription_bundle_timeline.rb +4 -3
  100. data/lib/killbill/gen/api/subscription_event.rb +4 -3
  101. data/lib/killbill/gen/api/tag.rb +4 -3
  102. data/lib/killbill/gen/api/tag_api_exception.rb +4 -3
  103. data/lib/killbill/gen/api/tag_definition.rb +4 -3
  104. data/lib/killbill/gen/api/tag_definition_api_exception.rb +4 -3
  105. data/lib/killbill/gen/api/tag_user_api.rb +4 -3
  106. data/lib/killbill/gen/api/tenant.rb +4 -3
  107. data/lib/killbill/gen/api/tenant_api_exception.rb +4 -3
  108. data/lib/killbill/gen/api/tenant_context.rb +4 -3
  109. data/lib/killbill/gen/api/tenant_data.rb +4 -3
  110. data/lib/killbill/gen/api/tenant_kv.rb +4 -3
  111. data/lib/killbill/gen/api/tenant_user_api.rb +4 -3
  112. data/lib/killbill/gen/api/tier.rb +4 -3
  113. data/lib/killbill/gen/api/tiered_block.rb +4 -3
  114. data/lib/killbill/gen/api/unit.rb +4 -3
  115. data/lib/killbill/gen/api/usage.rb +4 -3
  116. data/lib/killbill/gen/api/usage_user_api.rb +4 -3
  117. data/lib/killbill/gen/plugin-api/currency_plugin_api.rb +4 -3
  118. data/lib/killbill/gen/plugin-api/ext_bus_event.rb +4 -3
  119. data/lib/killbill/gen/plugin-api/gateway_notification.rb +4 -3
  120. data/lib/killbill/gen/plugin-api/hosted_payment_page_form_descriptor.rb +4 -3
  121. data/lib/killbill/gen/plugin-api/notification_plugin_api.rb +4 -3
  122. data/lib/killbill/gen/plugin-api/payment_method_info_plugin.rb +4 -3
  123. data/lib/killbill/gen/plugin-api/payment_plugin_api.rb +75 -81
  124. data/lib/killbill/gen/plugin-api/payment_plugin_api_exception.rb +4 -3
  125. data/lib/killbill/gen/plugin-api/{payment_info_plugin.rb → payment_transaction_info_plugin.rb} +21 -6
  126. data/lib/killbill/gen/plugin-api/require_gen.rb +5 -5
  127. data/lib/killbill/helpers/active_merchant/active_record/models/payment_method.rb +20 -36
  128. data/lib/killbill/helpers/active_merchant/active_record/models/response.rb +72 -81
  129. data/lib/killbill/helpers/active_merchant/active_record/models/transaction.rb +62 -43
  130. data/lib/killbill/helpers/active_merchant/killbill_spec_helper.rb +0 -13
  131. data/lib/killbill/helpers/active_merchant/payment_plugin.rb +127 -125
  132. data/lib/killbill/http_servlet.rb +16 -1
  133. data/lib/killbill/killbill_api.rb +0 -3
  134. data/lib/killbill/payment.rb +22 -6
  135. data/lib/killbill/rake_task.rb +93 -31
  136. data/spec/killbill/helpers/payment_method_spec.rb +153 -0
  137. data/spec/killbill/helpers/response_spec.rb +58 -15
  138. data/spec/killbill/helpers/test_schema.rb +12 -8
  139. data/spec/killbill/helpers/transaction_spec.rb +134 -0
  140. data/spec/killbill/payment_plugin_api_spec.rb +18 -18
  141. data/spec/killbill/payment_plugin_spec.rb +26 -15
  142. data/spec/killbill/payment_test.rb +6 -7
  143. data/spec/spec_helper.rb +3 -0
  144. metadata +6 -5
  145. data/lib/killbill/gen/api/payment.rb +0 -187
  146. data/lib/killbill/gen/plugin-api/refund_info_plugin.rb +0 -152
@@ -28,14 +28,16 @@ ActiveRecord::Schema.define(:version => 20140410153635) do
28
28
 
29
29
  create_table "test_transactions", :force => true do |t|
30
30
  t.integer "response_id", :null => false
31
- t.string "api_call", :null => false
32
- t.string "kb_payment_id", :null => false
33
- t.integer "amount_in_cents", :null => false
34
- t.string "currency", :null => false
35
- t.datetime "created_at", :null => false
36
- t.datetime "updated_at", :null => false
37
- t.string "kb_account_id", :null => false
38
- t.string "kb_tenant_id", :null => false
31
+ t.string "api_call", :null => false
32
+ t.string "kb_payment_id", :null => false
33
+ t.string "kb_payment_transaction_id", :null => false
34
+ t.string "transaction_type", :null => false
35
+ t.integer "amount_in_cents", :null => false
36
+ t.string "currency", :null => false
37
+ t.datetime "created_at", :null => false
38
+ t.datetime "updated_at", :null => false
39
+ t.string "kb_account_id", :null => false
40
+ t.string "kb_tenant_id", :null => false
39
41
  end
40
42
 
41
43
  add_index(:test_transactions, :kb_payment_id)
@@ -43,6 +45,8 @@ ActiveRecord::Schema.define(:version => 20140410153635) do
43
45
  create_table "test_responses", :force => true do |t|
44
46
  t.string "api_call", :null => false
45
47
  t.string "kb_payment_id"
48
+ t.string "kb_payment_transaction_id"
49
+ t.string "transaction_type"
46
50
  t.string "message"
47
51
  t.string "authorization"
48
52
  t.boolean "fraud_review"
@@ -0,0 +1,134 @@
1
+ require 'spec_helper'
2
+
3
+ module Killbill #:nodoc:
4
+ module Test #:nodoc:
5
+ class TestTransaction < ::Killbill::Plugin::ActiveMerchant::ActiveRecord::Transaction
6
+
7
+ self.table_name = 'test_transactions'
8
+
9
+ end
10
+ end
11
+ end
12
+
13
+ describe Killbill::Plugin::ActiveMerchant::ActiveRecord::Transaction do
14
+
15
+ before :all do
16
+ ::Killbill::Test::TestTransaction.delete_all
17
+ end
18
+
19
+ it 'should store and retrieve transactions correctly' do
20
+ api_call = 'for debugging only'
21
+ amount_in_cents = 1242
22
+ currency = :USD
23
+ kb_account_id = SecureRandom.uuid
24
+ kb_tenant_id = SecureRandom.uuid
25
+
26
+ kb_payment_id1 = SecureRandom.uuid
27
+ kb_payment_id2 = SecureRandom.uuid
28
+ kb_payment_transaction_id1 = SecureRandom.uuid
29
+ kb_payment_transaction_id2 = SecureRandom.uuid
30
+ kb_payment_transaction_id3 = SecureRandom.uuid
31
+ kb_payment_transaction_id4 = SecureRandom.uuid
32
+ kb_payment_transaction_id5 = SecureRandom.uuid
33
+ transaction_type1 = :AUTHORIZE
34
+ transaction_type2 = :CAPTURE
35
+ transaction_type3 = :CAPTURE
36
+ transaction_type4 = :PURCHASE
37
+ transaction_type5 = :REFUND
38
+
39
+ create_transaction(api_call, kb_payment_id1, kb_payment_transaction_id1, transaction_type1, amount_in_cents, currency, kb_account_id, kb_tenant_id)
40
+ create_transaction(api_call, kb_payment_id1, kb_payment_transaction_id2, transaction_type2, amount_in_cents, currency, kb_account_id, kb_tenant_id)
41
+ create_transaction(api_call, kb_payment_id1, kb_payment_transaction_id3, transaction_type3, amount_in_cents, currency, kb_account_id, kb_tenant_id)
42
+ create_transaction(api_call, kb_payment_id2, kb_payment_transaction_id4, transaction_type4, amount_in_cents, currency, kb_account_id, kb_tenant_id)
43
+ create_transaction(api_call, kb_payment_id2, kb_payment_transaction_id5, transaction_type5, amount_in_cents, currency, kb_account_id, kb_tenant_id)
44
+
45
+ ::Killbill::Test::TestTransaction.transactions_from_kb_payment_id(kb_payment_id1, nil).size.should == 0
46
+ ::Killbill::Test::TestTransaction.transactions_from_kb_payment_id(kb_payment_id1, SecureRandom.uuid).size.should == 0
47
+ ::Killbill::Test::TestTransaction.transactions_from_kb_payment_id(SecureRandom.uuid, kb_tenant_id).size.should == 0
48
+
49
+ # Lookup transactions for kb_payment_id1
50
+ ts = ::Killbill::Test::TestTransaction.transactions_from_kb_payment_id(kb_payment_id1, kb_tenant_id)
51
+ ts.size.should == 3
52
+ ts[0].kb_payment_transaction_id.should == kb_payment_transaction_id1
53
+ ts[1].kb_payment_transaction_id.should == kb_payment_transaction_id2
54
+ ts[2].kb_payment_transaction_id.should == kb_payment_transaction_id3
55
+
56
+ # Lookup transactions for kb_payment_id2
57
+ ts = ::Killbill::Test::TestTransaction.transactions_from_kb_payment_id(kb_payment_id2, kb_tenant_id)
58
+ ts.size.should == 2
59
+ ts[0].kb_payment_transaction_id.should == kb_payment_transaction_id4
60
+ ts[1].kb_payment_transaction_id.should == kb_payment_transaction_id5
61
+
62
+ # Lookup AUTH for kb_payment_id1
63
+ ts = ::Killbill::Test::TestTransaction.authorizes_from_kb_payment_id(kb_payment_id1, kb_tenant_id)
64
+ ts.size.should == 1
65
+ ts[0].kb_payment_transaction_id.should == kb_payment_transaction_id1
66
+ ts = ::Killbill::Test::TestTransaction.authorizations_from_kb_payment_id(kb_payment_id1, kb_tenant_id)
67
+ ts.size.should == 1
68
+ ts[0].kb_payment_transaction_id.should == kb_payment_transaction_id1
69
+
70
+ # Lookup CAPTURE for kb_payment_id1
71
+ ts = ::Killbill::Test::TestTransaction.captures_from_kb_payment_id(kb_payment_id1, kb_tenant_id)
72
+ ts.size.should == 2
73
+ ts[0].kb_payment_transaction_id.should == kb_payment_transaction_id2
74
+ ts[1].kb_payment_transaction_id.should == kb_payment_transaction_id3
75
+
76
+ # Lookup PURCHASE for kb_payment_id1
77
+ ::Killbill::Test::TestTransaction.purchases_from_kb_payment_id(kb_payment_id1, kb_tenant_id).size.should == 0
78
+
79
+ # Lookup CREDIT for kb_payment_id1
80
+ ::Killbill::Test::TestTransaction.credits_from_kb_payment_id(kb_payment_id1, kb_tenant_id).size.should == 0
81
+
82
+ # Lookup REFUND for kb_payment_id1
83
+ ::Killbill::Test::TestTransaction.refunds_from_kb_payment_id(kb_payment_id1, kb_tenant_id).size.should == 0
84
+
85
+ # Lookup VOID for kb_payment_id1
86
+ ::Killbill::Test::TestTransaction.void_from_kb_payment_id(kb_payment_id1, kb_tenant_id).should be_nil
87
+
88
+ # Lookup AUTH for kb_payment_id2
89
+ ::Killbill::Test::TestTransaction.authorizes_from_kb_payment_id(kb_payment_id2, kb_tenant_id).size.should == 0
90
+ ::Killbill::Test::TestTransaction.authorizations_from_kb_payment_id(kb_payment_id2, kb_tenant_id).size.should == 0
91
+
92
+ # Lookup CAPTURE for kb_payment_id2
93
+ ::Killbill::Test::TestTransaction.captures_from_kb_payment_id(kb_payment_id2, kb_tenant_id).size.should == 0
94
+
95
+ # Lookup PURCHASE for kb_payment_id2
96
+ ts = ::Killbill::Test::TestTransaction.purchases_from_kb_payment_id(kb_payment_id2, kb_tenant_id)
97
+ ts.size.should == 1
98
+ ts[0].kb_payment_transaction_id.should == kb_payment_transaction_id4
99
+
100
+ # Lookup CREDIT for kb_payment_id2
101
+ ::Killbill::Test::TestTransaction.credits_from_kb_payment_id(kb_payment_id2, kb_tenant_id).size.should == 0
102
+
103
+ # Lookup REFUND for kb_payment_id2
104
+ ts = ::Killbill::Test::TestTransaction.refunds_from_kb_payment_id(kb_payment_id2, kb_tenant_id)
105
+ ts.size.should == 1
106
+ ts[0].kb_payment_transaction_id.should == kb_payment_transaction_id5
107
+
108
+ # Lookup VOID for kb_payment_id2
109
+ ::Killbill::Test::TestTransaction.void_from_kb_payment_id(kb_payment_id2, kb_tenant_id).should be_nil
110
+
111
+ # Lookup individual transactions
112
+ ::Killbill::Test::TestTransaction.from_kb_payment_transaction_id(kb_payment_transaction_id1, SecureRandom.uuid).should be_nil
113
+ ::Killbill::Test::TestTransaction.from_kb_payment_transaction_id(SecureRandom.uuid, kb_tenant_id).should be_nil
114
+ ::Killbill::Test::TestTransaction.from_kb_payment_transaction_id(kb_payment_transaction_id1, kb_tenant_id).transaction_type.should == 'AUTHORIZE'
115
+ ::Killbill::Test::TestTransaction.from_kb_payment_transaction_id(kb_payment_transaction_id2, kb_tenant_id).transaction_type.should == 'CAPTURE'
116
+ ::Killbill::Test::TestTransaction.from_kb_payment_transaction_id(kb_payment_transaction_id3, kb_tenant_id).transaction_type.should == 'CAPTURE'
117
+ ::Killbill::Test::TestTransaction.from_kb_payment_transaction_id(kb_payment_transaction_id4, kb_tenant_id).transaction_type.should == 'PURCHASE'
118
+ ::Killbill::Test::TestTransaction.from_kb_payment_transaction_id(kb_payment_transaction_id5, kb_tenant_id).transaction_type.should == 'REFUND'
119
+ end
120
+
121
+ private
122
+
123
+ def create_transaction(api_call, kb_payment_id, kb_payment_transaction_id, transaction_type, amount_in_cents, currency, kb_account_id, kb_tenant_id)
124
+ ::Killbill::Test::TestTransaction.create(:api_call => api_call,
125
+ :kb_payment_id => kb_payment_id,
126
+ :kb_payment_transaction_id => kb_payment_transaction_id,
127
+ :transaction_type => transaction_type,
128
+ :amount_in_cents => amount_in_cents,
129
+ :currency => currency,
130
+ :kb_account_id => kb_account_id,
131
+ :kb_tenant_id => kb_tenant_id,
132
+ :response_id => 0)
133
+ end
134
+ end
@@ -4,18 +4,18 @@ require 'spec_helper'
4
4
  describe Killbill::Plugin::Api::PaymentPluginApi do
5
5
 
6
6
  before(:all) do
7
- @call_context = Killbill::Plugin::Model::CallContext.new
8
- logger = ::Logger.new(STDOUT)
9
- @paymentPluginApi = Killbill::Plugin::Api::PaymentPluginApi.new("Killbill::Plugin::PaymentTest", { "logger" => logger })
10
- @kb_account_id = java.util.UUID.fromString("aa5c926e-3d9d-4435-b44b-719d7b583256")
11
- @kb_payment_id = java.util.UUID.fromString("bf5c926e-3d9c-470e-b34b-719d7b58323a")
12
- @kb_payment_method_id = java.util.UUID.fromString("bf5c926e-3d9c-470e-b34b-719d7b58323a")
7
+ @call_context = Killbill::Plugin::Model::CallContext.new
8
+ logger = ::Logger.new(STDOUT)
9
+ @paymentPluginApi = Killbill::Plugin::Api::PaymentPluginApi.new("Killbill::Plugin::PaymentTest", {"logger" => logger})
10
+ @kb_account_id = java.util.UUID.fromString("aa5c926e-3d9d-4435-b44b-719d7b583256")
11
+ @kb_payment_id = java.util.UUID.fromString("bf5c926e-3d9c-470e-b34b-719d7b58323a")
12
+ @kb_payment_method_id = java.util.UUID.fromString("bf5c926e-3d9c-470e-b34b-719d7b58323a")
13
13
  @payment_method_plugin = nil
14
- @amount = java.math.BigDecimal.new("50")
15
- @currency = Java::org.killbill.billing.catalog.api.Currency::USD
16
- propertyA = Java::org.killbill.billing.payment.api.PluginProperty.new('keyA', 'valueA', false)
17
- propertyB = Java::org.killbill.billing.payment.api.PluginProperty.new('keyB', 'valueB', true)
18
- @properties = java.util.ArrayList.new
14
+ @amount = java.math.BigDecimal.new("50")
15
+ @currency = Java::org.killbill.billing.catalog.api.Currency::USD
16
+ propertyA = Java::org.killbill.billing.payment.api.PluginProperty.new('keyA', 'valueA', false)
17
+ propertyB = Java::org.killbill.billing.payment.api.PluginProperty.new('keyB', 'valueB', true)
18
+ @properties = java.util.ArrayList.new
19
19
  @properties.add(propertyA)
20
20
  @properties.add(propertyB)
21
21
  end
@@ -25,7 +25,7 @@ describe Killbill::Plugin::Api::PaymentPluginApi do
25
25
  end
26
26
 
27
27
  it "should_test_charge_ok" do
28
- output = @paymentPluginApi.process_payment(@kb_account_id, @kb_payment_id, @kb_payment_method_id, @amount, @currency, @properties, nil)
28
+ output = @paymentPluginApi.purchase_payment(@kb_account_id, @kb_payment_id, @kb_payment_transaction_id, @kb_payment_method_id, @amount, @currency, @properties, nil)
29
29
  output.amount.should be_an_instance_of java.math.BigDecimal
30
30
  output.amount.compare_to(@amount).should == 0
31
31
  output.status.java_kind_of?(Java::org.killbill.billing.payment.plugin.api.PaymentPluginStatus).should == true
@@ -34,35 +34,35 @@ describe Killbill::Plugin::Api::PaymentPluginApi do
34
34
 
35
35
  it "should_test_charge_exception" do
36
36
  @paymentPluginApi.delegate_plugin.send(:raise_exception_on_next_calls)
37
- lambda { @paymentPluginApi.process_payment(@kb_account_id, @kb_payment_id, @kb_payment_method_id, @amount, @currency, @properties, nil) }.should raise_error Java::org.killbill.billing.payment.plugin.api.PaymentPluginApiException
37
+ lambda { @paymentPluginApi.purchase_payment(@kb_account_id, @kb_payment_id, @kb_payment_transaction_id, @kb_payment_method_id, @amount, @currency, @properties, nil) }.should raise_error Java::org.killbill.billing.payment.plugin.api.PaymentPluginApiException
38
38
  end
39
39
 
40
40
  it "should_test_get_payment_info_ok" do
41
41
  output = @paymentPluginApi.get_payment_info(@kb_account_id, @kb_payment_method_id, @properties, nil)
42
+ output.size.should == 1
43
+ output = output.first
42
44
  output.amount.should be_an_instance_of java.math.BigDecimal
43
45
  output.amount.compare_to(java.math.BigDecimal.new(0)).should == 0
44
46
  output.status.java_kind_of?(Java::org.killbill.billing.payment.plugin.api.PaymentPluginStatus).should == true
45
47
  output.status.to_s.should == "PROCESSED"
46
48
  end
47
49
 
48
-
49
50
  it "should_test_get_payment_info_exception" do
50
51
  @paymentPluginApi.delegate_plugin.send(:raise_exception_on_next_calls)
51
52
  lambda { @paymentPluginApi.get_payment_info(@kb_account_id, @kb_payment_method_id, @properties, nil) }.should raise_error Java::org.killbill.billing.payment.plugin.api.PaymentPluginApiException
52
53
  end
53
54
 
54
55
  it "should_test_refund_ok" do
55
- output = @paymentPluginApi.process_refund(@kb_account_id, @kb_payment_method_id, @amount, @currency, @properties, nil)
56
+ output = @paymentPluginApi.refund_payment(@kb_account_id, @kb_payment_id, @kb_payment_transaction_id, @kb_payment_method_id, @amount, @currency, @properties, nil)
56
57
  output.amount.should be_an_instance_of java.math.BigDecimal
57
58
  output.amount.compare_to(@amount).should == 0
58
- output.status.java_kind_of?(Java::org.killbill.billing.payment.plugin.api.RefundPluginStatus).should == true
59
+ output.status.java_kind_of?(Java::org.killbill.billing.payment.plugin.api.PaymentPluginStatus).should == true
59
60
  output.status.to_s.should == "PROCESSED"
60
61
  end
61
62
 
62
-
63
63
  it "should_test_refund_exception" do
64
64
  @paymentPluginApi.delegate_plugin.send(:raise_exception_on_next_calls)
65
- lambda { @paymentPluginApi.process_refund(@kb_account_id, @kb_payment_method_id, @amount, @currency, @properties, nil) }.should raise_error Java::org.killbill.billing.payment.plugin.api.PaymentPluginApiException
65
+ lambda { @paymentPluginApi.refund_payment(@kb_account_id, @kb_payment_id, @kb_payment_transaction_id, @kb_payment_method_id, @amount, @currency, @properties, nil) }.should raise_error Java::org.killbill.billing.payment.plugin.api.PaymentPluginApiException
66
66
  end
67
67
 
68
68
  it "should_test_add_payment_method_ok" do
@@ -5,34 +5,45 @@ end
5
5
 
6
6
  describe Killbill::Plugin::Payment do
7
7
  before(:each) do
8
- @kb_account_id = SecureRandom.uuid
9
- @kb_payment_id = SecureRandom.uuid
10
- @amount_in_cents = rand(100000)
11
- @currency = 'USD'
12
- @call_context = Killbill::Plugin::Model::CallContext.new
8
+ @kb_account_id = SecureRandom.uuid
9
+ @kb_payment_id = SecureRandom.uuid
10
+ @kb_payment_transaction_id = SecureRandom.uuid
11
+ @amount_in_cents = rand(100000)
12
+ @currency = 'USD'
13
+ @call_context = Killbill::Plugin::Model::CallContext.new
13
14
 
14
- @payment_method = Hash.new(:credit_card => SecureRandom.uuid)
15
+ @payment_method = Hash.new(:credit_card => SecureRandom.uuid)
15
16
  @kb_payment_method_id = SecureRandom.uuid
16
17
 
17
- @properties = [::Killbill::Plugin::Model::PluginProperty.new]
18
+ @search_key = SecureRandom.uuid
19
+ @offset = 0
20
+ @limit = 100
21
+
22
+ @properties = [::Killbill::Plugin::Model::PluginProperty.new]
18
23
  @payment_method_props = Hash.new
19
- @payment_methods = Hash.new
20
- @killbill_account = Hash.new(:name => SecureRandom.uuid)
24
+ @payment_methods = Hash.new
25
+ @killbill_account = Hash.new(:name => SecureRandom.uuid)
21
26
 
22
27
  @plugin = DummyPaymentPlugin.new
23
28
  end
24
29
 
25
30
  it "should raise exceptions for unsupported operations" do
26
- lambda { @plugin.process_payment(@kb_account_id, @kb_payment_id, @kb_payment_method_id, @amount_in_cents, @currency, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
27
- lambda { @plugin.process_refund(@kb_account_id, @kb_payment_id, @amount_in_cents, @currency, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
31
+ lambda { @plugin.authorize_payment(@kb_account_id, @kb_payment_id, @kb_payment_transaction_id, @kb_payment_method_id, @amount_in_cents, @currency, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
32
+ lambda { @plugin.capture_payment(@kb_account_id, @kb_payment_id, @kb_payment_transaction_id, @kb_payment_method_id, @amount_in_cents, @currency, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
33
+ lambda { @plugin.purchase_payment(@kb_account_id, @kb_payment_id, @kb_payment_transaction_id, @kb_payment_method_id, @amount_in_cents, @currency, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
34
+ lambda { @plugin.void_payment(@kb_account_id, @kb_payment_id, @kb_payment_transaction_id, @kb_payment_method_id, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
35
+ lambda { @plugin.credit_payment(@kb_account_id, @kb_payment_id, @kb_payment_transaction_id, @kb_payment_method_id, @amount_in_cents, @currency, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
36
+ lambda { @plugin.refund_payment(@kb_account_id, @kb_payment_id, @kb_payment_transaction_id, @kb_payment_method_id, @amount_in_cents, @currency, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
28
37
  lambda { @plugin.get_payment_info(@kb_account_id, @kb_payment_id, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
29
- lambda { @plugin.get_refund_info(@kb_account_id, @kb_payment_id, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
38
+ lambda { @plugin.search_payments(@search_key, @offset, @limit, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
30
39
  lambda { @plugin.add_payment_method(@kb_account_id, @payment_method, @payment_method_props, true, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
31
40
  lambda { @plugin.delete_payment_method(@kb_account_id, @kb_payment_method_id, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
32
- lambda { @plugin.set_default_payment_method(@kb_account_id, @payment_method, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
33
-
34
41
  lambda { @plugin.get_payment_method_detail(@kb_account_id, @payment_method, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
42
+ lambda { @plugin.set_default_payment_method(@kb_account_id, @payment_method, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
35
43
  lambda { @plugin.get_payment_methods(@kb_account_id, true, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
36
- lambda { @plugin.reset_payment_methods(@kb_account_id, @properties, @payment_methods, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
44
+ lambda { @plugin.search_payment_methods(@search_key, @offset, @limit, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
45
+ lambda { @plugin.reset_payment_methods(@kb_account_id, @payment_methods, @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
46
+ lambda { @plugin.build_form_descriptor(@kb_account_id, [], @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
47
+ lambda { @plugin.process_notification("{ 'key' => 'value' }", @properties, @call_context) }.should raise_error Killbill::Plugin::Payment::OperationUnsupportedByGatewayError
37
48
  end
38
49
  end
@@ -8,11 +8,11 @@ module Killbill
8
8
  @raise_exception = false
9
9
  end
10
10
 
11
- def process_payment(kb_account_id, kb_payment_id, kb_payment_method_id, amount_in_cents, currency, properties, context)
11
+ def purchase_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount_in_cents, currency, properties, context)
12
12
  if @raise_exception
13
13
  raise StandardError.new("Test exception")
14
14
  else
15
- res = Killbill::Plugin::Model::PaymentInfoPlugin.new
15
+ res = Killbill::Plugin::Model::PaymentTransactionInfoPlugin.new
16
16
  res.amount=amount_in_cents
17
17
  res.status=:PROCESSED
18
18
  res
@@ -23,18 +23,18 @@ module Killbill
23
23
  if @raise_exception
24
24
  raise StandardError.new("Test exception")
25
25
  else
26
- res = Killbill::Plugin::Model::PaymentInfoPlugin.new
26
+ res = Killbill::Plugin::Model::PaymentTransactionInfoPlugin.new
27
27
  res.amount=0
28
28
  res.status=:PROCESSED
29
- res
29
+ [res]
30
30
  end
31
31
  end
32
32
 
33
- def process_refund(kb_account_id, kb_payment_id, amount_in_cents, currency, properties, context)
33
+ def refund_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount_in_cents, currency, properties, context)
34
34
  if @raise_exception
35
35
  raise StandardError.new("Test exception")
36
36
  else
37
- res = Killbill::Plugin::Model::RefundInfoPlugin.new
37
+ res = Killbill::Plugin::Model::PaymentTransactionInfoPlugin.new
38
38
  res.amount=50
39
39
  res.status=:PROCESSED
40
40
  res
@@ -98,7 +98,6 @@ module Killbill
98
98
  def clear_exception_on_next_calls
99
99
  @raise_exception = false
100
100
  end
101
-
102
101
  end
103
102
  end
104
103
  end
@@ -34,6 +34,9 @@ ActiveRecord::Base.establish_connection(
34
34
  :adapter => 'sqlite3',
35
35
  :database => 'test.db'
36
36
  )
37
+ # For debugging
38
+ #ActiveRecord::Base.logger = Logger.new(STDOUT)
39
+ # Create the schema
37
40
  require File.expand_path(File.dirname(__FILE__) + '/killbill/helpers/test_schema.rb')
38
41
 
39
42
  begin
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: killbill
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.3
4
+ version: 3.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kill Bill core team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-05-02 00:00:00.000000000 Z
11
+ date: 2014-07-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sinatra
@@ -257,7 +257,6 @@ files:
257
257
  - lib/killbill/gen/api/osgi_killbill.rb
258
258
  - lib/killbill/gen/api/osgi_plugin_properties.rb
259
259
  - lib/killbill/gen/api/pagination.rb
260
- - lib/killbill/gen/api/payment.rb
261
260
  - lib/killbill/gen/api/payment_api.rb
262
261
  - lib/killbill/gen/api/payment_api_exception.rb
263
262
  - lib/killbill/gen/api/payment_attempt.rb
@@ -265,6 +264,7 @@ files:
265
264
  - lib/killbill/gen/api/payment_method.rb
266
265
  - lib/killbill/gen/api/payment_method_kv_info.rb
267
266
  - lib/killbill/gen/api/payment_method_plugin.rb
267
+ - lib/killbill/gen/api/payment_options.rb
268
268
  - lib/killbill/gen/api/plan.rb
269
269
  - lib/killbill/gen/api/plan_change_result.rb
270
270
  - lib/killbill/gen/api/plan_phase.rb
@@ -313,11 +313,10 @@ files:
313
313
  - lib/killbill/gen/plugin-api/gateway_notification.rb
314
314
  - lib/killbill/gen/plugin-api/hosted_payment_page_form_descriptor.rb
315
315
  - lib/killbill/gen/plugin-api/notification_plugin_api.rb
316
- - lib/killbill/gen/plugin-api/payment_info_plugin.rb
317
316
  - lib/killbill/gen/plugin-api/payment_method_info_plugin.rb
318
317
  - lib/killbill/gen/plugin-api/payment_plugin_api.rb
319
318
  - lib/killbill/gen/plugin-api/payment_plugin_api_exception.rb
320
- - lib/killbill/gen/plugin-api/refund_info_plugin.rb
319
+ - lib/killbill/gen/plugin-api/payment_transaction_info_plugin.rb
321
320
  - lib/killbill/gen/plugin-api/require_gen.rb
322
321
  - lib/killbill/helpers/active_merchant.rb
323
322
  - lib/killbill/helpers/active_merchant/active_record.rb
@@ -351,6 +350,7 @@ files:
351
350
  - spec/killbill/helpers/payment_method_spec.rb
352
351
  - spec/killbill/helpers/response_spec.rb
353
352
  - spec/killbill/helpers/test_schema.rb
353
+ - spec/killbill/helpers/transaction_spec.rb
354
354
  - spec/killbill/helpers/utils_spec.rb
355
355
  - spec/killbill/killbill_integration_spec.rb
356
356
  - spec/killbill/killbillapi_spec.rb
@@ -397,6 +397,7 @@ test_files:
397
397
  - spec/killbill/helpers/payment_method_spec.rb
398
398
  - spec/killbill/helpers/response_spec.rb
399
399
  - spec/killbill/helpers/test_schema.rb
400
+ - spec/killbill/helpers/transaction_spec.rb
400
401
  - spec/killbill/helpers/utils_spec.rb
401
402
  - spec/killbill/killbill_integration_spec.rb
402
403
  - spec/killbill/killbillapi_spec.rb
@@ -1,187 +0,0 @@
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
- module Killbill
27
- module Plugin
28
- module Model
29
-
30
- java_package 'org.killbill.billing.payment.api'
31
- class Payment
32
-
33
- include org.killbill.billing.payment.api.Payment
34
-
35
- attr_accessor :id, :created_date, :updated_date, :account_id, :invoice_id, :payment_method_id, :payment_number, :amount, :paid_amount, :effective_date, :currency, :payment_status, :attempts, :payment_info_plugin
36
-
37
- def initialize()
38
- end
39
-
40
- def to_java()
41
- # conversion for id [type = java.util.UUID]
42
- @id = java.util.UUID.fromString(@id.to_s) unless @id.nil?
43
-
44
- # conversion for created_date [type = org.joda.time.DateTime]
45
- if !@created_date.nil?
46
- @created_date = (@created_date.kind_of? Time) ? DateTime.parse(@created_date.to_s) : @created_date
47
- @created_date = Java::org.joda.time.DateTime.new(@created_date.to_s, Java::org.joda.time.DateTimeZone::UTC)
48
- end
49
-
50
- # conversion for updated_date [type = org.joda.time.DateTime]
51
- if !@updated_date.nil?
52
- @updated_date = (@updated_date.kind_of? Time) ? DateTime.parse(@updated_date.to_s) : @updated_date
53
- @updated_date = Java::org.joda.time.DateTime.new(@updated_date.to_s, Java::org.joda.time.DateTimeZone::UTC)
54
- end
55
-
56
- # conversion for account_id [type = java.util.UUID]
57
- @account_id = java.util.UUID.fromString(@account_id.to_s) unless @account_id.nil?
58
-
59
- # conversion for invoice_id [type = java.util.UUID]
60
- @invoice_id = java.util.UUID.fromString(@invoice_id.to_s) unless @invoice_id.nil?
61
-
62
- # conversion for payment_method_id [type = java.util.UUID]
63
- @payment_method_id = java.util.UUID.fromString(@payment_method_id.to_s) unless @payment_method_id.nil?
64
-
65
- # conversion for payment_number [type = java.lang.Integer]
66
- @payment_number = @payment_number
67
-
68
- # conversion for amount [type = java.math.BigDecimal]
69
- if @amount.nil?
70
- @amount = java.math.BigDecimal::ZERO
71
- else
72
- @amount = java.math.BigDecimal.new(@amount.to_s)
73
- end
74
-
75
- # conversion for paid_amount [type = java.math.BigDecimal]
76
- if @paid_amount.nil?
77
- @paid_amount = java.math.BigDecimal::ZERO
78
- else
79
- @paid_amount = java.math.BigDecimal.new(@paid_amount.to_s)
80
- end
81
-
82
- # conversion for effective_date [type = org.joda.time.DateTime]
83
- if !@effective_date.nil?
84
- @effective_date = (@effective_date.kind_of? Time) ? DateTime.parse(@effective_date.to_s) : @effective_date
85
- @effective_date = Java::org.joda.time.DateTime.new(@effective_date.to_s, Java::org.joda.time.DateTimeZone::UTC)
86
- end
87
-
88
- # conversion for currency [type = org.killbill.billing.catalog.api.Currency]
89
- @currency = Java::org.killbill.billing.catalog.api.Currency.value_of("#{@currency.to_s}") unless @currency.nil?
90
-
91
- # conversion for payment_status [type = org.killbill.billing.payment.api.PaymentStatus]
92
- @payment_status = Java::org.killbill.billing.payment.api.PaymentStatus.value_of("#{@payment_status.to_s}") unless @payment_status.nil?
93
-
94
- # conversion for attempts [type = java.util.List]
95
- tmp = java.util.ArrayList.new
96
- (@attempts || []).each do |m|
97
- # conversion for m [type = org.killbill.billing.payment.api.PaymentAttempt]
98
- m = m.to_java unless m.nil?
99
- tmp.add(m)
100
- end
101
- @attempts = tmp
102
-
103
- # conversion for payment_info_plugin [type = org.killbill.billing.payment.plugin.api.PaymentInfoPlugin]
104
- @payment_info_plugin = @payment_info_plugin.to_java unless @payment_info_plugin.nil?
105
- self
106
- end
107
-
108
- def to_ruby(j_obj)
109
- # conversion for id [type = java.util.UUID]
110
- @id = j_obj.id
111
- @id = @id.nil? ? nil : @id.to_s
112
-
113
- # conversion for created_date [type = org.joda.time.DateTime]
114
- @created_date = j_obj.created_date
115
- if !@created_date.nil?
116
- fmt = Java::org.joda.time.format.ISODateTimeFormat.date_time_no_millis # See https://github.com/killbill/killbill-java-parser/issues/3
117
- str = fmt.print(@created_date)
118
- @created_date = DateTime.iso8601(str)
119
- end
120
-
121
- # conversion for updated_date [type = org.joda.time.DateTime]
122
- @updated_date = j_obj.updated_date
123
- if !@updated_date.nil?
124
- fmt = Java::org.joda.time.format.ISODateTimeFormat.date_time_no_millis # See https://github.com/killbill/killbill-java-parser/issues/3
125
- str = fmt.print(@updated_date)
126
- @updated_date = DateTime.iso8601(str)
127
- end
128
-
129
- # conversion for account_id [type = java.util.UUID]
130
- @account_id = j_obj.account_id
131
- @account_id = @account_id.nil? ? nil : @account_id.to_s
132
-
133
- # conversion for invoice_id [type = java.util.UUID]
134
- @invoice_id = j_obj.invoice_id
135
- @invoice_id = @invoice_id.nil? ? nil : @invoice_id.to_s
136
-
137
- # conversion for payment_method_id [type = java.util.UUID]
138
- @payment_method_id = j_obj.payment_method_id
139
- @payment_method_id = @payment_method_id.nil? ? nil : @payment_method_id.to_s
140
-
141
- # conversion for payment_number [type = java.lang.Integer]
142
- @payment_number = j_obj.payment_number
143
-
144
- # conversion for amount [type = java.math.BigDecimal]
145
- @amount = j_obj.amount
146
- @amount = @amount.nil? ? 0 : BigDecimal.new(@amount.to_s)
147
-
148
- # conversion for paid_amount [type = java.math.BigDecimal]
149
- @paid_amount = j_obj.paid_amount
150
- @paid_amount = @paid_amount.nil? ? 0 : BigDecimal.new(@paid_amount.to_s)
151
-
152
- # conversion for effective_date [type = org.joda.time.DateTime]
153
- @effective_date = j_obj.effective_date
154
- if !@effective_date.nil?
155
- fmt = Java::org.joda.time.format.ISODateTimeFormat.date_time_no_millis # See https://github.com/killbill/killbill-java-parser/issues/3
156
- str = fmt.print(@effective_date)
157
- @effective_date = DateTime.iso8601(str)
158
- end
159
-
160
- # conversion for currency [type = org.killbill.billing.catalog.api.Currency]
161
- @currency = j_obj.currency
162
- @currency = @currency.to_s.to_sym unless @currency.nil?
163
-
164
- # conversion for payment_status [type = org.killbill.billing.payment.api.PaymentStatus]
165
- @payment_status = j_obj.payment_status
166
- @payment_status = @payment_status.to_s.to_sym unless @payment_status.nil?
167
-
168
- # conversion for attempts [type = java.util.List]
169
- @attempts = j_obj.attempts
170
- tmp = []
171
- (@attempts || []).each do |m|
172
- # conversion for m [type = org.killbill.billing.payment.api.PaymentAttempt]
173
- m = Killbill::Plugin::Model::PaymentAttempt.new.to_ruby(m) unless m.nil?
174
- tmp << m
175
- end
176
- @attempts = tmp
177
-
178
- # conversion for payment_info_plugin [type = org.killbill.billing.payment.plugin.api.PaymentInfoPlugin]
179
- @payment_info_plugin = j_obj.payment_info_plugin
180
- @payment_info_plugin = Killbill::Plugin::Model::PaymentInfoPlugin.new.to_ruby(@payment_info_plugin) unless @payment_info_plugin.nil?
181
- self
182
- end
183
-
184
- end
185
- end
186
- end
187
- end