zuora_connect 3.0.1.pre.c → 3.0.2.pre.b

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ad647d03e32b321e138c9adac68f251170483f170801baa94017ba70e920b8e8
4
- data.tar.gz: 80fcbbb2144cbb89e2f79a28dc425350337199528e9a47adaa2f677bfd4be7ec
3
+ metadata.gz: 88383fb37eab881d442eb16520cc71cf11c98456c4b66e6cc59bc46f8f60e625
4
+ data.tar.gz: 741a1f55b33c8045d57902ed937fe98cfbfb63fa422f109228ac4d4bebef5cc8
5
5
  SHA512:
6
- metadata.gz: 1d1f9ce5e3958d4c88f0480158c857cf1dcdce12f72af62c8f11c1a7caf03551b5a1be34fd30b404072058b57ef1a6b3c9834fafa7cea40615e5d5ddc992af6e
7
- data.tar.gz: e3a4ac9e3994c489fe4c21e3f2ae313d58dad157a8629965c68032f8a77d4578d7076a90f22ba8bc71c195df9e97cb07cb0160452546c5a16eacdce1e96c9a53
6
+ metadata.gz: 7d23d6d4c59108331e07c2e7c2003fa2c297ae166b5b7317d982220dff5a1845e99adc30cb93ff6d93976c5eec6442b6986e1db318e5f8f3353746d4d2d66704
7
+ data.tar.gz: 6954dee8718c38bce95971b3f31e91cc377392bc83019ff6b0ca1964baaf91890c2b57a319edf208051b725b79a11a7dc44fb64ad54792f23c6733cf4b910373
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ZuoraConnect
4
+ # Methods for authenticating and setting the app instance for the current user
5
+ module Authenticate
6
+ extend ActiveSupport::Concern
7
+
8
+ def setup_instance_via_dev_mode
9
+ app_instance_id = ZuoraConnect.configuration.dev_mode_appinstance
10
+ session['appInstance'] = app_instance_id
11
+ session["#{app_instance_id}::admin"] = ZuoraConnect.configuration.dev_mode_admin
12
+
13
+ values = {
14
+ id: app_instance_id,
15
+ access_token: ZuoraConnect.configuration.dev_mode_user,
16
+ refresh_token: ZuoraConnect.configuration.dev_mode_pass,
17
+ token: ZuoraConnect.configuration.dev_mode_pass + ZuoraConnect.configuration.dev_mode_pass,
18
+ api_token: ZuoraConnect.configuration.dev_mode_pass + ZuoraConnect.configuration.dev_mode_pass
19
+ }
20
+
21
+ @appinstance = ZuoraConnect::AppInstance.find_by(id: app_instance_id)
22
+ ZuoraConnect::ZuoraUser.current_user_id = 0
23
+ if @appinstance.blank?
24
+ Apartment::Tenant.switch!('public')
25
+ begin
26
+ Apartment::Tenant.create(app_instance_id)
27
+ rescue Apartment::TenantExists
28
+ Apartment::Tenant.drop(app_instance_id)
29
+ retry
30
+ end
31
+ @appinstance = ZuoraConnect::AppInstance.new
32
+ end
33
+ @appinstance.assign_attributes(values)
34
+ @appinstance.save(validate: false)
35
+ end
36
+ end
37
+ end
@@ -10,6 +10,7 @@ module ZuoraConnect
10
10
  included do
11
11
  before_create :set_created_by_id
12
12
  before_update :set_updated_by_id
13
+ before_destroy :set_updated_by_id
13
14
 
14
15
  private
15
16
 
@@ -1293,8 +1293,8 @@ module ZuoraConnect
1293
1293
  end
1294
1294
 
1295
1295
  def self.read_master_db
1296
- if self.connection.respond_to?(:stick_to_master!)
1297
- self.connection.stick_to_master!(false)
1296
+ if self.connection.respond_to?(:stick_to_primary!)
1297
+ self.connection.stick_to_primary!(false)
1298
1298
  yield
1299
1299
  Makara::Context.release_all
1300
1300
  else
