iron_bank 2.2.0 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/.env.example +0 -2
  3. data/.gitignore +0 -1
  4. data/.reek.yml +5 -15
  5. data/.rspec +1 -0
  6. data/.rubocop.yml +9 -4
  7. data/.ruby-version +1 -0
  8. data/.travis.yml +4 -4
  9. data/Gemfile +1 -1
  10. data/Gemfile.lock +134 -0
  11. data/README.md +34 -14
  12. data/Rakefile +11 -16
  13. data/bin/console +8 -8
  14. data/iron_bank.gemspec +32 -34
  15. data/lib/generators/iron_bank/install/install_generator.rb +4 -4
  16. data/lib/generators/iron_bank/install/templates/iron_bank.rb +6 -6
  17. data/lib/iron_bank/action.rb +1 -1
  18. data/lib/iron_bank/actions/query_more.rb +1 -1
  19. data/lib/iron_bank/associations.rb +2 -2
  20. data/lib/iron_bank/authentication.rb +1 -1
  21. data/lib/iron_bank/authentications/cookie.rb +7 -7
  22. data/lib/iron_bank/authentications/token.rb +9 -9
  23. data/lib/iron_bank/cacheable.rb +1 -0
  24. data/lib/iron_bank/client.rb +6 -10
  25. data/lib/iron_bank/collection.rb +1 -0
  26. data/lib/iron_bank/configuration.rb +8 -19
  27. data/lib/iron_bank/csv.rb +2 -2
  28. data/lib/iron_bank/describe/field.rb +2 -2
  29. data/lib/iron_bank/describe/object.rb +5 -5
  30. data/lib/iron_bank/describe/related.rb +3 -3
  31. data/lib/iron_bank/describe/tenant.rb +2 -2
  32. data/lib/iron_bank/endpoint.rb +3 -3
  33. data/lib/iron_bank/error.rb +17 -17
  34. data/lib/iron_bank/local.rb +15 -7
  35. data/lib/iron_bank/local_records.rb +58 -20
  36. data/lib/iron_bank/logger.rb +3 -3
  37. data/lib/iron_bank/operation.rb +1 -1
  38. data/lib/iron_bank/query_builder.rb +4 -4
  39. data/lib/iron_bank/resource.rb +2 -7
  40. data/lib/iron_bank/resources/account.rb +6 -6
  41. data/lib/iron_bank/resources/export.rb +23 -0
  42. data/lib/iron_bank/resources/product_rate_plan.rb +2 -1
  43. data/lib/iron_bank/resources/product_rate_plan_charge_tier.rb +0 -44
  44. data/lib/iron_bank/resources/rate_plan_charge.rb +1 -1
  45. data/lib/iron_bank/resources/subscription.rb +4 -4
  46. data/lib/iron_bank/resources/usage.rb +1 -1
  47. data/lib/iron_bank/utils.rb +5 -5
  48. data/lib/iron_bank/version.rb +2 -2
  49. data/lib/iron_bank.rb +67 -75
  50. metadata +21 -52
  51. data/lib/iron_bank/instrumentation.rb +0 -14
  52. data/lib/iron_bank/open_tracing.rb +0 -18
  53. data/lib/iron_bank/resources/catalog_tiers/discount_amount.rb +0 -26
  54. data/lib/iron_bank/resources/catalog_tiers/discount_percentage.rb +0 -26
  55. data/lib/iron_bank/resources/catalog_tiers/price.rb +0 -26
@@ -24,21 +24,21 @@ module IronBank
24
24
  with_schema
25
25
 
26
26
  # Contacts
27
- with_one :bill_to, resource_name: 'Contact'
28
- with_one :sold_to, resource_name: 'Contact'
27
+ with_one :bill_to, resource_name: "Contact"
28
+ with_one :sold_to, resource_name: "Contact"
29
29
  with_many :contacts
30
30
 
31
31
  # Subscriptions
32
32
  with_many :subscriptions
33
33
  with_many :active_subscriptions,
