killbill-firstdata_e4 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 0c54c977dba173d879953f36b31e9888c6531ab8
4
+ data.tar.gz: 58fd5921ab698e72a3b2f4da14a9f80c3e256bb6
5
+ SHA512:
6
+ metadata.gz: 780dba728346d427557cc2dd53f8ce05e41e703bcdfb201b95d1e856c575b3736188d9f92f1e3ee6f808d37899c393594da2a496a1f6d640b9411f75d9e5b835
7
+ data.tar.gz: e4a1f172a01b3f80183b72c4830df3247ec63aade9298338022191db114eefd1a6970772ac83d2238a3558bd494968a489319c14a0c18f3e93e6a37fca9f6521
data/.gitignore ADDED
@@ -0,0 +1,35 @@
1
+ *.gem
2
+ *.rbc
3
+ *.swp
4
+ .bundle
5
+ .config
6
+ coverage
7
+ InstalledFiles
8
+ lib/bundler/man
9
+ pkg
10
+ rdoc
11
+ spec/reports
12
+ test/tmp
13
+ test/version_tmp
14
+ tmp
15
+
16
+ # YARD artifacts
17
+ .yardoc
18
+ _yardoc
19
+ doc/
20
+
21
+ .jbundler
22
+
23
+ .DS_Store
24
+
25
+ # Testing database
26
+ test.db
27
+
28
+ firstdata_e4.log
29
+
30
+ target
31
+ pom.xml.asc
32
+
33
+ .idea/
34
+
35
+ Gemfile.head.lock
data/.travis.yml ADDED
@@ -0,0 +1,41 @@
1
+ language: ruby
2
+
3
+ sudo: false
4
+ cache: bundler
5
+
6
+ before_script:
7
+ - bundle exec jbundle install
8
+
9
+ script: 'bundle exec rake test:spec test:remote:spec'
10
+
11
+ notifications:
12
+ email:
13
+ - kill-bill-commits@googlegroups.com
14
+
15
+ env:
16
+ global:
17
+ - JRUBY_OPTS='-J-Xmx1024M'
18
+
19
+ rvm:
20
+ - jruby-1.7.20
21
+ - jruby-20mode # latest 1.7.x
22
+ - jruby-head
23
+
24
+ gemfile:
25
+ - Gemfile
26
+ - Gemfile.head
27
+
28
+ jdk:
29
+ - openjdk7
30
+ - oraclejdk7
31
+ - oraclejdk8
32
+
33
+ matrix:
34
+ allow_failures:
35
+ - rvm: jruby-head
36
+ - jdk: oraclejdk8
37
+ - gemfile: Gemfile.head
38
+ fast_finish: true
39
+
40
+ after_success:
41
+ - '[ "${TRAVIS_PULL_REQUEST}" = "false" ] && echo "<settings><servers><server><id>sonatype-nexus-snapshots</id><username>\${env.OSSRH_USER}</username><password>\${env.OSSRH_PASS}</password></server></servers></settings>" > ~/settings.xml && MVN="mvn --settings $HOME/settings.xml" NO_RELEASE=1 travis_retry travis_wait bash release.sh | egrep -v "Download|Install|Upload" ; rm -f ~/settings.xml'
data/Gemfile ADDED
@@ -0,0 +1,3 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
data/Gemfile.head ADDED
@@ -0,0 +1,5 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
4
+
5
+ gem 'killbill', :github => 'killbill/killbill-plugin-framework-ruby', :ref => 'HEAD'
data/Gemfile.lock ADDED
@@ -0,0 +1,149 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ killbill-firstdata_e4 (0.1.0)
5
+ actionpack (~> 4.1.0)
6
+ actionview (~> 4.1.0)
7
+ activemerchant (~> 1.48.0)
8
+ activerecord (~> 4.1.0)
9
+ activerecord-bogacs (~> 0.3)
10
+ activerecord-jdbc-adapter (~> 1.3)
11
+ jruby-openssl (~> 0.9.6)
12
+ killbill (~> 7.0)
13
+ monetize (~> 1.1.0)
14
+ money (~> 6.5.1)
15
+ offsite_payments (~> 2.1.0)
16
+ sinatra (~> 1.3.4)
17
+ thread_safe (~> 0.3.4)
18
+
19
+ GEM
20
+ remote: https://rubygems.org/
21
+ specs:
22
+ actionpack (4.1.14)
23
+ actionview (= 4.1.14)
24
+ activesupport (= 4.1.14)
25
+ rack (~> 1.5.2)
26
+ rack-test (~> 0.6.2)
27
+ actionview (4.1.14)
28
+ activesupport (= 4.1.14)
29
+ builder (~> 3.1)
30
+ erubis (~> 2.7.0)
31
+ active_utils (3.0.0)
32
+ activesupport (>= 3.2)
33
+ i18n
34
+ activemerchant (1.48.0)
35
+ activesupport (>= 3.2.14, < 5.0.0)
36
+ builder (>= 2.1.2, < 4.0.0)
37
+ i18n (>= 0.6.9)
38
+ nokogiri (~> 1.4)
39
+ activemodel (4.1.14)
40
+ activesupport (= 4.1.14)
41
+ builder (~> 3.1)
42
+ activerecord (4.1.14)
43
+ activemodel (= 4.1.14)
44
+ activesupport (= 4.1.14)
45
+ arel (~> 5.0.0)
46
+ activerecord-bogacs (0.4.1)
47
+ activerecord-jdbc-adapter (1.3.19)
48
+ activerecord (>= 2.2)
49
+ activesupport (4.1.14)
50
+ i18n (~> 0.6, >= 0.6.9)
51
+ json (~> 1.7, >= 1.7.7)
52
+ minitest (~> 5.1)
53
+ thread_safe (~> 0.1)
54
+ tzinfo (~> 1.1)
55
+ arel (5.0.1.20140414130214)
56
+ axiom-types (0.1.1)
57
+ descendants_tracker (~> 0.0.4)
58
+ ice_nine (~> 0.11.0)
59
+ thread_safe (~> 0.3, >= 0.3.1)
60
+ builder (3.2.2)
61
+ coercible (1.0.0)
62
+ descendants_tracker (~> 0.0.1)
63
+ descendants_tracker (0.0.4)
64
+ thread_safe (~> 0.3, >= 0.3.1)
65
+ diff-lcs (1.1.3)
66
+ equalizer (0.0.11)
67
+ erubis (2.7.0)
68
+ ethon (0.8.0)
69
+ ffi (>= 1.3.0)
70
+ ffi (1.9.10-java)
71
+ i18n (0.7.0)
72
+ ice_nine (0.11.1)
73
+ jar-dependencies (0.3.1)
74
+ jbundler (0.9.2)
75
+ bundler (~> 1.5)
76
+ jar-dependencies (~> 0.2)
77
+ maven-tools (~> 1.0.10)
78
+ ruby-maven (~> 3.3, >= 3.3.3)
79
+ jdbc-mariadb (1.2.3)
80
+ jdbc-sqlite3 (3.8.11.2)
81
+ jruby-openssl (0.9.12-java)
82
+ json (1.8.3-java)
83
+ killbill (7.0.0)
84
+ rack (>= 1.5.2)
85
+ sinatra (~> 1.3.4)
86
+ typhoeus (~> 0.6.9)
87
+ tzinfo (~> 1.2.0)
88
+ maven-tools (1.0.13)
89
+ virtus (~> 1.0)
90
+ minitest (5.8.3)
91
+ monetize (1.1.0)
92
+ money (~> 6.5.0)
93
+ money (6.5.1)
94
+ i18n (>= 0.6.4, <= 0.7.0)
95
+ nokogiri (1.6.7.1-java)
96
+ offsite_payments (2.1.0)
97
+ actionpack (>= 3.2.20, < 5.0.0)
98
+ active_utils (~> 3.0.0)
99
+ activesupport (>= 3.2.14, < 5.0.0)
100
+ builder (>= 2.1.2, < 4.0.0)
101
+ i18n (~> 0.5)
102
+ money (>= 5.0.0, < 7.0.0)
103
+ nokogiri (~> 1.4)
104
+ rack (1.5.5)
105
+ rack-protection (1.5.3)
106
+ rack
107
+ rack-test (0.6.3)
108
+ rack (>= 1.0)
109
+ rake (10.4.2)
110
+ rspec (2.12.0)
111
+ rspec-core (~> 2.12.0)
112
+ rspec-expectations (~> 2.12.0)
113
+ rspec-mocks (~> 2.12.0)
114
+ rspec-core (2.12.2)
115
+ rspec-expectations (2.12.1)
116
+ diff-lcs (~> 1.1.3)
117
+ rspec-mocks (2.12.2)
118
+ ruby-maven (3.3.8)
119
+ ruby-maven-libs (~> 3.3.1)
120
+ ruby-maven-libs (3.3.3)
121
+ sinatra (1.3.6)
122
+ rack (~> 1.4)
123
+ rack-protection (~> 1.3)
124
+ tilt (~> 1.3, >= 1.3.3)
125
+ thread_safe (0.3.5-java)
126
+ tilt (1.4.1)
127
+ typhoeus (0.6.9)
128
+ ethon (>= 0.7.1)
129
+ tzinfo (1.2.2)
130
+ thread_safe (~> 0.1)
131
+ virtus (1.0.5)
132
+ axiom-types (~> 0.1)
133
+ coercible (~> 1.0)
134
+ descendants_tracker (~> 0.0, >= 0.0.3)
135
+ equalizer (~> 0.0, >= 0.0.9)
136
+
137
+ PLATFORMS
138
+ java
139
+
140
+ DEPENDENCIES
141
+ jbundler (~> 0.9.2)
142
+ jdbc-mariadb (~> 1.1)
143
+ jdbc-sqlite3 (~> 3.7)
144
+ killbill-firstdata_e4!
145
+ rake (>= 10.0.0)
146
+ rspec (~> 2.12.0)
147
+
148
+ BUNDLED WITH
149
+ 1.10.6
data/Jarfile ADDED
@@ -0,0 +1,11 @@
1
+ jar 'org.kill-bill.billing:killbill-api', '0.32'
2
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-currency', '0.18'
3
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-invoice', '0.18'
4
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-notification', '0.18'
5
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-payment', '0.18'
6
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-control', '0.18'
7
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-catalog', '0.18'
8
+ jar 'org.kill-bill.billing.plugin:killbill-plugin-api-entitlement', '0.18'
9
+ jar 'org.kill-bill.billing:killbill-util:tests', '0.15.10'
10
+ jar 'org.mockito:mockito-all', '1.10.19'
11
+ jar 'javax.servlet:javax.servlet-api', '3.1.0'
data/Jarfile.lock ADDED
@@ -0,0 +1,63 @@
1
+ ---
2
+ :runtime:
3
+ - io.dropwizard.metrics:metrics-core:jar:3.1.1
4
+ - org.kill-bill.billing.plugin:killbill-plugin-api-catalog:jar:0.18
5
+ - com.fasterxml.jackson.core:jackson-core:jar:2.4.3
6
+ - joda-time:joda-time:jar:2.3
7
+ - org.weakref:jmxutils:jar:1.18
8
+ - org.kill-bill.billing.plugin:killbill-plugin-api-notification:jar:0.18
9
+ - commons-beanutils:commons-beanutils:jar:1.8.3
10
+ - org.kill-bill.billing:killbill-internal-api:jar:0.15.10
11
+ - org.kill-bill.commons:killbill-xmlloader:jar:0.11
12
+ - org.kill-bill.billing.plugin:killbill-plugin-api-entitlement:jar:0.18
13
+ - com.google.inject:guice:jar:3.0
14
+ - org.osgi:org.osgi.core:jar:5.0.0
15
+ - org.slf4j:slf4j-api:jar:1.7.12
16
+ - com.samskivert:jmustache:jar:1.5
17
+ - org.kill-bill.billing:killbill-util:jar:tests:0.15.10
18
+ - org.kill-bill.billing.plugin:killbill-plugin-api-currency:jar:0.18
19
+ - org.bgee.log4jdbc-log4j2:log4jdbc-log4j2-jdbc4:jar:1.16
20
+ - com.h2database:h2:jar:1.4.186
21
+ - javax.activation:activation:jar:1.1
22
+ - org.skife.config:config-magic:jar:0.14
23
+ - com.fasterxml.jackson.dataformat:jackson-dataformat-csv:jar:2.4.3
24
+ - org.kill-bill.billing.plugin:killbill-plugin-api-control:jar:0.18
25
+ - org.apache.commons:commons-email:jar:1.2
26
+ - org.mockito:mockito-all:jar:1.10.19
27
+ - antlr:antlr:jar:2.7.7
28
+ - aopalliance:aopalliance:jar:1.0
29
+ - com.fasterxml.jackson.core:jackson-annotations:jar:2.4.3
30
+ - org.antlr:stringtemplate:jar:3.2.1
31
+ - org.kill-bill.commons:killbill-clock:jar:0.11
32
+ - javax.mail:mail:jar:1.4.1
33
+ - org.kill-bill.billing:killbill-platform-base:jar:0.15
34
+ - io.dropwizard.metrics:metrics-ehcache:jar:3.1.1
35
+ - org.slf4j:jcl-over-slf4j:jar:1.7.12
36
+ - org.jdbi:jdbi:jar:2.62
37
+ - org.kill-bill.billing:killbill-platform-api:jar:0.15
38
+ - org.kill-bill.billing:killbill-platform-osgi:jar:0.15
39
+ - org.bouncycastle:bcprov-jdk15on:jar:1.50
40
+ - org.apache.felix:org.apache.felix.framework:jar:4.4.1
41
+ - org.joda:joda-money:jar:0.9
42
+ - org.kill-bill.commons:killbill-jdbi:jar:0.11
43
+ - org.kill-bill.commons:killbill-embeddeddb-common:jar:0.11
44
+ - org.apache.shiro:shiro-core:jar:1.2.3
45
+ - org.bouncycastle:bcpkix-jdk15on:jar:1.50
46
+ - org.kill-bill.billing:killbill-platform-osgi-api:jar:0.15
47
+ - org.kill-bill.billing.plugin:killbill-plugin-api-payment:jar:0.18
48
+ - com.fasterxml.jackson.core:jackson-databind:jar:2.4.3
49
+ - com.google.guava:guava:jar:r09
50
+ - org.kill-bill.commons:killbill-locker:jar:0.11
51
+ - org.osgi:org.osgi.compendium:jar:5.0.0
52
+ - org.kill-bill.commons:killbill-queue:jar:0.11
53
+ - org.kill-bill.commons:killbill-concurrent:jar:0.11
54
+ - javax.servlet:javax.servlet-api:jar:3.1.0
55
+ - org.apache.shiro:shiro-ehcache:jar:1.2.3
56
+ - javax.inject:javax.inject:jar:1
57
+ - com.fasterxml.jackson.datatype:jackson-datatype-joda:jar:2.4.3
58
+ - com.google.inject.extensions:guice-multibindings:jar:3.0
59
+ - net.sf.ehcache:ehcache:jar:2.9.1
60
+ - org.kill-bill.billing.plugin:killbill-plugin-api-invoice:jar:0.18
61
+ - org.kill-bill.billing:killbill-api:jar:0.32
62
+ - org.apache.shiro:shiro-guice:jar:1.2.3
63
+ - com.google.code.findbugs:annotations:jar:3.0.0
data/LICENSE ADDED
@@ -0,0 +1,201 @@
1
+ Apache License
2
+ Version 2.0, January 2004
3
+ http://www.apache.org/licenses/
4
+
5
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6
+
7
+ 1. Definitions.
8
+
9
+ "License" shall mean the terms and conditions for use, reproduction,
10
+ and distribution as defined by Sections 1 through 9 of this document.
11
+
12
+ "Licensor" shall mean the copyright owner or entity authorized by
13
+ the copyright owner that is granting the License.
14
+
15
+ "Legal Entity" shall mean the union of the acting entity and all
16
+ other entities that control, are controlled by, or are under common
17
+ control with that entity. For the purposes of this definition,
18
+ "control" means (i) the power, direct or indirect, to cause the
19
+ direction or management of such entity, whether by contract or
20
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
21
+ outstanding shares, or (iii) beneficial ownership of such entity.
22
+
23
+ "You" (or "Your") shall mean an individual or Legal Entity
24
+ exercising permissions granted by this License.
25
+
26
+ "Source" form shall mean the preferred form for making modifications,
27
+ including but not limited to software source code, documentation
28
+ source, and configuration files.
29
+
30
+ "Object" form shall mean any form resulting from mechanical
31
+ transformation or translation of a Source form, including but
32
+ not limited to compiled object code, generated documentation,
33
+ and conversions to other media types.
34
+
35
+ "Work" shall mean the work of authorship, whether in Source or
36
+ Object form, made available under the License, as indicated by a
37
+ copyright notice that is included in or attached to the work
38
+ (an example is provided in the Appendix below).
39
+
40
+ "Derivative Works" shall mean any work, whether in Source or Object
41
+ form, that is based on (or derived from) the Work and for which the
42
+ editorial revisions, annotations, elaborations, or other modifications
43
+ represent, as a whole, an original work of authorship. For the purposes
44
+ of this License, Derivative Works shall not include works that remain
45
+ separable from, or merely link (or bind by name) to the interfaces of,
46
+ the Work and Derivative Works thereof.
47
+
48
+ "Contribution" shall mean any work of authorship, including
49
+ the original version of the Work and any modifications or additions
50
+ to that Work or Derivative Works thereof, that is intentionally
51
+ submitted to Licensor for inclusion in the Work by the copyright owner
52
+ or by an individual or Legal Entity authorized to submit on behalf of
53
+ the copyright owner. For the purposes of this definition, "submitted"
54
+ means any form of electronic, verbal, or written communication sent
55
+ to the Licensor or its representatives, including but not limited to
56
+ communication on electronic mailing lists, source code control systems,
57
+ and issue tracking systems that are managed by, or on behalf of, the
58
+ Licensor for the purpose of discussing and improving the Work, but
59
+ excluding communication that is conspicuously marked or otherwise
60
+ designated in writing by the copyright owner as "Not a Contribution."
61
+
62
+ "Contributor" shall mean Licensor and any individual or Legal Entity
63
+ on behalf of whom a Contribution has been received by Licensor and
64
+ subsequently incorporated within the Work.
65
+
66
+ 2. Grant of Copyright License. Subject to the terms and conditions of
67
+ this License, each Contributor hereby grants to You a perpetual,
68
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
69
+ copyright license to reproduce, prepare Derivative Works of,
70
+ publicly display, publicly perform, sublicense, and distribute the
71
+ Work and such Derivative Works in Source or Object form.
72
+
73
+ 3. Grant of Patent License. Subject to the terms and conditions of
74
+ this License, each Contributor hereby grants to You a perpetual,
75
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
76
+ (except as stated in this section) patent license to make, have made,
77
+ use, offer to sell, sell, import, and otherwise transfer the Work,
78
+ where such license applies only to those patent claims licensable
79
+ by such Contributor that are necessarily infringed by their
80
+ Contribution(s) alone or by combination of their Contribution(s)
81
+ with the Work to which such Contribution(s) was submitted. If You
82
+ institute patent litigation against any entity (including a
83
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
84
+ or a Contribution incorporated within the Work constitutes direct
85
+ or contributory patent infringement, then any patent licenses
86
+ granted to You under this License for that Work shall terminate
87
+ as of the date such litigation is filed.
88
+
89
+ 4. Redistribution. You may reproduce and distribute copies of the
90
+ Work or Derivative Works thereof in any medium, with or without
91
+ modifications, and in Source or Object form, provided that You
92
+ meet the following conditions:
93
+
94
+ (a) You must give any other recipients of the Work or
95
+ Derivative Works a copy of this License; and
96
+
97
+ (b) You must cause any modified files to carry prominent notices
98
+ stating that You changed the files; and
99
+
100
+ (c) You must retain, in the Source form of any Derivative Works
101
+ that You distribute, all copyright, patent, trademark, and
102
+ attribution notices from the Source form of the Work,
103
+ excluding those notices that do not pertain to any part of
104
+ the Derivative Works; and
105
+
106
+ (d) If the Work includes a "NOTICE" text file as part of its
107
+ distribution, then any Derivative Works that You distribute must
108
+ include a readable copy of the attribution notices contained
109
+ within such NOTICE file, excluding those notices that do not
110
+ pertain to any part of the Derivative Works, in at least one
111
+ of the following places: within a NOTICE text file distributed
112
+ as part of the Derivative Works; within the Source form or
113
+ documentation, if provided along with the Derivative Works; or,
114
+ within a display generated by the Derivative Works, if and
115
+ wherever such third-party notices normally appear. The contents
116
+ of the NOTICE file are for informational purposes only and
117
+ do not modify the License. You may add Your own attribution
118
+ notices within Derivative Works that You distribute, alongside
119
+ or as an addendum to the NOTICE text from the Work, provided
120
+ that such additional attribution notices cannot be construed
121
+ as modifying the License.
122
+
123
+ You may add Your own copyright statement to Your modifications and
124
+ may provide additional or different license terms and conditions
125
+ for use, reproduction, or distribution of Your modifications, or
126
+ for any such Derivative Works as a whole, provided Your use,
127
+ reproduction, and distribution of the Work otherwise complies with
128
+ the conditions stated in this License.
129
+
130
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
131
+ any Contribution intentionally submitted for inclusion in the Work
132
+ by You to the Licensor shall be under the terms and conditions of
133
+ this License, without any additional terms or conditions.
134
+ Notwithstanding the above, nothing herein shall supersede or modify
135
+ the terms of any separate license agreement you may have executed
136
+ with Licensor regarding such Contributions.
137
+
138
+ 6. Trademarks. This License does not grant permission to use the trade
139
+ names, trademarks, service marks, or product names of the Licensor,
140
+ except as required for reasonable and customary use in describing the
141
+ origin of the Work and reproducing the content of the NOTICE file.
142
+
143
+ 7. Disclaimer of Warranty. Unless required by applicable law or
144
+ agreed to in writing, Licensor provides the Work (and each
145
+ Contributor provides its Contributions) on an "AS IS" BASIS,
146
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
147
+ implied, including, without limitation, any warranties or conditions
148
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
149
+ PARTICULAR PURPOSE. You are solely responsible for determining the
150
+ appropriateness of using or redistributing the Work and assume any
151
+ risks associated with Your exercise of permissions under this License.
152
+
153
+ 8. Limitation of Liability. In no event and under no legal theory,
154
+ whether in tort (including negligence), contract, or otherwise,
155
+ unless required by applicable law (such as deliberate and grossly
156
+ negligent acts) or agreed to in writing, shall any Contributor be
157
+ liable to You for damages, including any direct, indirect, special,
158
+ incidental, or consequential damages of any character arising as a
159
+ result of this License or out of the use or inability to use the
160
+ Work (including but not limited to damages for loss of goodwill,
161
+ work stoppage, computer failure or malfunction, or any and all
162
+ other commercial damages or losses), even if such Contributor
163
+ has been advised of the possibility of such damages.
164
+
165
+ 9. Accepting Warranty or Additional Liability. While redistributing
166
+ the Work or Derivative Works thereof, You may choose to offer,
167
+ and charge a fee for, acceptance of support, warranty, indemnity,
168
+ or other liability obligations and/or rights consistent with this
169
+ License. However, in accepting such obligations, You may act only
170
+ on Your own behalf and on Your sole responsibility, not on behalf
171
+ of any other Contributor, and only if You agree to indemnify,
172
+ defend, and hold each Contributor harmless for any liability
173
+ incurred by, or claims asserted against, such Contributor by reason
174
+ of your accepting any such warranty or additional liability.
175
+
176
+ END OF TERMS AND CONDITIONS
177
+
178
+ APPENDIX: How to apply the Apache License to your work.
179
+
180
+ To apply the Apache License to your work, attach the following
181
+ boilerplate notice, with the fields enclosed by brackets "{}"
182
+ replaced with your own identifying information. (Don't include
183
+ the brackets!) The text should be enclosed in the appropriate
184
+ comment syntax for the file format. We also recommend that a
185
+ file or class name and description of purpose be included on the
186
+ same "printed page" as the copyright notice for easier
187
+ identification within third-party archives.
188
+
189
+ Copyright 2014-2015 The Billing Project, LLC
190
+
191
+ Licensed under the Apache License, Version 2.0 (the "License");
192
+ you may not use this file except in compliance with the License.
193
+ You may obtain a copy of the License at
194
+
195
+ http://www.apache.org/licenses/LICENSE-2.0
196
+
197
+ Unless required by applicable law or agreed to in writing, software
198
+ distributed under the License is distributed on an "AS IS" BASIS,
199
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
200
+ See the License for the specific language governing permissions and
201
+ limitations under the License.
data/NEWS ADDED
@@ -0,0 +1,2 @@
1
+ 0.1.0
2
+ Initial release for Kill Bill 0.16.x
data/README.md ADDED
@@ -0,0 +1,115 @@
1
+ killbill-firstdata-e4-plugin
2
+ ============================
3
+
4
+ Plugin to use [First Data Global Gateway e4](http://www.firstdata.com/ecommerce/) as a gateway.
5
+
6
+ Release builds are available on [Maven Central](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.kill-bill.billing.plugin.ruby%22%20AND%20a%3A%22firstdata-e4-plugin%22) with coordinates `org.kill-bill.billing.plugin.ruby:firstdata-e4-plugin`.
7
+
8
+ Kill Bill compatibility
9
+ -----------------------
10
+
11
+ | Plugin version | Kill Bill version |
12
+ | -------------: | ----------------: |
13
+ | 0.0.y | 0.14.z |
14
+
15
+ Requirements
16
+ ------------
17
+
18
+ The plugin needs a database. The latest version of the schema can be found [here](https://github.com/killbill/killbill-firstdata-e4-plugin/blob/master/db/ddl.sql).
19
+
20
+ Configuration
21
+ -------------
22
+
23
+ ```
24
+ curl -v \
25
+ -X POST \
26
+ -u admin:password \
27
+ -H 'X-Killbill-ApiKey: bob' \
28
+ -H 'X-Killbill-ApiSecret: lazar' \
29
+ -H 'X-Killbill-CreatedBy: admin' \
30
+ -H 'Content-Type: text/plain' \
31
+ -d ':firstdata_e4:
32
+ :login: "your-login"
33
+ :password: "your-password"' \
34
+ http://127.0.0.1:8080/1.0/kb/tenants/uploadPluginConfig/killbill-firstdata-e4
35
+ ```
36
+
37
+ To get your credentials:
38
+
39
+ 1. Go to [provisioning.demo.globalgatewaye4.firstdata.com/signup](https://provisioning.demo.globalgatewaye4.firstdata.com/signup) and create an account.
40
+ 2. Go to your [terminals](https://demo.globalgatewaye4.firstdata.com/terminal) and click on the ecommerce one. In the details:
41
+ * Enter `abc` into the Transarmor Token field (to enable tokenization)
42
+ * Click `Generate` next to the password field and save the password
43
+ * Click `Update`
44
+
45
+ The login to use for this plugin is your Gateway ID and the password is the auto-generated one.
46
+
47
+ To go to production, create a `firstdata_e4.yml` configuration file under `/var/tmp/bundles/plugins/ruby/killbill-firstdata-e4/x.y.z/` containing the following:
48
+
49
+ ```
50
+ :firstdata_e4:
51
+ :test: false
52
+ ```
53
+
54
+ Usage
55
+ -----
56
+
57
+ To store a credit card:
58
+
59
+ ```
60
+ curl -v \
61
+ -X POST \
62
+ -u admin:password \
63
+ -H 'X-Killbill-ApiKey: bob' \
64
+ -H 'X-Killbill-ApiSecret: lazar' \
65
+ -H 'X-Killbill-CreatedBy: admin' \
66
+ -H 'Content-Type: application/json' \
67
+ -d '{
68
+ "pluginName": "killbill-firstdata-e4",
69
+ "pluginInfo": {
70
+ "properties": [
71
+ {
72
+ "key": "ccFirstName",
73
+ "value": "John"
74
+ },
75
+ {
76
+ "key": "ccLastName",
77
+ "value": "Doe"
78
+ },
79
+ {
80
+ "key": "address1",
81
+ "value": "5th Street"
82
+ },
83
+ {
84
+ "key": "city",
85
+ "value": "San Francisco"
86
+ },
87
+ {
88
+ "key": "zip",
89
+ "value": "94111"
90
+ },
91
+ {
92
+ "key": "state",
93
+ "value": "CA"
94
+ },
95
+ {
96
+ "key": "country",
97
+ "value": "USA"
98
+ },
99
+ {
100
+ "key": "ccExpirationMonth",
101
+ "value": 12
102
+ },
103
+ {
104
+ "key": "ccExpirationYear",
105
+ "value": 2017
106
+ },
107
+ {
108
+ "key": "ccNumber",
109
+ "value": "4111111111111111"
110
+ }
111
+ ]
112
+ }
113
+ }' \
114
+ "http://127.0.0.1:8080/1.0/kb/accounts/2a55045a-ce1d-4344-942d-b825536328f9/paymentMethods?isDefault=true"
115
+ ```
data/Rakefile ADDED
@@ -0,0 +1,30 @@
1
+ #!/usr/bin/env rake
2
+
3
+ # Install tasks to build and release the plugin
4
+ require 'bundler/setup'
5
+ Bundler::GemHelper.install_tasks
6
+
7
+ # Install test tasks
8
+ require 'rspec/core/rake_task'
9
+ namespace :test do
10
+ desc 'Run RSpec tests'
11
+ RSpec::Core::RakeTask.new do |task|
12
+ task.name = 'spec'
13
+ task.pattern = './spec/*/*_spec.rb'
14
+ end
15
+
16
+ namespace :remote do
17
+ desc 'Run RSpec remote tests'
18
+ RSpec::Core::RakeTask.new do |task|
19
+ task.name = 'spec'
20
+ task.pattern = './spec/*/remote/*_spec.rb'
21
+ end
22
+ end
23
+ end
24
+
25
+ # Install tasks to package the plugin for Killbill
26
+ require 'killbill/rake_task'
27
+ Killbill::PluginHelper.install_tasks
28
+
29
+ # Run tests by default
30
+ task :default => 'test:spec'
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.1.0
data/config.ru ADDED
@@ -0,0 +1,4 @@
1
+ require 'firstdata_e4'
2
+ require 'firstdata_e4/application'
3
+
4
+ run Sinatra::Application