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.
- checksums.yaml +4 -4
- data/.env.example +0 -2
- data/.gitignore +0 -1
- data/.reek.yml +5 -15
- data/.rspec +1 -0
- data/.rubocop.yml +9 -4
- data/.ruby-version +1 -0
- data/.travis.yml +4 -4
- data/Gemfile +1 -1
- data/Gemfile.lock +134 -0
- data/README.md +34 -14
- data/Rakefile +11 -16
- data/bin/console +8 -8
- data/iron_bank.gemspec +32 -34
- data/lib/generators/iron_bank/install/install_generator.rb +4 -4
- data/lib/generators/iron_bank/install/templates/iron_bank.rb +6 -6
- data/lib/iron_bank/action.rb +1 -1
- data/lib/iron_bank/actions/query_more.rb +1 -1
- data/lib/iron_bank/associations.rb +2 -2
- data/lib/iron_bank/authentication.rb +1 -1
- data/lib/iron_bank/authentications/cookie.rb +7 -7
- data/lib/iron_bank/authentications/token.rb +9 -9
- data/lib/iron_bank/cacheable.rb +1 -0
- data/lib/iron_bank/client.rb +6 -10
- data/lib/iron_bank/collection.rb +1 -0
- data/lib/iron_bank/configuration.rb +8 -19
- data/lib/iron_bank/csv.rb +2 -2
- data/lib/iron_bank/describe/field.rb +2 -2
- data/lib/iron_bank/describe/object.rb +5 -5
- data/lib/iron_bank/describe/related.rb +3 -3
- data/lib/iron_bank/describe/tenant.rb +2 -2
- data/lib/iron_bank/endpoint.rb +3 -3
- data/lib/iron_bank/error.rb +17 -17
- data/lib/iron_bank/local.rb +15 -7
- data/lib/iron_bank/local_records.rb +58 -20
- data/lib/iron_bank/logger.rb +3 -3
- data/lib/iron_bank/operation.rb +1 -1
- data/lib/iron_bank/query_builder.rb +4 -4
- data/lib/iron_bank/resource.rb +2 -7
- data/lib/iron_bank/resources/account.rb +6 -6
- data/lib/iron_bank/resources/export.rb +23 -0
- data/lib/iron_bank/resources/product_rate_plan.rb +2 -1
- data/lib/iron_bank/resources/product_rate_plan_charge_tier.rb +0 -44
- data/lib/iron_bank/resources/rate_plan_charge.rb +1 -1
- data/lib/iron_bank/resources/subscription.rb +4 -4
- data/lib/iron_bank/resources/usage.rb +1 -1
- data/lib/iron_bank/utils.rb +5 -5
- data/lib/iron_bank/version.rb +2 -2
- data/lib/iron_bank.rb +67 -75
- metadata +21 -52
- data/lib/iron_bank/instrumentation.rb +0 -14
- data/lib/iron_bank/open_tracing.rb +0 -18
- data/lib/iron_bank/resources/catalog_tiers/discount_amount.rb +0 -26
- data/lib/iron_bank/resources/catalog_tiers/discount_percentage.rb +0 -26
- 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:
|
28
|
-
with_one :sold_to, resource_name:
|
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:
|
35
|
-
conditions: { status:
|
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:
|
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:
|
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
|
-
[
|
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
|
@@ -10,12 +10,12 @@ module IronBank
|
|
10
10
|
with_cache
|
11
11
|
|
12
12
|
with_one :account
|
13
|
-
with_one :invoice_owner, resource_name:
|
13
|
+
with_one :invoice_owner, resource_name: "Account"
|
14
14
|
|
15
|
-
with_one :original, resource_name:
|
15
|
+
with_one :original, resource_name: "Subscription"
|
16
16
|
with_one :previous,
|
17
|
-
resource_name:
|
18
|
-
foreign_key:
|
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
|
data/lib/iron_bank/utils.rb
CHANGED
@@ -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,
|
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)
|
data/lib/iron_bank/version.rb
CHANGED
data/lib/iron_bank.rb
CHANGED
@@ -1,13 +1,12 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
# External librairies
|
4
|
-
require
|
5
|
-
require
|
6
|
-
require
|
7
|
-
require
|
8
|
-
require
|
9
|
-
require
|
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
|
51
|
-
require
|
52
|
-
require
|
53
|
-
require
|
54
|
-
require
|
55
|
-
require
|
56
|
-
require
|
57
|
-
require
|
58
|
-
require
|
59
|
-
require
|
60
|
-
require
|
61
|
-
require
|
62
|
-
require
|
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
|
73
|
-
require
|
74
|
-
require
|
75
|
-
require
|
76
|
-
require
|
77
|
-
require
|
78
|
-
require
|
79
|
-
require
|
80
|
-
require
|
81
|
-
require
|
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
|
85
|
-
require
|
86
|
-
require
|
87
|
-
require
|
88
|
-
require
|
89
|
-
require
|
90
|
-
require
|
91
|
-
require
|
92
|
-
require
|
93
|
-
require
|
94
|
-
require
|
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
|
98
|
-
require
|
92
|
+
require "iron_bank/operation"
|
93
|
+
require "iron_bank/operations/billing_preview"
|
99
94
|
|
100
95
|
# Resources
|
101
|
-
require
|
102
|
-
require
|
103
|
-
require
|
104
|
-
require
|
105
|
-
require
|
106
|
-
require
|
107
|
-
require
|
108
|
-
require
|
109
|
-
require
|
110
|
-
require
|
111
|
-
require
|
112
|
-
require
|
113
|
-
require
|
114
|
-
require
|
115
|
-
require
|
116
|
-
require
|
117
|
-
require
|
118
|
-
require
|
119
|
-
require
|
120
|
-
require
|
121
|
-
require
|
122
|
-
require
|
123
|
-
require
|
124
|
-
require
|
125
|
-
require
|
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:
|
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-
|
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: '
|
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: '
|
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.
|
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.
|
141
|
+
version: '0.67'
|
170
142
|
- !ruby/object:Gem::Dependency
|
171
|
-
name:
|
143
|
+
name: rubocop-performance
|
172
144
|
requirement: !ruby/object:Gem::Requirement
|
173
145
|
requirements:
|
174
146
|
- - "~>"
|
175
147
|
- !ruby/object:Gem::Version
|
176
|
-
version:
|
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:
|
155
|
+
version: '1.0'
|
184
156
|
- !ruby/object:Gem::Dependency
|
185
|
-
name:
|
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:
|
171
|
+
name: simplecov
|
200
172
|
requirement: !ruby/object:Gem::Requirement
|
201
173
|
requirements:
|
202
174
|
- - "~>"
|
203
175
|
- !ruby/object:Gem::Version
|
204
|
-
version: '
|
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: '
|
183
|
+
version: '0.15'
|
212
184
|
- !ruby/object:Gem::Dependency
|
213
|
-
name:
|
185
|
+
name: timecop
|
214
186
|
requirement: !ruby/object:Gem::Requirement
|
215
187
|
requirements:
|
216
188
|
- - "~>"
|
217
189
|
- !ruby/object:Gem::Version
|
218
|
-
version:
|
219
|
-
type: :
|
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:
|
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.
|
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.
|
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
|