34
- resource_name: 'Subscription',
35
- conditions: { status: 'Active' }
34
+ resource_name: "Subscription",
35
+ conditions: { status: "Active" }
36
36
 
37
37
  # Invoices
38
38
  with_many :invoices
39
39
 
40
40
  # Payment Methods
41
- with_one :default_payment_method, resource_name: 'PaymentMethod'
41
+ with_one :default_payment_method, resource_name: "PaymentMethod"
42
42
  with_many :payment_methods
43
43
 
44
44
  # Payments
@@ -48,7 +48,7 @@ module IronBank
48
48
  with_many :usages
49
49
 
50
50
  # Parent
51
- with_one :parent, resource_name: 'Account'
51
+ with_one :parent, resource_name: "Account"
52
52
 
53
53
  def ultimate_parent
54
54
  root if parent
@@ -6,6 +6,29 @@ module IronBank
6
6
  #
7
7
  class Export < Resource
8
8
  with_schema
9
+
10
+ DEFAULT_CREATE_OPTIONS = {
11
+ format: "csv",
12
+ zip: false
13
+ }.freeze
14
+
15
+ ENDPOINT = "/v1/object/export"
16
+
17
+ def self.create(query, options = {})
18
+ payload = IronBank::Object.new(
19
+ DEFAULT_CREATE_OPTIONS.merge(query: query, **options)
20
+ ).deep_camelize
21
+
22
+ response = IronBank.client.connection.post(ENDPOINT, payload)
23
+
24
+ new(IronBank::Object.new(response.body).deep_underscore)
25
+ end
26
+
27
+ def content
28
+ return unless status&.casecmp?("Completed")
29
+
30
+ @content ||= IronBank.client.connection.get("/v1/files/#{file_id}").body
31
+ end
9
32
  end
10
33
  end
11
34
  end
@@ -11,6 +11,7 @@ module IronBank
11
11
  def self.exclude_fields
12
12
  %w[ActiveCurrencies]
13
13
  end
14
+
14
15
  with_schema
15
16
  with_local_records
16
17
  with_cache
@@ -21,7 +22,7 @@ module IronBank
21
22
  def active_currencies
22
23
  query_string = IronBank::QueryBuilder.zoql(
23
24
  self.class.object_name,
24
- ['ActiveCurrencies'],
25
+ ["ActiveCurrencies"],
25
26
  id: id
26
27
  )
27
28
 
@@ -11,50 +11,6 @@ module IronBank
11
11
  with_cache
12
12
 
13
13
  with_one :product_rate_plan_charge, alias: :charge
14
-
15
- def self.where(conditions)
16
- # If we are coming from a subclass, defer to Queryable#all
17
- return super unless name.end_with?('ProductRatePlanChargeTier')
18
-
19
- CatalogTiers.constants.map do |tier_klass|
20
- CatalogTiers.const_get(tier_klass).where(conditions)
21
- end.flatten
22
- end
23
-
24
- def self.find_each
25
- return enum_for(:find_each) unless block_given?
26
- return super unless name.end_with?('ProductRatePlanChargeTier')
27
-
28
- CatalogTiers.constants.each do |tier_klass|
29
- # Pass the block to each subclasses
30
- CatalogTiers.const_get(tier_klass).find_each(&Proc.new)
31
- end
32
- end
33
-
34
- # We want to store all fields to the CSV, not just the ones that can be
35
- # queried through Zuora, for all the different tiers (discount-percentage,
36
- # discount-fixed amount and regular pricing).
37
- def to_csv_row
38
- ProductRatePlanChargeTier.fields.each.with_object([]) do |field, row|
39
- row << remote[IronBank::Utils.underscore(field).to_sym]
40
- end
41
- end
42
-
43
- def self.load_records
44
- CSV.foreach(file_path, csv_options).with_object({}) do |row, store|
45
- remote = row.to_h.reject { |_, value| value.nil? }
46
-
47
- record = if remote[:discount_amount]
48
- CatalogTiers::DiscountAmount.new(remote)
49
- elsif remote[:discount_percentage]
50
- CatalogTiers::DiscountPercentage.new(remote)
51
- else
52
- CatalogTiers::Price.new(remote)
53
- end
54
-
55
- store[row[:id]] = record
56
- end
57
- end
58
14
  end
