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
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 82a09a7d410fc5aff99f49e2ff2b4426e8b951b7
4
- data.tar.gz: db04bda5377c39f74d59c7315056a859754c59cd
3
+ metadata.gz: faaf0e82033d38d64c4d2b2485bc2dcaaf742ced
4
+ data.tar.gz: 2261f28500e2de1415d4bfef9362ad216b6555ce
5
5
  SHA512:
6
- metadata.gz: a98a498e8a8260ef655e34b48d5e2abcca0d5817e58d45ed6e853405ae8679f27a8891b4491211fe42ab7744c3c27a5b81697c6a36bb1d761e4fc9f7c1918e8b
7
- data.tar.gz: 963f49b07a89afaaeb6fc4b584da8c61dabb7fc49ad417de918607af92f0da705b2e685e763260e3589bd1e94e2cda140463a452ab643a5fe6c544b069ca5172
6
+ metadata.gz: db84c65123b4b468eddf817bdade8754adc39ff1086f42b93d54e2353025faa6e7e911fc053b675886ffd6b7a17cccef94d3f364712554060a576193dbd98ae9
7
+ data.tar.gz: b453cd617a78cbb27987c15be256b30da157c602979c0856fe1d560dc1acab4b43beaf298c4ac5f28284aedaaaf9f29f63355b7833d7ecc00b20942cb0057429
data/Jarfile CHANGED
@@ -1,6 +1,8 @@
1
- jar 'org.kill-bill.billing:killbill-api', '0.9.5'
2
- jar 'org.kill-bill.billing.plugin:killbill-plugin-api-notification', '0.7.2'
3
- jar 'org.kill-bill.billing.plugin:killbill-plugin-api-payment', '0.7.2'
4
- jar 'org.kill-bill.billing.plugin:killbill-plugin-api-currency', '0.7.2'
5
- jar 'org.kill-bill.billing:killbill-util:tests', '0.11.2'
1
+ jar 'org.kill-bill.billing:killbill-api', '0.9.6'
2
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-notification', '0.7.4'
3
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-payment', '0.7.4'
4
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-currency', '0.7.4'
5
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-retry', '0.7.4'
6
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-invoice', '0.7.4'
7
+ jar 'org.kill-bill.billing:killbill-util:tests', '0.11.3'
6
8
  jar 'javax.servlet:javax.servlet-api', '3.0.1'
data/NEWS CHANGED
@@ -1,3 +1,6 @@
1
+ 3.1.4
2
+ Updates to support killbill-api 0.9.6 and killbill-plugin-api 0.7.4
3
+
1
4
  3.1.3
2
5
  Minor change for non multi tenant environment
3
6
 
data/README.md CHANGED
@@ -56,43 +56,55 @@ How to write a Payment plugin
56
56
  puts "MyPaymentPlugin plugin started"
57
57
  end
58
58
 
59
- def process_payment(kb_account_id, kb_payment_id, kb_payment_method_id, amount, currency, context)
59
+ def authorize_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
60
60
  end
61
61
 
62
- def get_payment_info(kb_account_id, kb_payment_id, context)
62
+ def capture_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
63
63
  end
64
64
 
65
- def search_payments(search_key, offset, limit, context)
65
+ def purchase_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
66
66
  end
67
67
 
68
- def process_refund(kb_account_id, kb_payment_id, refund_amount, currency, context)
68
+ def void_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, properties, context)
69
69
  end
70
70
 
71
- def get_refund_info(kb_account_id, kb_payment_id, context)
71
+ def credit_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
72
72
  end
73
73
 
74
- def search_refunds(search_key, offset, limit, context)
74
+ def refund_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
75
75
  end
76
76
 
77
- def add_payment_method(kb_account_id, kb_payment_method_id, payment_method_props, set_default, context)
77
+ def get_payment_info(kb_account_id, kb_payment_id, properties, context)
78
78
  end
79
79
 
80
- def delete_payment_method(kb_account_id, kb_payment_method_id, context)
80
+ def search_payments(search_key, offset, limit, properties, context)
81
81
  end