@@ -26,14 +26,9 @@ module ZuoraConnect
26
26
  @appinstance = ZuoraConnect::AppInstance.find_by(:api_token => request.headers["API-Token"])
27
27
  ZuoraConnect.logger.debug("API REQUEST - API token") if @appinstance.present?
28
28
  check_instance
29
- elsif ZuoraConnect::AppInstance::INTERNAL_HOSTS.include?(request.headers.fetch("HOST", nil))
29
+ elsif ZuoraConnect::AppInstance::INTERNAL_HOSTS.include?(request.headers.fetch("HOST", nil)) && request.headers['zuora-host'].present?
30
30
  zuora_host, zuora_entity_id, zuora_instance_id = [request.headers['zuora-host'], (request.headers['zuora-entity-ids'] || "").gsub('-',''), request.headers['zuora-instance-id']]
31
31
 
32
- #Validate host present
33
- if zuora_host.blank?
34
- render json: {"status": 401, "message": "zuora-host header was not supplied."}, status: :unauthorized
35
- return
36
- end
37
32
  #Validate entity-ids present
38
33
  if zuora_entity_id.blank?
39
34
  render json: {"status": 401, "message": "zuora-entity-ids header was not supplied."}, status: :unauthorized
@@ -663,34 +658,6 @@ module ZuoraConnect
663
658
  def generate_token
664
659
  rand(36**64).to_s(36)
665
660
  end
666
-
667
- def setup_instance_via_dev_mode
668
- session["appInstance"] = ZuoraConnect.configuration.dev_mode_appinstance
669
- session["#{ZuoraConnect.configuration.dev_mode_appinstance}::admin"] = ZuoraConnect.configuration.dev_mode_admin
670
-
671
- values = {
672
- id: ZuoraConnect.configuration.dev_mode_appinstance,
673
- access_token: ZuoraConnect.configuration.dev_mode_user,
674
- refresh_token: ZuoraConnect.configuration.dev_mode_pass,
675
- token: ZuoraConnect.configuration.dev_mode_pass+ZuoraConnect.configuration.dev_mode_pass,
676
- api_token: ZuoraConnect.configuration.dev_mode_pass+ZuoraConnect.configuration.dev_mode_pass
677
- }
678
-
679
- @appinstance = ZuoraConnect::AppInstance.find_by(:id => ZuoraConnect.configuration.dev_mode_appinstance.to_i)
680
- ZuoraConnect::ZuoraUser.current_user_id = 0
681
- if @appinstance.blank?
682
- Apartment::Tenant.switch!("public")
683
- begin
684
- Apartment::Tenant.create(ZuoraConnect.configuration.dev_mode_appinstance.to_s)
685
- rescue Apartment::TenantExists => ex
686
- Apartment::Tenant.drop(ZuoraConnect.configuration.dev_mode_appinstance.to_s)
687
- retry
688
- end
689
- @appinstance = ZuoraConnect::AppInstance.new()
690
- end
691
- @appinstance.assign_attributes(values)
692
- @appinstance.save(:validate => false)
693
- end
694
661
  end
695
662
  end
696
663
  end
@@ -31,6 +31,7 @@ module ZuoraConnect
31
31
  initializer "connect.helpers" do
32
32
  ActiveSupport.on_load(:action_controller) do
33
33
  include ZuoraConnect::Controllers::Helpers
34
+ include ZuoraConnect::Authenticate
34
35
  helper ZuoraConnect::ApplicationHelper
35
36
  end
36
37
  end
@@ -1,7 +1,6 @@
1
1
  require 'middleware/metrics_middleware'
2
2
  require 'middleware/request_id_middleware'
3
3
  require 'middleware/json_parse_errors'
4
- require 'middleware/bad_multipart_form_data_sanitizer'
5
4
 
6
5
  module ZuoraConnect
7
6
  class Railtie < Rails::Railtie
@@ -20,7 +19,6 @@ module ZuoraConnect
20
19
  initializer "zuora_connect.configure_rails_initialization" do |app|
21
20
  app.middleware.insert_after Rack::Sendfile, ZuoraConnect::MetricsMiddleware