59
15
  end
60
16
  end
@@ -20,7 +20,7 @@ module IronBank
20
20
  with_schema
21
21
  with_cache
22
22
 
23
- with_one :original, resource_name: 'RatePlanCharge'
23
+ with_one :original, resource_name: "RatePlanCharge"
24
24
  with_one :product_rate_plan_charge, alias: :catalog_charge
25
25
  with_one :rate_plan, alias: :plan
26
26
 
@@ -10,12 +10,12 @@ module IronBank
10
10
  with_cache
11
11
 
12
12
  with_one :account
13
- with_one :invoice_owner, resource_name: 'Account'
13
+ with_one :invoice_owner, resource_name: "Account"
14
14
 
15
- with_one :original, resource_name: 'Subscription'
15
+ with_one :original, resource_name: "Subscription"
16
16
  with_one :previous,
17
- resource_name: 'Subscription',
18
- foreign_key: 'previous_subscription_id'
17
+ resource_name: "Subscription",
18
+ foreign_key: "previous_subscription_id"
19
19
 
20
20
  with_many :rate_plans, alias: :plans
21
21
  with_many :usages
@@ -8,7 +8,7 @@ module IronBank
8
8
  with_schema
9
9
 
10
10
  with_one :account
11
- with_one :charge, resource_name: 'RatePlanCharge'
11
+ with_one :charge, resource_name: "RatePlanCharge"
12
12
  with_one :import
13
13
  with_one :subscription
14
14
  end
@@ -10,10 +10,10 @@ module IronBank
10
10
  def underscore(camel_cased_word)
11
11
  return camel_cased_word unless camel_cased_word =~ /[A-Z-]|::/
12
12
 
13
- word = camel_cased_word.to_s.gsub(/::/, '/')
13
+ word = camel_cased_word.to_s.gsub(/::/, "/")
14
14
  word.gsub!(/([A-Z\d]+)([A-Z][a-z])/, '\1_\2')
15
15
  word.gsub!(/([a-z\d])([A-Z])/, '\1_\2')
16
- word.tr!('-', '_')
16
+ word.tr!("-", "_")
17
17
  word.downcase
18
18
  end
19
19
 
@@ -24,8 +24,8 @@ module IronBank
24
24
  lower_camelize = type == :lower
25
25
 
26
26
  output = term.to_s.dup.tap do |copy|
27
- copy.gsub!(/^_*/, '')
28
- copy.gsub!(/__(NS|c)$/i, '') if custom_field || netsuite_field
27
+ copy.gsub!(/^_*/, "")
28
+ copy.gsub!(/__(NS|c)$/i, "") if custom_field || netsuite_field
29
29
 
30
30
  lower_camelize ? lower_camelize(copy) : upper_camelize(copy)
31
31
  end
@@ -40,7 +40,7 @@ module IronBank
40
40
  end
41
41
 
42
42
  def kebab(term)
43
- underscore(term).tr!('_', '-')
43
+ underscore(term).tr!("_", "-")
44
44
  end
45
45
 
46
46
  def lower_camelize(term)
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module IronBank
4
- VERSION = '2.2.0'
5
- API_VERSION = 'v1'
4
+ VERSION = "3.0.0"
5
+ API_VERSION = "v1"
6
6
  end
data/lib/iron_bank.rb CHANGED
@@ -1,13 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  # External librairies
4
- require 'csv'
5
- require 'faraday'
6
- require 'faraday_middleware'
7
- require 'fileutils'
8
- require 'json'
9
- require 'nokogiri'
10
- require 'ddtrace'
4
+ require "csv"
5
+ require "faraday"
6
+ require "faraday_middleware"
7
+ require "fileutils"
8
+ require "json"
9
+ require "nokogiri"
11
10
 
12
11
  # An opinionated Ruby interface to the Zuora REST API