82
82
 
83
- def get_payment_method_detail(kb_account_id, kb_payment_method_id, context)
83
+ def add_payment_method(kb_account_id, kb_payment_method_id, payment_method_props, set_default, properties, context)
84
84
  end
85
85
 
86
- def set_default_payment_method(kb_account_id, kb_payment_method_id, context)
86
+ def delete_payment_method(kb_account_id, kb_payment_method_id, properties, context)
87
87
  end
88
88
 
89
- def get_payment_methods(kb_account_id, refresh_from_gateway, context)
89
+ def get_payment_method_detail(kb_account_id, kb_payment_method_id, properties, context)
90
90
  end
91
91
 
92
- def search_payment_methods(search_key, offset, limit, context)
92
+ def set_default_payment_method(kb_account_id, kb_payment_method_id, properties, context)
93
93
  end
94
94
 
95
- def reset_payment_methods(kb_account_id, payment_methods)
95
+ def get_payment_methods(kb_account_id, refresh_from_gateway, properties, context)
96
+ end
97
+
98
+ def search_payment_methods(search_key, offset, limit, properties, context)
99
+ end
100
+
101
+ def reset_payment_methods(kb_account_id, payment_methods, properties, context)
102
+ end
103
+
104
+ def build_form_descriptor(kb_account_id, descriptor_fields, properties, context)
105
+ end
106
+
107
+ def process_notification(notification, properties, context)
96
108
  end
97
109
 
98
110
  # Overriding this method is optional, only if you need to do some tear down work
@@ -124,13 +136,17 @@ This will generate a tree of files ready to be plugged into Kill Bill. To packag
124
136
 
