salestation 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 63b4fc4253f91d5699ccbea25cb7b1e5779c8dde
4
- data.tar.gz: 44e2f3e5b744e3b7805e4a719765ac4af2b946d1
3
+ metadata.gz: fab51d38331535ba91704962caed90aafe63239b
4
+ data.tar.gz: f9a1cab5d37fb3af72a9db99f42d8021ed10211a
5
5
  SHA512:
6
- metadata.gz: f5e47733fa247b54a1335c3a5b1ea965105ee87ca3146ce6d41b2bb824008f0059cdd85051f8853c9b2ee1078b329d5162e755123832a0d3aef2d89b2ae7f5b6
7
- data.tar.gz: c2ced111b6f2308e84c0d23976ba16bd0fce8d186953e5022e8005cedcabf3c33e6a8dc1c241a340f12d2d340656d77a1075150f5e3be0cbcab3713cd471f0c2
6
+ metadata.gz: d3a2ded9db7798961555d9cac8c478e09d701c60bd4a7ed66a56771c88a4989b7c16a7091a1c162f2ee117ac29408561be2552f6424e450c0f4f0dc1bbaa8562
7
+ data.tar.gz: c48aa6527625c1635c9746e9a7c5201d3b31d46cdeeb323e3c88fa6bccb0258f25e2bb1c7e8a0028203d37ff3c23e1b185a26376d73127124e58df9b9768463a
@@ -0,0 +1,22 @@
1
+ module Salestation
2
+ class Web < Module
3
+ class ActiveRecordConnectionManagement
4
+ def initialize(app)
5
+ @app = app
6
+ end
7
+
8
+ def call(env)
9
+ testing = env['rack.test']
10
+
11
+ status, headers, body = @app.call(env)
12
+ proxy = ::Rack::BodyProxy.new(body) do
13
+ ActiveRecord::Base.clear_active_connections! unless testing
14
+ end
15
+ [status, headers, proxy]
16
+ rescue Exception
17
+ ActiveRecord::Base.clear_active_connections! unless testing
18
+ raise
19
+ end
20
+ end
21
+ end
22
+ end
@@ -33,5 +33,6 @@ end
33
33
  require_relative './web/responses'
34
34
  require_relative './web/error_mapper'
35
35
  require_relative './result_helper'
36
+ require_relative './web/active_record_connection_management'
36
37
  require_relative './web/request_logger'
37
38
  require_relative './web/statsd_middleware'
data/salestation.gemspec CHANGED
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = "salestation"
7
- spec.version = "0.2.0"
7
+ spec.version = "0.2.1"
8
8
  spec.authors = ["SaleMove TechMovers"]
9
9
  spec.email = ["techmovers@salemove.com"]
10
10
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: salestation
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - SaleMove TechMovers
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-04-20 00:00:00.000000000 Z
11
+ date: 2017-04-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -129,6 +129,7 @@ files:
129
129
  - lib/salestation/app/request.rb
130
130
  - lib/salestation/result_helper.rb
131
131
  - lib/salestation/web.rb
132
+ - lib/salestation/web/active_record_connection_management.rb
132
133
  - lib/salestation/web/error_mapper.rb
133
134
  - lib/salestation/web/request_logger.rb
134
135
  - lib/salestation/web/responses.rb