13
12
  module IronBank
@@ -47,85 +46,78 @@ module IronBank
47
46
  end
48
47
 
49
48
  # Utilities
50
- require 'iron_bank/logger'
51
- require 'iron_bank/cacheable'
52
- require 'iron_bank/configuration'
53
- require 'iron_bank/endpoint'
54
- require 'iron_bank/local_records'
55
- require 'iron_bank/local'
56
- require 'iron_bank/utils'
57
- require 'iron_bank/version'
58
- require 'iron_bank/csv'
59
- require 'iron_bank/error'
60
- require 'iron_bank/faraday_middleware/raise_error'
61
- require 'iron_bank/faraday_middleware/renew_auth'
62
- require 'iron_bank/faraday_middleware'
63
-
64
- # Helpers
65
- require 'iron_bank/open_tracing'
66
- require 'iron_bank/instrumentation'
49
+ require "iron_bank/logger"
50
+ require "iron_bank/cacheable"
51
+ require "iron_bank/configuration"
52
+ require "iron_bank/endpoint"
53
+ require "iron_bank/local_records"
54
+ require "iron_bank/local"
55
+ require "iron_bank/utils"
56
+ require "iron_bank/version"
57
+ require "iron_bank/csv"
58
+ require "iron_bank/error"
59
+ require "iron_bank/faraday_middleware/raise_error"
60
+ require "iron_bank/faraday_middleware/renew_auth"
61
+ require "iron_bank/faraday_middleware"
67
62
 
68
63
  # Use default configuration
69
64
  IronBank.configure {}
70
65
 
71
66
  # Actions
72
- require 'iron_bank/action'
73
- require 'iron_bank/actions/amend'
74
- require 'iron_bank/actions/create'
75
- require 'iron_bank/actions/delete'
76
- require 'iron_bank/actions/execute'
77
- require 'iron_bank/actions/generate'
78
- require 'iron_bank/actions/subscribe'
79
- require 'iron_bank/actions/update'
80
- require 'iron_bank/actions/query'
81
- require 'iron_bank/actions/query_more'
67
+ require "iron_bank/action"
68
+ require "iron_bank/actions/amend"
69
+ require "iron_bank/actions/create"
70
+ require "iron_bank/actions/delete"
71
+ require "iron_bank/actions/execute"
72
+ require "iron_bank/actions/generate"
73
+ require "iron_bank/actions/subscribe"
74
+ require "iron_bank/actions/update"
75
+ require "iron_bank/actions/query"
76
+ require "iron_bank/actions/query_more"
82
77
 
83
78
  # Client and schema (describe)
84
- require 'iron_bank/authentication'
85
- require 'iron_bank/authentications/cookie'
86
- require 'iron_bank/authentications/token'
87
- require 'iron_bank/client'
88
- require 'iron_bank/describe/field'
89
- require 'iron_bank/describe/object'
90
- require 'iron_bank/describe/related'
91
- require 'iron_bank/describe/tenant'
92
- require 'iron_bank/object'
93
- require 'iron_bank/schema'
94
- require 'iron_bank/query_builder'
79
+ require "iron_bank/authentication"
80
+ require "iron_bank/authentications/cookie"
81
+ require "iron_bank/authentications/token"
82
+ require "iron_bank/client"
83
+ require "iron_bank/describe/field"
84
+ require "iron_bank/describe/object"
85
+ require "iron_bank/describe/related"
86
+ require "iron_bank/describe/tenant"
87
+ require "iron_bank/object"
88
+ require "iron_bank/schema"
89
+ require "iron_bank/query_builder"
95
90
 
96
91
  # Operations
97
- require 'iron_bank/operation'
98
- require 'iron_bank/operations/billing_preview'
92
+ require "iron_bank/operation"
93
+ require "iron_bank/operations/billing_preview"
99
94
 
100
95
  # Resources