125
137
  Most of the work consists of filling in the blank in `api.rb` (payment plugin API for ActiveMerchant gateways) and `application.rb` (sinatra application for ActiveMerchant integrations). Check the [Stripe plugin](https://github.com/killbill/killbill-stripe-plugin) for an example.
126
138
 
139
+ In case the templates behind the generator change and you want to upgrade your plugin, you can re-run the above
140
+ generate command on top of your existing code. For each file, you'll be prompted whether you want to overwrite it, show a
141
+ diff, etc.
142
+
127
143
 
128
144
  How to expose HTTP endpoints
129
145
  ----------------------------
130
146
 
131
147
  Killbill exports a Rack handler that interfaces directly with the container in which killbill-server runs (e.g. Jetty).
132
148
 
133
- This basically means that Killbill will understand native Rack config.ru files placed in the root of your plugin, e.g. (using Sinatra):
149
+ This basically means that Killbill will understand native Rack config.ru files placed in the root of your plugin, e.g. (using Sinatra):
134
150
 
135
151
  require 'sinatra'
136
152
 
@@ -168,7 +184,15 @@ To build the artifacts into pkg/:
168
184
  # The <plugin_name>-<plugin-version>/ directory is used as a staging directory
169
185
  rake killbill:package
170
186
 
187
+ For quick testing of your plugin, you can use the `deploy` task:
171
188
 
172
- In case the templates behind the generator change and you want to upgrade your plugin, you can re-run the above
173
- command on top of your existing code. For each file, you'll be prompted whether you want to overwrite it, show a
174
- diff, etc.
189
+ # Deploy the plugin in /var/tmp/bundles
190
+ rake killbill:deploy
191
+ # Deploy the plugin and clobber a previous version if needed
192
+ rake killbill:deploy[true]
193
+ # You can also specify a custom plugins directory as such
194
+ rake killbill:deploy[false,/path/to/bundles]
195
+
196
+ To debug packaging issues, pass `true` as the third (optional) parameter:
197
+
198
+ rake killbill:deploy[false,/path/to/bundles,true]
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.1.3
1
+ 3.1.4
@@ -1,6 +1,8 @@
1
- jar 'org.kill-bill.billing:killbill-api', '0.9.5'
2
- jar 'org.kill-bill.billing.plugin:killbill-plugin-api-notification', '0.7.2'
3
- jar 'org.kill-bill.billing.plugin:killbill-plugin-api-payment', '0.7.2'
4
- jar 'org.kill-bill.billing.plugin:killbill-plugin-api-currency', '0.7.2'
5
- jar 'org.kill-bill.billing:killbill-util:tests', '0.11.2'
1
+ jar 'org.kill-bill.billing:killbill-api', '0.9.6'
2
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-notification', '0.7.4'
3
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-payment', '0.7.4'
4
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-currency', '0.7.4'
5
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-retry', '0.7.4'
6
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-invoice', '0.7.4'
7
+ jar 'org.kill-bill.billing:killbill-util:tests', '0.11.3'
6
8
  jar 'javax.servlet:javax.servlet-api', '3.0.1'
@@ -7,7 +7,7 @@
7
7
  :database: test.db
8
8
  # For MySQL
9
9
  # :adapter: 'jdbc'
10
- # :username: 'your-username'
11
- # :password: 'your-password'
10
+ # :username: 'killbill'
11
+ # :password: 'killbill'
12
12
  # :driver: 'com.mysql.jdbc.Driver'
13
- # :url: 'jdbc:mysql://127.0.0.1:3306/your-database'
13
+ # :url: 'jdbc:mysql://127.0.0.1:3306/killbill'
@@ -35,6 +35,8 @@ CREATE TABLE `<%= identifier %>_transactions` (
35
35
  `<%= identifier %>_response_id` int(11) NOT NULL,
36
36
  `api_call` varchar(255) NOT NULL,
37
37
  `kb_payment_id` varchar(255) NOT NULL,
38
+ `kb_payment_transaction_id` varchar(255) NOT NULL,
39
+ `transaction_type` varchar(255) NOT NULL,
38
40
  `txn_id` varchar(255) NOT NULL,
39
41
  `amount_in_cents` int(11) NOT NULL,
40
42
  `currency` varchar(255) NOT NULL,
@@ -50,6 +52,8 @@ CREATE TABLE `<%= identifier %>_responses` (
50
52
  `id` int(11) NOT NULL AUTO_INCREMENT,
51
53
  `api_call` varchar(255) NOT NULL,
52
54
  `kb_payment_id` varchar(255) DEFAULT NULL,
55
+ `kb_payment_transaction_id` varchar(255) DEFAULT NULL,
56
+ `transaction_type` varchar(255) DEFAULT NULL,
53
57
  `message` varchar(255) DEFAULT NULL,
54
58
  `authorization` varchar(255) DEFAULT NULL,
55
59
  `fraud_review` tinyint(1) DEFAULT NULL,
@@ -36,6 +36,8 @@ ActiveRecord::Schema.define(:version => 20140410153635) do
36
36
  t.integer "<%= identifier %>_response_id", :null => false
37
37
  t.string "api_call", :null => false
38
38
  t.string "kb_payment_id", :null => false
39
+ t.string "kb_payment_transaction_id", :null => false
40
+ t.string "transaction_type", :null => false
39
41
  t.string "txn_id" # <%= identifier %> transaction id
40
42
  t.integer "amount_in_cents", :null => false
41
43
  t.string "currency", :null => false
@@ -50,6 +52,8 @@ ActiveRecord::Schema.define(:version => 20140410153635) do
50
52
  create_table "<%= identifier %>_responses", :force => true do |t|
51
53
  t.string "api_call", :null => false
52
54
  t.string "kb_payment_id"
55
+ t.string "kb_payment_transaction_id"
56
+ t.string "transaction_type"
53
57
  t.string "message"
54
58
  t.string "authorization"
55
59
  t.boolean "fraud_review"
@@ -15,60 +15,68 @@ module Killbill #:nodoc:
15
15
  ::Killbill::<%= class_name %>::<%= class_name %>Response)
16
16
  end
17
17
 
18
- def authorize_payment(kb_account_id, kb_payment_id, kb_payment_method_id, amount, currency, properties, context)
18
+ def authorize_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
19
19
  # Pass extra parameters for the gateway here
20
20
  options = {}
21
21
 
22
22
  properties = merge_properties(properties, options)
23
- super(kb_account_id, kb_payment_id, kb_payment_method_id, amount, currency, properties, context)
23
+ super(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
24
24
  end
25
25
 
26
- def capture_payment(kb_account_id, kb_payment_id, kb_payment_method_id, amount, currency, properties, context)
26
+ def capture_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
27
27
  # Pass extra parameters for the gateway here
28
28
  options = {}
29
29
 
30
30
  properties = merge_properties(properties, options)
31
- super(kb_account_id, kb_payment_id, kb_payment_method_id, amount, currency, properties, context)
31
+ super(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
32
32
  end
33
33
 
34
- def void_payment(kb_account_id, kb_payment_id, kb_payment_method_id, properties, context)
34
+ def purchase_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
35
35
  # Pass extra parameters for the gateway here
36
36
  options = {}
37
37
 
38
38
  properties = merge_properties(properties, options)
39
- super(kb_account_id, kb_payment_id, kb_payment_method_id, properties, context)
39
+ super(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
40
40
  end
41
41
 
42
- def process_payment(kb_account_id, kb_payment_id, kb_payment_method_id, amount, currency, properties, context)
42
+ def void_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, properties, context)
43
43
  # Pass extra parameters for the gateway here
44
44
  options = {}
45
45
 
46
46
  properties = merge_properties(properties, options)
47
- super(kb_account_id, kb_payment_id, kb_payment_method_id, amount, currency, properties, context)
47
+ super(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, properties, context)
48
48
  end
49
49
 
50
- def get_payment_info(kb_account_id, kb_payment_id, properties, context)
51
- super
52
- end
50
+ def credit_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
51
+ # Pass extra parameters for the gateway here
52
+ options = {}
53
53
 
54
- def search_payments(search_key, offset, limit, properties, context)
55
- super
54
+ properties = merge_properties(properties, options)
55
+ super(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
56
56
  end
57
57
 
58
- def process_refund(kb_account_id, kb_payment_id, refund_amount, currency, properties, context)
58
+ def refund_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
59
59
  # Pass extra parameters for the gateway here
60
60
  options = {}
61
61
 
62
62
  properties = merge_properties(properties, options)
63
- super(kb_account_id, kb_payment_id, refund_amount, currency, properties, context)
63
+ super(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
64
64
  end
65
65
 
66
- def get_refund_info(kb_account_id, kb_payment_id, properties, context)
67
- super
66
+ def get_payment_info(kb_account_id, kb_payment_id, properties, context)
67
+ # Pass extra parameters for the gateway here
68
+ options = {}
69
+
70
+ properties = merge_properties(properties, options)
71
+ super(kb_account_id, kb_payment_id, properties, context)
68
72
  end
69
73
 
70
- def search_refunds(search_key, offset, limit, properties, context)
71
- super
74
+ def search_payments(search_key, offset, limit, properties, context)
75
+ # Pass extra parameters for the gateway here
76
+ options = {}
77
+
78
+ properties = merge_properties(properties, options)
79
+ super(search_key, offset, limit, properties, context)
72
80
  end
73
81
 
74
82
  def add_payment_method(kb_account_id, kb_payment_method_id, payment_method_props, set_default, properties, context)
@@ -88,7 +96,11 @@ module Killbill #:nodoc:
88
96
  end
89
97
 
90
98
  def get_payment_method_detail(kb_account_id, kb_payment_method_id, properties, context)
91
- super
99
+ # Pass extra parameters for the gateway here
100
+ options = {}
101
+
102
+ properties = merge_properties(properties, options)
103
+ super(kb_account_id, kb_payment_method_id, properties, context)
92
104
  end
93
105
 
94
106
  def set_default_payment_method(kb_account_id, kb_payment_method_id, properties, context)
@@ -96,11 +108,19 @@ module Killbill #:nodoc:
96
108
  end
97
109
 
98
110
  def get_payment_methods(kb_account_id, refresh_from_gateway, properties, context)
99
- super
111
+ # Pass extra parameters for the gateway here
112
+ options = {}
113
+
114
+ properties = merge_properties(properties, options)
115
+ super(kb_account_id, refresh_from_gateway, properties, context)
100
116
  end
101
117
 
102
118
  def search_payment_methods(search_key, offset, limit, properties, context)
103
- super
119
+ # Pass extra parameters for the gateway here
120
+ options = {}
121
+
122
+ properties = merge_properties(properties, options)
123
+ super(search_key, offset, limit, properties, context)
104
124
  end
105
125
 
106
126
  def reset_payment_methods(kb_account_id, payment_methods, properties, context)
@@ -6,10 +6,12 @@ module Killbill #:nodoc:
6
6
 
7
7
  has_one :<%= identifier %>_transaction
8
8
 
9
- def self.from_response(api_call, kb_account_id, kb_payment_id, kb_tenant_id, response, extra_params = {})
9
+ def self.from_response(api_call, kb_account_id, kb_payment_id, kb_payment_transaction_id, transaction_type, kb_tenant_id, response, extra_params = {})
10
10
  super(api_call,
11
11
  kb_account_id,
12
12
  kb_payment_id,
13
+ kb_payment_transaction_id,
14
+ transaction_type,
13
15
  kb_tenant_id,
14
16
  response,
15
17
  {
@@ -22,7 +22,7 @@ Gem::Specification.new do |s|
22
22
 
23
23
  s.rdoc_options << '--exclude' << '.'
24
24
 
25
- s.add_dependency 'killbill', '~> 3.1.2'
25
+ s.add_dependency 'killbill', '~> 3.1.4'
26
26
  s.add_dependency 'activemerchant', '~> 1.42.9'
27
27
  s.add_dependency 'activerecord', '~> 4.1.0'
28
28
  s.add_dependency 'actionpack', '~> 4.1.0'
@@ -24,15 +24,18 @@ begin
24
24
  IMPORT_KILLBILL_APIS = %w(
25
25
  org.killbill.billing.account.api.AccountUserApi
26
26
  org.killbill.billing.catalog.api.CatalogUserApi
27
- org.killbill.billing.invoice.api.InvoicePaymentApi
27
+ org.killbill.billing.currency.api.CurrencyConversionApi
28
28
  org.killbill.billing.entitlement.api.EntitlementApi
29
29
  org.killbill.billing.entitlement.api.SubscriptionApi
30
+ org.killbill.billing.invoice.api.InvoicePaymentApi
30
31
  org.killbill.billing.invoice.api.InvoiceUserApi
31
- org.killbill.billing.overdue.OverdueUserApi
32
- org.killbill.billing.payment.api.PaymentApi
32
+ org.killbill.billing.payment.api.DirectPaymentApi
33
+ org.killbill.billing.payment.api.PaymentGatewayApi
34
+ org.killbill.billing.tenant.api.TenantUserApi
35
+ org.killbill.billing.usage.api.UsageUserApi
36
+ org.killbill.billing.util.api.AuditUserApi
33
37
  org.killbill.billing.util.api.CustomFieldUserApi
34
38
  org.killbill.billing.util.api.TagUserApi
35
- org.killbill.billing.currency.api.CurrencyConversionApi
36
39
  javax.servlet.http.HttpServlet
37
40
  )
38
41
 
@@ -1,10 +1,11 @@
1
1
  ###################################################################################
2
2
  # #
3
3
  # Copyright 2010-2013 Ning, Inc. #
4
+ # Copyright 2014 The Billing Project, LLC #
4
5
  # #
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: #
6
+ # The Billing Project licenses this file to you under the Apache License, #
7
+ # version 2.0 (the "License"); you may not use this file except in #
8
+ # compliance with the License. You may obtain a copy of the License at: #
8
9
  # #
9
10
  # http://www.apache.org/licenses/LICENSE-2.0 #
10
11
  # #
@@ -1,10 +1,11 @@
1
1
  ###################################################################################
2
2
  # #
3
3
  # Copyright 2010-2013 Ning, Inc. #
4
+ # Copyright 2014 The Billing Project, LLC #
4
5
  # #
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: #
6
+ # The Billing Project licenses this file to you under the Apache License, #
7
+ # version 2.0 (the "License"); you may not use this file except in #
8
+ # compliance with the License. You may obtain a copy of the License at: #
8
9
  # #
9
10
  # http://www.apache.org/licenses/LICENSE-2.0 #
10
11
  # #
@@ -1,10 +1,11 @@
1
1
  ###################################################################################
2
2
  # #
3
3
  # Copyright 2010-2013 Ning, Inc. #
4
+ # Copyright 2014 The Billing Project, LLC #
4
5
  # #
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: #
6
+ # The Billing Project licenses this file to you under the Apache License, #
7
+ # version 2.0 (the "License"); you may not use this file except in #
8
+ # compliance with the License. You may obtain a copy of the License at: #
8
9
  # #
9
10
  # http://www.apache.org/licenses/LICENSE-2.0 #
10
11
  # #
@@ -32,7 +33,7 @@ module Killbill
32
33
 
33
34
  include org.killbill.billing.util.audit.AccountAuditLogs
34
35
 
35
- attr_accessor :audit_logs_for_account, :audit_logs_for_bundle, :audit_logs_for_subscription, :audit_logs_for_subscription_event, :audit_logs_for_blocking_state, :audit_logs_for_invoice, :audit_logs_for_invoice_item, :audit_logs_for_invoice_payment, :audit_logs_for_payment, :audit_logs_for_direct_payment, :audit_logs_for_direct_payment_transaction, :audit_logs_for_payment_method, :audit_logs_for_refund, :audit_logs_for_chargeback, :audit_logs_for_tag, :audit_logs_for_custom_field, :audit_logs
36
+ attr_accessor :audit_logs_for_account, :audit_logs_for_bundle, :audit_logs_for_subscription, :audit_logs_for_subscription_event, :audit_logs_for_blocking_state, :audit_logs_for_invoice, :audit_logs_for_invoice_item, :audit_logs_for_invoice_payment, :audit_logs_for_payment, :audit_logs_for_payment_transaction, :audit_logs_for_payment_method, :audit_logs_for_tag, :audit_logs_for_custom_field, :audit_logs
36
37
 
37
38
  def initialize()
38
39
  end
@@ -119,23 +120,14 @@ module Killbill
119
120
  end
120
121
  @audit_logs_for_payment = tmp
121
122
 
122
- # conversion for audit_logs_for_direct_payment [type = java.util.List]
123
+ # conversion for audit_logs_for_payment_transaction [type = java.util.List]
123
124
  tmp = java.util.ArrayList.new
124
- (@audit_logs_for_direct_payment || []).each do |m|
125
+ (@audit_logs_for_payment_transaction || []).each do |m|
125
126
  # conversion for m [type = org.killbill.billing.util.audit.AuditLog]
126
127
  m = m.to_java unless m.nil?
127
128
  tmp.add(m)
128
129
  end
129
- @audit_logs_for_direct_payment = tmp
130
-
131
- # conversion for audit_logs_for_direct_payment_transaction [type = java.util.List]
132
- tmp = java.util.ArrayList.new
133
- (@audit_logs_for_direct_payment_transaction || []).each do |m|
134
- # conversion for m [type = org.killbill.billing.util.audit.AuditLog]
135
- m = m.to_java unless m.nil?
136
- tmp.add(m)
137
- end
138
- @audit_logs_for_direct_payment_transaction = tmp
130
+ @audit_logs_for_payment_transaction = tmp
139
131
 
140
132
  # conversion for audit_logs_for_payment_method [type = java.util.List]
141
133
  tmp = java.util.ArrayList.new
@@ -146,24 +138,6 @@ module Killbill
146
138
  end
147
139
  @audit_logs_for_payment_method = tmp
148
140
 
149
- # conversion for audit_logs_for_refund [type = java.util.List]
150
- tmp = java.util.ArrayList.new
151
- (@audit_logs_for_refund || []).each do |m|
152
- # conversion for m [type = org.killbill.billing.util.audit.AuditLog]
153
- m = m.to_java unless m.nil?
154
- tmp.add(m)
155
- end
156
- @audit_logs_for_refund = tmp
157
-
158
- # conversion for audit_logs_for_chargeback [type = java.util.List]
159
- tmp = java.util.ArrayList.new
160
- (@audit_logs_for_chargeback || []).each do |m|
161
- # conversion for m [type = org.killbill.billing.util.audit.AuditLog]
162
- m = m.to_java unless m.nil?
163
- tmp.add(m)
164
- end
165
- @audit_logs_for_chargeback = tmp
166
-
167
141
  # conversion for audit_logs_for_tag [type = java.util.List]
168
142
  tmp = java.util.ArrayList.new
169
143
  (@audit_logs_for_tag || []).each do |m|
@@ -278,25 +252,15 @@ module Killbill
278
252
  end
279
253
  @audit_logs_for_payment = tmp
280
254
 
281
- # conversion for audit_logs_for_direct_payment [type = java.util.List]
282
- @audit_logs_for_direct_payment = j_obj.audit_logs_for_direct_payment
255
+ # conversion for audit_logs_for_payment_transaction [type = java.util.List]
256
+ @audit_logs_for_payment_transaction = j_obj.audit_logs_for_payment_transaction
283
257
  tmp = []
284
- (@audit_logs_for_direct_payment || []).each do |m|
258
+ (@audit_logs_for_payment_transaction || []).each do |m|
285
259
  # conversion for m [type = org.killbill.billing.util.audit.AuditLog]
286
260
  m = Killbill::Plugin::Model::AuditLog.new.to_ruby(m) unless m.nil?
287
261
  tmp << m
288
262
  end
289
- @audit_logs_for_direct_payment = tmp
290
-
291
- # conversion for audit_logs_for_direct_payment_transaction [type = java.util.List]
292
- @audit_logs_for_direct_payment_transaction = j_obj.audit_logs_for_direct_payment_transaction
293
- tmp = []
294
- (@audit_logs_for_direct_payment_transaction || []).each do |m|
295
- # conversion for m [type = org.killbill.billing.util.audit.AuditLog]
296
- m = Killbill::Plugin::Model::AuditLog.new.to_ruby(m) unless m.nil?
297
- tmp << m
298
- end
299
- @audit_logs_for_direct_payment_transaction = tmp
263
+ @audit_logs_for_payment_transaction = tmp
300
264
 
301
265
  # conversion for audit_logs_for_payment_method [type = java.util.List]
302
266
  @audit_logs_for_payment_method = j_obj.audit_logs_for_payment_method
@@ -308,26 +272,6 @@ module Killbill
308
272
  end
309
273
  @audit_logs_for_payment_method = tmp
310
274
 
311
- # conversion for audit_logs_for_refund [type = java.util.List]
312
- @audit_logs_for_refund = j_obj.audit_logs_for_refund
313
- tmp = []
314
- (@audit_logs_for_refund || []).each do |m|
315
- # conversion for m [type = org.killbill.billing.util.audit.AuditLog]
316
- m = Killbill::Plugin::Model::AuditLog.new.to_ruby(m) unless m.nil?
317
- tmp << m
318
- end
319
- @audit_logs_for_refund = tmp
320
-
321
- # conversion for audit_logs_for_chargeback [type = java.util.List]
322
- @audit_logs_for_chargeback = j_obj.audit_logs_for_chargeback
323
- tmp = []
324
- (@audit_logs_for_chargeback || []).each do |m|
325
- # conversion for m [type = org.killbill.billing.util.audit.AuditLog]
326
- m = Killbill::Plugin::Model::AuditLog.new.to_ruby(m) unless m.nil?
327
- tmp << m
328
- end
329
- @audit_logs_for_chargeback = tmp
330
-
331
275
  # conversion for audit_logs_for_tag [type = java.util.List]
332
276
  @audit_logs_for_tag = j_obj.audit_logs_for_tag
333
277
  tmp = []