killbill-orbital 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/pom.xml ADDED
@@ -0,0 +1,44 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!--
3
+ ~ Copyright 2016 The Billing Project, LLC
4
+ ~
5
+ ~ The Billing Project 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
+ <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
19
+ <parent>
20
+ <groupId>org.sonatype.oss</groupId>
21
+ <artifactId>oss-parent</artifactId>
22
+ <version>5</version>
23
+ </parent>
24
+ <modelVersion>4.0.0</modelVersion>
25
+ <groupId>org.kill-bill.billing.plugin.ruby</groupId>
26
+ <artifactId>orbital-plugin</artifactId>
27
+ <packaging>pom</packaging>
28
+ <version>0.0.1</version>
29
+ <name>orbital-plugin</name>
30
+ <url>http://github.com/killbill/killbill-orbital-plugin</url>
31
+ <description>Plugin for accessing Orbital as a payment gateway</description>
32
+ <licenses>
33
+ <license>
34
+ <name>Apache License 2.0</name>
35
+ <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
36
+ <distribution>repo</distribution>
37
+ </license>
38
+ </licenses>
39
+ <scm>
40
+ <connection>scm:git:git://github.com/killbill/killbill-orbital-plugin.git</connection>
41
+ <url>https://github.com/killbill/killbill-orbital-plugin/</url>
42
+ <developerConnection>scm:git:git@github.com:killbill/killbill-orbital-plugin.git</developerConnection>
43
+ </scm>
44
+ </project>
data/release.sh ADDED
@@ -0,0 +1,61 @@
1
+ set -e
2
+
3
+ BUNDLE=${BUNDLE-"bundle exec"}
4
+ MVN=${MVN-"mvn"}
5
+
6
+ if [ 'GNU' != "$(tar --help | grep GNU | head -1 | awk '{print $1}')" ]; then
7
+ echo 'Unable to release: make sure to use GNU tar'
8
+ exit 1
9
+ fi
10
+
11
+ if $(ruby -e'require "java"'); then
12
+ # Good
13
+ echo 'Detected JRuby'
14
+ else
15
+ echo 'Unable to release: make sure to use JRuby'
16
+ exit 1
17
+ fi
18
+
19
+ VERSION=`grep -E '<version>([0-9]+\.[0-9]+\.[0-9]+)</version>' pom.xml | sed 's/[\t \n]*<version>\(.*\)<\/version>[\t \n]*/\1/'`
20
+ if [[ -z "$NO_RELEASE" && "$VERSION" != "$(cat $PWD/VERSION)" ]]; then
21
+ echo 'Unable to release: make sure the versions in pom.xml and VERSION match'
22
+ exit 1
23
+ fi
24
+
25
+ echo 'Cleaning up'
26
+ $BUNDLE rake killbill:clean
27
+
28
+ echo 'Building gem'
29
+ $BUNDLE rake build
30
+
31
+ if [[ -z "$NO_RELEASE" ]]; then
32
+ echo 'Pushing the gem to Rubygems'
33
+ $BUNDLE rake release
34
+ fi
35
+
36
+ echo 'Building artifact'
37
+ $BUNDLE rake killbill:package
38
+
39
+ ARTIFACT="$PWD/pkg/killbill-orbital-$VERSION.tar.gz"
40
+ echo "Pushing $ARTIFACT to Maven Central"
41
+
42
+ if [[ -z "$NO_RELEASE" ]]; then
43
+ GOAL=gpg:sign-and-deploy-file
44
+ REPOSITORY_ID=ossrh-releases
45
+ URL=https://oss.sonatype.org/service/local/staging/deploy/maven2/
46
+ else
47
+ GOAL=deploy:deploy-file
48
+ REPOSITORY_ID=sonatype-nexus-snapshots
49
+ URL=https://oss.sonatype.org/content/repositories/snapshots/
50
+ VERSION="$VERSION-SNAPSHOT"
51
+ fi
52
+
53
+ $MVN $GOAL \
54
+ -DgroupId=org.kill-bill.billing.plugin.ruby \
55
+ -DartifactId=orbital-plugin \
56
+ -Dversion=$VERSION \
57
+ -Dpackaging=tar.gz \
58
+ -DrepositoryId=$REPOSITORY_ID \
59
+ -Durl=$URL \
60
+ -Dfile=$ARTIFACT \
61
+ -DpomFile=pom.xml
@@ -0,0 +1,30 @@
1
+ require 'spec_helper'
2
+
3
+ describe Killbill::Orbital::PaymentPlugin do
4
+
5
+ include ::Killbill::Plugin::ActiveMerchant::RSpec
6
+
7
+ before(:each) do
8
+ Dir.mktmpdir do |dir|
9
+ file = File.new(File.join(dir, 'orbital.yml'), 'w+')
10
+ file.write(<<-eos)
11
+ :orbital:
12
+ :test: true
13
+ # As defined by spec_helper.rb
14
+ :database:
15
+ :adapter: 'sqlite3'
16
+ :database: 'test.db'
17
+ eos
18
+ file.close
19
+
20
+ @plugin = build_plugin(::Killbill::Orbital::PaymentPlugin, 'orbital', File.dirname(file))
21
+
22
+ # Start the plugin here - since the config file will be deleted
23
+ @plugin.start_plugin
24
+ end
25
+ end
26
+
27
+ it 'should start and stop correctly' do
28
+ @plugin.stop_plugin
29
+ end
30
+ end
@@ -0,0 +1,127 @@
1
+ require 'spec_helper'
2
+
3
+ ActiveMerchant::Billing::Base.mode = :test
4
+
5
+ describe Killbill::Orbital::PaymentPlugin do
6
+
7
+ include ::Killbill::Plugin::ActiveMerchant::RSpec
8
+
9
+ before(:each) do
10
+ # Start the plugin early to configure ActiveRecord
11
+ @plugin = build_plugin(::Killbill::Orbital::PaymentPlugin, 'orbital')
12
+ @plugin.start_plugin
13
+
14
+ ::Killbill::Orbital::OrbitalPaymentMethod.delete_all
15
+ ::Killbill::Orbital::OrbitalResponse.delete_all
16
+ ::Killbill::Orbital::OrbitalTransaction.delete_all
17
+
18
+ @call_context = build_call_context
19
+
20
+ @properties = []
21
+ @pm = create_payment_method(::Killbill::Orbital::OrbitalPaymentMethod, nil, @call_context.tenant_id, @properties, { :cc_number => '5454545454545454' })
22
+ @amount = BigDecimal.new('100')
23
+ @currency = 'USD'
24
+
25
+ kb_payment_id = SecureRandom.uuid
26
+ 1.upto(6) do
27
+ @kb_payment = @plugin.kb_apis.proxied_services[:payment_api].add_payment(kb_payment_id)
28
+ end
29
+ end
30
+
31
+ after(:each) do
32
+ @plugin.stop_plugin
33
+ end
34
+
35
+ it 'should be able to charge a Credit Card directly' do
36
+ account = @plugin.kb_apis.account_user_api.get_account_by_id(nil, @call_context)
37
+ properties = build_pm_properties(account, { :cc_number => '5454545454545454' })
38
+
39
+ # We created the payment method, hence the rows
40
+ Killbill::Orbital::OrbitalResponse.all.size.should == 1
41
+ Killbill::Orbital::OrbitalTransaction.all.size.should == 0
42
+
43
+ payment_response = @plugin.purchase_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[0].id, @pm.kb_payment_method_id, @amount, @currency, properties, @call_context)
44
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
45
+ payment_response.amount.should == @amount
46
+ payment_response.transaction_type.should == :PURCHASE
47
+
48
+ responses = Killbill::Orbital::OrbitalResponse.all
49
+ responses.size.should == 2
50
+ responses[0].api_call.should == 'add_payment_method'
51
+ responses[0].message.should == 'Profile Request Processed'
52
+ responses[1].api_call.should == 'purchase'
53
+ responses[1].message.should == 'Approved'
54
+ transactions = Killbill::Orbital::OrbitalTransaction.all
55
+ transactions.size.should == 1
56
+ transactions[0].api_call.should == 'purchase'
57
+ end
58
+
59
+ it 'should be able to charge and refund' do
60
+ payment_response = @plugin.purchase_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[0].id, @pm.kb_payment_method_id, @amount, @currency, @properties, @call_context)
61
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
62
+ payment_response.amount.should == @amount
63
+ payment_response.transaction_type.should == :PURCHASE
64
+
65
+ # Try a full refund
66
+ refund_response = @plugin.refund_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[1].id, @pm.kb_payment_method_id, @amount, @currency, @properties, @call_context)
67
+ refund_response.status.should eq(:PROCESSED), refund_response.gateway_error
68
+ refund_response.amount.should == @amount
69
+ refund_response.transaction_type.should == :REFUND
70
+ end
71
+
72
+ it 'should be able to auth, capture and refund' do
73
+ payment_response = @plugin.authorize_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[0].id, @pm.kb_payment_method_id, @amount, @currency, @properties, @call_context)
74
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
75
+ payment_response.amount.should == @amount
76
+ payment_response.transaction_type.should == :AUTHORIZE
77
+
78
+ # Try multiple partial captures
79
+ partial_capture_amount = BigDecimal.new('10')
80
+ 1.upto(3) do |i|
81
+ payment_response = @plugin.capture_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[i].id, @pm.kb_payment_method_id, partial_capture_amount, @currency, @properties, @call_context)
82
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
83
+ payment_response.amount.should == partial_capture_amount
84
+ payment_response.transaction_type.should == :CAPTURE
85
+ end
86
+
87
+ # Try a partial refund
88
+ refund_response = @plugin.refund_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[4].id, @pm.kb_payment_method_id, partial_capture_amount, @currency, @properties, @call_context)
89
+ refund_response.status.should eq(:PROCESSED), refund_response.gateway_error
90
+ refund_response.amount.should == partial_capture_amount
91
+ refund_response.transaction_type.should == :REFUND
92
+
93
+ # Try to capture again
94
+ payment_response = @plugin.capture_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[5].id, @pm.kb_payment_method_id, partial_capture_amount, @currency, @properties, @call_context)
95
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
96
+ payment_response.amount.should == partial_capture_amount
97
+ payment_response.transaction_type.should == :CAPTURE
98
+ end
99
+
100
+ it 'should be able to auth and void' do
101
+ payment_response = @plugin.authorize_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[0].id, @pm.kb_payment_method_id, @amount, @currency, @properties, @call_context)
102
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
103
+ payment_response.amount.should == @amount
104
+ payment_response.transaction_type.should == :AUTHORIZE
105
+
106
+ payment_response = @plugin.void_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[1].id, @pm.kb_payment_method_id, @properties, @call_context)
107
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
108
+ payment_response.transaction_type.should == :VOID
109
+ end
110
+
111
+ it 'should be able to auth, partial capture and void' do
112
+ payment_response = @plugin.authorize_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[0].id, @pm.kb_payment_method_id, @amount, @currency, @properties, @call_context)
113
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
114
+ payment_response.amount.should == @amount
115
+ payment_response.transaction_type.should == :AUTHORIZE
116
+
117
+ partial_capture_amount = BigDecimal.new('10')
118
+ payment_response = @plugin.capture_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[1].id, @pm.kb_payment_method_id, partial_capture_amount, @currency, @properties, @call_context)
119
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
120
+ payment_response.amount.should == partial_capture_amount
121
+ payment_response.transaction_type.should == :CAPTURE
122
+
123
+ payment_response = @plugin.void_payment(@pm.kb_account_id, @kb_payment.id, @kb_payment.transactions[2].id, @pm.kb_payment_method_id, @properties, @call_context)
124
+ payment_response.status.should eq(:PROCESSED), payment_response.gateway_error
125
+ payment_response.transaction_type.should == :VOID
126
+ end
127
+ end
@@ -0,0 +1,24 @@
1
+ require 'bundler'
2
+ require 'orbital'
3
+ require 'killbill/helpers/active_merchant/killbill_spec_helper'
4
+
5
+ require 'logger'
6
+
7
+ require 'rspec'
8
+
9
+ RSpec.configure do |config|
10
+ config.color_enabled = true
11
+ config.tty = true
12
+ config.formatter = 'documentation'
13
+ end
14
+
15
+ require 'active_record'
16
+ ActiveRecord::Base.establish_connection(
17
+ :adapter => 'sqlite3',
18
+ :database => 'test.db'
19
+ )
20
+ # For debugging
21
+ #ActiveRecord::Base.logger = Logger.new(STDOUT)
22
+ # Create the schema
23
+ require File.expand_path(File.dirname(__FILE__) + '../../db/schema.rb')
24
+
metadata ADDED
@@ -0,0 +1,348 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: killbill-orbital
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Kill Bill core team
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-02-19 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: killbill
15
+ version_requirements: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: '7.0'
20
+ requirement: !ruby/object:Gem::Requirement
21
+ requirements:
22
+ - - ~>
23
+ - !ruby/object:Gem::Version
24
+ version: '7.0'
25
+ prerelease: false
26
+ type: :runtime
27
+ - !ruby/object:Gem::Dependency
28
+ name: sinatra
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: 1.3.4
34
+ requirement: !ruby/object:Gem::Requirement
35
+ requirements:
36
+ - - ~>
37
+ - !ruby/object:Gem::Version
38
+ version: 1.3.4
39
+ prerelease: false
40
+ type: :runtime
41
+ - !ruby/object:Gem::Dependency
42
+ name: thread_safe
43
+ version_requirements: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: 0.3.4
48
+ requirement: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - ~>
51
+ - !ruby/object:Gem::Version
52
+ version: 0.3.4
53
+ prerelease: false
54
+ type: :runtime
55
+ - !ruby/object:Gem::Dependency
56
+ name: activerecord
57
+ version_requirements: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 4.1.0
62
+ requirement: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - ~>
65
+ - !ruby/object:Gem::Version
66
+ version: 4.1.0
67
+ prerelease: false
68
+ type: :runtime
69
+ - !ruby/object:Gem::Dependency
70
+ name: activerecord-bogacs
71
+ version_requirements: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ~>
74
+ - !ruby/object:Gem::Version
75
+ version: '0.3'
76
+ requirement: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - ~>
79
+ - !ruby/object:Gem::Version
80
+ version: '0.3'
81
+ prerelease: false
82
+ type: :runtime
83
+ - !ruby/object:Gem::Dependency
84
+ name: activerecord-jdbc-adapter
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ~>
88
+ - !ruby/object:Gem::Version
89
+ version: '1.3'
90
+ - - <
91
+ - !ruby/object:Gem::Version
92
+ version: '1.5'
93
+ requirement: !ruby/object:Gem::Requirement
94
+ requirements:
95
+ - - ~>
96
+ - !ruby/object:Gem::Version
97
+ version: '1.3'
98
+ - - <
99
+ - !ruby/object:Gem::Version
100
+ version: '1.5'
101
+ prerelease: false
102
+ type: :runtime
103
+ - !ruby/object:Gem::Dependency
104
+ name: jruby-openssl
105
+ version_requirements: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: 0.9.7
110
+ requirement: !ruby/object:Gem::Requirement
111
+ requirements:
112
+ - - ~>
113
+ - !ruby/object:Gem::Version
114
+ version: 0.9.7
115
+ prerelease: false
116
+ type: :runtime
117
+ - !ruby/object:Gem::Dependency
118
+ name: actionpack
119
+ version_requirements: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - ~>
122
+ - !ruby/object:Gem::Version
123
+ version: 4.1.0
124
+ requirement: !ruby/object:Gem::Requirement
125
+ requirements:
126
+ - - ~>
127
+ - !ruby/object:Gem::Version
128
+ version: 4.1.0
129
+ prerelease: false
130
+ type: :runtime
131
+ - !ruby/object:Gem::Dependency
132
+ name: actionview
133
+ version_requirements: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - ~>
136
+ - !ruby/object:Gem::Version
137
+ version: 4.1.0
138
+ requirement: !ruby/object:Gem::Requirement
139
+ requirements:
140
+ - - ~>
141
+ - !ruby/object:Gem::Version
142
+ version: 4.1.0
143
+ prerelease: false
144
+ type: :runtime
145
+ - !ruby/object:Gem::Dependency
146
+ name: activemerchant
147
+ version_requirements: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - ~>
150
+ - !ruby/object:Gem::Version
151
+ version: 1.55.0
152
+ requirement: !ruby/object:Gem::Requirement
153
+ requirements:
154
+ - - ~>
155
+ - !ruby/object:Gem::Version
156
+ version: 1.55.0
157
+ prerelease: false
158
+ type: :runtime
159
+ - !ruby/object:Gem::Dependency
160
+ name: offsite_payments
161
+ version_requirements: !ruby/object:Gem::Requirement
162
+ requirements:
163
+ - - ~>
164
+ - !ruby/object:Gem::Version
165
+ version: 2.1.0
166
+ requirement: !ruby/object:Gem::Requirement
167
+ requirements:
168
+ - - ~>
169
+ - !ruby/object:Gem::Version
170
+ version: 2.1.0
171
+ prerelease: false
172
+ type: :runtime
173
+ - !ruby/object:Gem::Dependency
174
+ name: monetize
175
+ version_requirements: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - ~>
178
+ - !ruby/object:Gem::Version
179
+ version: 1.1.0
180
+ requirement: !ruby/object:Gem::Requirement
181
+ requirements:
182
+ - - ~>
183
+ - !ruby/object:Gem::Version
184
+ version: 1.1.0
185
+ prerelease: false
186
+ type: :runtime
187
+ - !ruby/object:Gem::Dependency
188
+ name: money
189
+ version_requirements: !ruby/object:Gem::Requirement
190
+ requirements:
191
+ - - ~>
192
+ - !ruby/object:Gem::Version
193
+ version: 6.5.1
194
+ requirement: !ruby/object:Gem::Requirement
195
+ requirements:
196
+ - - ~>
197
+ - !ruby/object:Gem::Version
198
+ version: 6.5.1
199
+ prerelease: false
200
+ type: :runtime
201
+ - !ruby/object:Gem::Dependency
202
+ name: jbundler
203
+ version_requirements: !ruby/object:Gem::Requirement
204
+ requirements:
205
+ - - ~>
206
+ - !ruby/object:Gem::Version
207
+ version: 0.9.2
208
+ requirement: !ruby/object:Gem::Requirement
209
+ requirements:
210
+ - - ~>
211
+ - !ruby/object:Gem::Version
212
+ version: 0.9.2
213
+ prerelease: false
214
+ type: :development
215
+ - !ruby/object:Gem::Dependency
216
+ name: rake
217
+ version_requirements: !ruby/object:Gem::Requirement
218
+ requirements:
219
+ - - '>='
220
+ - !ruby/object:Gem::Version
221
+ version: 10.0.0
222
+ requirement: !ruby/object:Gem::Requirement
223
+ requirements:
224
+ - - '>='
225
+ - !ruby/object:Gem::Version
226
+ version: 10.0.0
227
+ prerelease: false
228
+ type: :development
229
+ - !ruby/object:Gem::Dependency
230
+ name: rspec
231
+ version_requirements: !ruby/object:Gem::Requirement
232
+ requirements:
233
+ - - ~>
234
+ - !ruby/object:Gem::Version
235
+ version: 2.12.0
236
+ requirement: !ruby/object:Gem::Requirement
237
+ requirements:
238
+ - - ~>
239
+ - !ruby/object:Gem::Version
240
+ version: 2.12.0
241
+ prerelease: false
242
+ type: :development
243
+ - !ruby/object:Gem::Dependency
244
+ name: jdbc-sqlite3
245
+ version_requirements: !ruby/object:Gem::Requirement
246
+ requirements:
247
+ - - ~>
248
+ - !ruby/object:Gem::Version
249
+ version: '3.7'
250
+ requirement: !ruby/object:Gem::Requirement
251
+ requirements:
252
+ - - ~>
253
+ - !ruby/object:Gem::Version
254
+ version: '3.7'
255
+ prerelease: false
256
+ type: :development
257
+ - !ruby/object:Gem::Dependency
258
+ name: jdbc-mariadb
259
+ version_requirements: !ruby/object:Gem::Requirement
260
+ requirements:
261
+ - - ~>
262
+ - !ruby/object:Gem::Version
263
+ version: '1.1'
264
+ requirement: !ruby/object:Gem::Requirement
265
+ requirements:
266
+ - - ~>
267
+ - !ruby/object:Gem::Version
268
+ version: '1.1'
269
+ prerelease: false
270
+ type: :development
271
+ - !ruby/object:Gem::Dependency
272
+ name: jdbc-postgres
273
+ version_requirements: !ruby/object:Gem::Requirement
274
+ requirements:
275
+ - - ~>
276
+ - !ruby/object:Gem::Version
277
+ version: '9.4'
278
+ requirement: !ruby/object:Gem::Requirement
279
+ requirements:
280
+ - - ~>
281
+ - !ruby/object:Gem::Version
282
+ version: '9.4'
283
+ prerelease: false
284
+ type: :development
285
+ description: Kill Bill payment plugin for Orbital.
286
+ email: killbilling-users@googlegroups.com
287
+ executables: []
288
+ extensions: []
289
+ extra_rdoc_files: []
290
+ files:
291
+ - .gitignore
292
+ - .travis.yml
293
+ - Gemfile
294
+ - Gemfile.head
295
+ - Gemfile.lock
296
+ - Jarfile
297
+ - Jarfile.lock
298
+ - LICENSE
299
+ - NEWS
300
+ - README.md
301
+ - Rakefile
302
+ - VERSION
303
+ - config.ru
304
+ - db/ddl.sql
305
+ - db/schema.rb
306
+ - killbill-orbital.gemspec
307
+ - killbill.properties
308
+ - lib/orbital.rb
309
+ - lib/orbital/api.rb
310
+ - lib/orbital/application.rb
311
+ - lib/orbital/ext/active_merchant/active_merchant.rb
312
+ - lib/orbital/models/payment_method.rb
313
+ - lib/orbital/models/response.rb
314
+ - lib/orbital/models/transaction.rb
315
+ - lib/orbital/private_api.rb
316
+ - orbital.yml
317
+ - pom.xml
318
+ - release.sh
319
+ - spec/orbital/base_plugin_spec.rb
320
+ - spec/orbital/remote/integration_spec.rb
321
+ - spec/spec_helper.rb
322
+ homepage: http://killbill.io
323
+ licenses:
324
+ - Apache License (2.0)
325
+ metadata: {}
326
+ post_install_message:
327
+ rdoc_options:
328
+ - --exclude
329
+ - .
330
+ require_paths:
331
+ - lib
332
+ required_ruby_version: !ruby/object:Gem::Requirement
333
+ requirements:
334
+ - - '>='
335
+ - !ruby/object:Gem::Version
336
+ version: 1.9.3
337
+ required_rubygems_version: !ruby/object:Gem::Requirement
338
+ requirements:
339
+ - - '>='
340
+ - !ruby/object:Gem::Version
341
+ version: '0'
342
+ requirements: []
343
+ rubyforge_project:
344
+ rubygems_version: 2.1.9
345
+ signing_key:
346
+ specification_version: 4
347
+ summary: Plugin to use Orbital as a gateway.
348
+ test_files: []