101
- require 'iron_bank/associations'
102
- require 'iron_bank/metadata'
103
- require 'iron_bank/queryable'
104
- require 'iron_bank/resource'
105
- require 'iron_bank/collection'
106
- require 'iron_bank/resources/account'
107
- require 'iron_bank/resources/amendment'
108
- require 'iron_bank/resources/contact'
109
- require 'iron_bank/resources/export'
110
- require 'iron_bank/resources/import'
111
- require 'iron_bank/resources/invoice_adjustment'
112
- require 'iron_bank/resources/invoice_item'
113
- require 'iron_bank/resources/invoice_payment'
114
- require 'iron_bank/resources/invoice'
115
- require 'iron_bank/resources/payment_method'
116
- require 'iron_bank/resources/payment'
117
- require 'iron_bank/resources/product_rate_plan_charge_tier'
118
- require 'iron_bank/resources/product_rate_plan_charge'
119
- require 'iron_bank/resources/product_rate_plan'
120
- require 'iron_bank/resources/product'
121
- require 'iron_bank/resources/rate_plan_charge_tier'
122
- require 'iron_bank/resources/rate_plan_charge'
123
- require 'iron_bank/resources/rate_plan'
124
- require 'iron_bank/resources/subscription'
125
- require 'iron_bank/resources/usage'
126
- require 'iron_bank/resources/catalog_tiers/discount_amount'
127
- require 'iron_bank/resources/catalog_tiers/discount_percentage'
128
- require 'iron_bank/resources/catalog_tiers/price'
96
+ require "iron_bank/associations"
97
+ require "iron_bank/metadata"
98
+ require "iron_bank/queryable"
99
+ require "iron_bank/resource"
100
+ require "iron_bank/collection"
101
+ require "iron_bank/resources/account"
102
+ require "iron_bank/resources/amendment"
103
+ require "iron_bank/resources/contact"
104
+ require "iron_bank/resources/export"
105
+ require "iron_bank/resources/import"
106
+ require "iron_bank/resources/invoice_adjustment"
107
+ require "iron_bank/resources/invoice_item"
108
+ require "iron_bank/resources/invoice_payment"
109
+ require "iron_bank/resources/invoice"
110
+ require "iron_bank/resources/payment_method"
111
+ require "iron_bank/resources/payment"
112
+ require "iron_bank/resources/product_rate_plan_charge_tier"
113
+ require "iron_bank/resources/product_rate_plan_charge"
114
+ require "iron_bank/resources/product_rate_plan"
115
+ require "iron_bank/resources/product"
116
+ require "iron_bank/resources/rate_plan_charge_tier"
117
+ require "iron_bank/resources/rate_plan_charge"
118
+ require "iron_bank/resources/rate_plan"
119
+ require "iron_bank/resources/subscription"
120
+ require "iron_bank/resources/usage"
129
121
 
130
122
  # Aliasing IronBank::Actions::* to IronBank::*
131
123
  IronBank::Actions.constants.each do |action|
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: iron_bank
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.0
4
+ version: 3.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mickael Pham
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: exe
13
13
  cert_chain: []
14
- date: 2019-03-20 00:00:00.000000000 Z
14
+ date: 2019-04-10 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: bump
@@ -61,14 +61,14 @@ dependencies:
61
61
  requirements:
62
62
  - - "~>"
63
63
  - !ruby/object:Gem::Version
64
- version: '4.10'
64
+ version: '5.0'
65
65
  type: :development
66
66
  prerelease: false
67
67
  version_requirements: !ruby/object:Gem::Requirement
68
68
  requirements:
69
69
  - - "~>"
70
70
  - !ruby/object:Gem::Version
71
- version: '4.10'
71
+ version: '5.0'
72
72
  - !ruby/object:Gem::Dependency
73
73
  name: pry-byebug
74
74
  requirement: !ruby/object:Gem::Requirement
@@ -131,58 +131,30 @@ dependencies:
131
131
  requirements:
132
132
  - - "~>"
133
133
  - !ruby/object:Gem::Version
