iron_bank 2.2.0 → 3.0.0
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.
- 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
|