22
21
  app.middleware.insert_after ActionDispatch::RequestId, ZuoraConnect::RequestIdMiddleware
23
- app.middleware.insert_before Rack::Runtime, ZuoraConnect::BadMultipartFormDataSanitizer
24
22
  app.config.middleware.use ZuoraConnect::JsonParseErrors
25
23
  end
26
24
 
@@ -1,3 +1,3 @@
1
1
  module ZuoraConnect
2
- VERSION = "3.0.1-c"
2
+ VERSION = "3.0.2-b"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zuora_connect
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.1.pre.c
4
+ version: 3.0.2.pre.b
5
5
  platform: ruby
6
6
  authors:
7
7
  - Connect Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-04-30 00:00:00.000000000 Z
11
+ date: 2021-07-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: apartment
@@ -100,13 +100,27 @@ dependencies:
100
100
  - - ">="
101
101
  - !ruby/object:Gem::Version
102
102
  version: '0'
103
+ - !ruby/object:Gem::Dependency
104
+ name: rack
105
+ requirement: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ">="
108
+ - !ruby/object:Gem::Version
109
+ version: 2.0.2
110
+ type: :runtime
111
+ prerelease: false
112
+ version_requirements: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - ">="
115
+ - !ruby/object:Gem::Version
116
+ version: 2.0.2
103
117
  - !ruby/object:Gem::Dependency
104
118
  name: railties
105
119
  requirement: !ruby/object:Gem::Requirement
106
120
  requirements:
107
121
  - - ">="
108
122
  - !ruby/object:Gem::Version
109
- version: 4.1.0
123
+ version: '5.0'
110
124
  - - "<"
111
125
  - !ruby/object:Gem::Version
112
126
  version: '6.1'
@@ -116,7 +130,7 @@ dependencies:
116
130
  requirements:
117
131
  - - ">="
118
132
  - !ruby/object:Gem::Version
119
- version: 4.1.0
133
+ version: '5.0'
120
134
  - - "<"
121
135
  - !ruby/object:Gem::Version
122
136
  version: '6.1'
@@ -346,6 +360,7 @@ files:
346
360
  - app/assets/javascripts/zuora_connect/application.js
347
361
  - app/assets/stylesheets/zuora_connect/api/v1/app_instance.css
348
362
  - app/assets/stylesheets/zuora_connect/application.css
363
+ - app/controllers/concerns/zuora_connect/authenticate.rb
349
364
  - app/controllers/zuora_connect/admin/tenant_controller.rb
350
365
  - app/controllers/zuora_connect/api/v1/app_instance_controller.rb
351
366
  - app/controllers/zuora_connect/application_controller.rb
@@ -394,7 +409,6 @@ files:
394
409
  - db/migrate/20190520232224_add_environment_fields.rb
395
410
  - lib/metrics/influx/point_value.rb
396
411
  - lib/metrics/net.rb
397
- - lib/middleware/bad_multipart_form_data_sanitizer.rb
398
412
  - lib/middleware/json_parse_errors.rb
399
413
  - lib/middleware/metrics_middleware.rb
400
414
  - lib/middleware/request_id_middleware.rb
@@ -430,7 +444,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
430
444
  - !ruby/object:Gem::Version
431
445
  version: 1.3.1
432
446
  requirements: []
433
- rubygems_version: 3.2.15
447
+ rubygems_version: 3.2.22
434
448
  signing_key:
435
449
  specification_version: 4
436
450
  summary: Summary of Connect.
@@ -1,21 +0,0 @@
1
- module ZuoraConnect
2
- class BadMultipartFormDataSanitizer
3
- def initialize(app)
4
- @app = app
5
- end
6
-
7
- def call(env)
8
- if env['CONTENT_TYPE'] =~ /multipart\/form-data/
9
- begin
10
- Rack::Multipart.parse_multipart(env)
11
- rescue EOFError => ex
12
- # set content-type to multipart/form-data without the boundary part
13
- # to handle the case where empty content is submitted
14
- env['CONTENT_TYPE'] = 'multipart/form-data'
15
- end
16
- end
17
-
18
- @app.call(env)
19
- end
20
- end
21
- end