134
- version: '0.52'
135
- type: :development
136
- prerelease: false
137
- version_requirements: !ruby/object:Gem::Requirement
138
- requirements:
139
- - - "~>"
140
- - !ruby/object:Gem::Version
141
- version: '0.52'
142
- - !ruby/object:Gem::Dependency
143
- name: shoulda-matchers
144
- requirement: !ruby/object:Gem::Requirement
145
- requirements:
146
- - - "~>"
147
- - !ruby/object:Gem::Version
148
- version: '3.1'
149
- type: :development
150
- prerelease: false
151
- version_requirements: !ruby/object:Gem::Requirement
152
- requirements:
153
- - - "~>"
154
- - !ruby/object:Gem::Version
155
- version: '3.1'
156
- - !ruby/object:Gem::Dependency
157
- name: simplecov
158
- requirement: !ruby/object:Gem::Requirement
159
- requirements:
160
- - - "~>"
161
- - !ruby/object:Gem::Version
162
- version: '0.15'
134
+ version: '0.67'
163
135
  type: :development
164
136
  prerelease: false
165
137
  version_requirements: !ruby/object:Gem::Requirement
166
138
  requirements:
167
139
  - - "~>"
168
140
  - !ruby/object:Gem::Version
169
- version: '0.15'
141
+ version: '0.67'
170
142
  - !ruby/object:Gem::Dependency
171
- name: timecop
143
+ name: rubocop-performance
172
144
  requirement: !ruby/object:Gem::Requirement
173
145
  requirements:
174
146
  - - "~>"
175
147
  - !ruby/object:Gem::Version
176
- version: 0.9.0
148
+ version: '1.0'
177
149
  type: :development
178
150
  prerelease: false
179
151
  version_requirements: !ruby/object:Gem::Requirement
180
152
  requirements:
181
153
  - - "~>"
182
154
  - !ruby/object:Gem::Version
183
- version: 0.9.0
155
+ version: '1.0'
184
156
  - !ruby/object:Gem::Dependency
185
- name: vcr
157
+ name: shoulda-matchers
186
158
  requirement: !ruby/object:Gem::Requirement
187
159
  requirements:
188
160
  - - "~>"
@@ -196,33 +168,33 @@ dependencies:
196
168
  - !ruby/object:Gem::Version
197
169
  version: '4.0'
198
170
  - !ruby/object:Gem::Dependency
199
- name: webmock
171
+ name: simplecov
200
172
  requirement: !ruby/object:Gem::Requirement
201
173
  requirements:
202
174
  - - "~>"
203
175
  - !ruby/object:Gem::Version
204
- version: '3.0'
176
+ version: '0.15'
205
177
  type: :development
206
178
  prerelease: false
207
179
  version_requirements: !ruby/object:Gem::Requirement
208
180
  requirements:
209
181
  - - "~>"
210
182
  - !ruby/object:Gem::Version
211
- version: '3.0'
183
+ version: '0.15'
212
184
  - !ruby/object:Gem::Dependency
213
- name: ddtrace
185
+ name: timecop
214
186
  requirement: !ruby/object:Gem::Requirement
215
187
  requirements:
216
188
  - - "~>"
217
189
  - !ruby/object:Gem::Version
218
- version: '0'
219
- type: :runtime
190
+ version: 0.9.0
191
+ type: :development
220
192
  prerelease: false
221
193
  version_requirements: !ruby/object:Gem::Requirement
222
194
  requirements:
223
195
  - - "~>"
224
196
  - !ruby/object:Gem::Version
225
- version: '0'
197
+ version: 0.9.0
226
198
  - !ruby/object:Gem::Dependency
227
199
  name: faraday
228
200
  requirement: !ruby/object:Gem::Requirement
@@ -282,8 +254,10 @@ files:
282
254
  - ".reek.yml"
283
255
  - ".rspec"
284
256
  - ".rubocop.yml"
257
+ - ".ruby-version"
285
258
  - ".travis.yml"
286
259
  - Gemfile
260
+ - Gemfile.lock
287
261
  - LICENSE
288
262
  - README.md
289
263
  - Rakefile
@@ -322,13 +296,11 @@ files:
322
296
  - lib/iron_bank/faraday_middleware.rb
323
297
  - lib/iron_bank/faraday_middleware/raise_error.rb
324
298
  - lib/iron_bank/faraday_middleware/renew_auth.rb
325
- - lib/iron_bank/instrumentation.rb
326
299
  - lib/iron_bank/local.rb
327
300
  - lib/iron_bank/local_records.rb
328
301
  - lib/iron_bank/logger.rb
329
302
  - lib/iron_bank/metadata.rb
330
303
  - lib/iron_bank/object.rb
331
- - lib/iron_bank/open_tracing.rb
332
304
  - lib/iron_bank/operation.rb
333
305
  - lib/iron_bank/operations/billing_preview.rb
334
306
  - lib/iron_bank/query_builder.rb
@@ -336,9 +308,6 @@ files:
336
308
  - lib/iron_bank/resource.rb
337
309
  - lib/iron_bank/resources/account.rb
338
310
  - lib/iron_bank/resources/amendment.rb
339
- - lib/iron_bank/resources/catalog_tiers/discount_amount.rb
340
- - lib/iron_bank/resources/catalog_tiers/discount_percentage.rb
341
- - lib/iron_bank/resources/catalog_tiers/price.rb
342
311
  - lib/iron_bank/resources/contact.rb
343
312
  - lib/iron_bank/resources/export.rb
344
313
  - lib/iron_bank/resources/import.rb
@@ -372,7 +341,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
372
341
  requirements:
373
342
  - - ">="
374
343
  - !ruby/object:Gem::Version
375
- version: '2.3'
344
+ version: '2.4'
376
345
  required_rubygems_version: !ruby/object:Gem::Requirement
377
346
  requirements:
378
347
  - - ">="
@@ -380,7 +349,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
380
349
  version: '0'
381
350
  requirements: []
382
351
  rubyforge_project:
383
- rubygems_version: 2.6.14.3
352
+ rubygems_version: 2.6.14.4
384
353
  signing_key:
385
354
  specification_version: 4
386
355
  summary: An opinionated Ruby interface to the Zuora API.
@@ -1,14 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module IronBank
4
- # Instrumentation helper module
5
- module Instrumentation
6
- def instrumenter
7
- IronBank.configuration.instrumenter
8
- end
9
-
10
- def instrumenter_options
11
- IronBank.configuration.instrumenter_options || {}
12
- end
13
- end
14
- end
@@ -1,18 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module IronBank
4
- # Open Tracing helper module
5
- module OpenTracing
6
- def open_tracing_enabled?
7
- IronBank.configuration.open_tracing_enabled
8
- end
9
-
10
- def open_tracing_options
11
- {
12
- distributed_tracing: true,
13
- split_by_domain: false,
14
- service_name: IronBank.configuration.open_tracing_service_name
15
- }
16
- end
17
- end
18
- end
@@ -1,26 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module IronBank
4
- module Resources
5
- module CatalogTiers
6
- # A tier that holds an discount ammount for a given product rate plan
7
- # charge.
8
- #
9
- class DiscountAmount < ProductRatePlanChargeTier
10
- def self.exclude_fields
11
- %w[
12
- Active
13
- DiscountPercentage
14
- IncludedUnits
15
- OveragePrice
16
- Price
17
- ]
18
- end
19
-
20
- def self.object_name
21
- superclass.object_name
22
- end
23
- end
24
- end
25
- end
26
- end
@@ -1,26 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module IronBank
4
- module Resources
5
- module CatalogTiers
6
- # A tier that holds an discount percentage for a given product rate plan
7
- # charge.
8
- #
9
- class DiscountPercentage < ProductRatePlanChargeTier
10
- def self.exclude_fields
11
- %w[
12
- Active
13
- DiscountAmount
14
- IncludedUnits
15
- OveragePrice
16
- Price
17
- ]
18
- end
19
-
20
- def self.object_name
21
- superclass.object_name
22
- end
23
- end
24
- end
25
- end
26
- end