api_valve 0.5.0 → 0.5.1

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: 0aa5a1818ae2804c3c185af5bec56e8b819672ac69b611097ec0da8f1c2b1289
4
- data.tar.gz: '09f0b5d1c206aba0f00c74e6ed85e1c7498e3442af769f61de975858f2dbc94c'
3
+ metadata.gz: b6a3b6b23568f00882c8cf08a5d2150096819307ab303b20513008d2d995b6c8
4
+ data.tar.gz: 9a1c6d19d2b7a7f0a6738f163906ce1433473ad5c94b95fe07b5a885c2b68f14
5
5
  SHA512:
6
- metadata.gz: ffa06feb6c79ae0e49bd741a542a194fc2a0707d0b053319eb205a316e6a02476b5d0998b9757ec0acab3d57fd48502204a2ec81ae04f08a7df2ced1016e98a6
7
- data.tar.gz: 7bcd5a6528e21a31b3afe4d873615721301661c781690d3eb60a68df1e1e1c295efc94000ccb05dc32f85a3583b9cecde24e78194c5eadce2beb09eabb4bc862
6
+ metadata.gz: '0719eeff6965648630a5676e76d0fcf24b458ac76d929485bf970953c58fc353a672cbfe2efa448e9d77e455d56d6d47972c1d9b07109c73d63b1fd36e3111c2'
7
+ data.tar.gz: 99db0790a2cbea77314f803c8baeb75f833cd39ae1fe5040ee0051c08df73e61bfdfcefed2508ca782ede4928a2b5db547aa29af6c6b4096d5fd9be12e6ae45d
@@ -1,6 +1,6 @@
1
1
  module ApiValve
2
2
  # This class is responsible for forwarding the HTTP request to the
3
- # designated endpoint. It is instanciated once per Proxy with relevant
3
+ # designated endpoint. It is instantiated once per Proxy with relevant
4
4
  # options, and called from the router.
5
5
 
6
6
  class Forwarder
@@ -21,7 +21,7 @@ module ApiValve
21
21
  end
22
22
 
23
23
  # Takes the original rack request with optional options and returns a rack response
24
- # Instanciates the Request and Response classes and wraps them arround the original
24
+ # Instantiates the Request and Response classes and wraps them around the original
25
25
  # request and response.
26
26
  def call(original_request, local_options = {})
27
27
  request = build_request(original_request, request_options.deep_merge(local_options))
@@ -44,7 +44,7 @@ module ApiValve
44
44
  original_response,
45
45
  options.merge(
46
46
  target_prefix: @target_prefix,
47
- local_prefix: original_request.env['SCRIPT_NAME']
47
+ local_prefix: original_request.env['SCRIPT_NAME']
48
48
  )
49
49
  )
50
50
  end
@@ -76,9 +76,9 @@ module ApiValve
76
76
  ApiValve.logger.info do
77
77
  format(
78
78
  '-> %<method>s %<endpoint>s%<path>s',
79
- method: request.method.upcase,
79
+ method: request.method.upcase,
80
80
  endpoint: endpoint,
81
- path: request.path
81
+ path: request.path
82
82
  )
83
83
  end
84
84
  end
@@ -88,7 +88,7 @@ module ApiValve
88
88
  format(
89
89
  '<- %<status>s in %<ms>dms',
90
90
  status: response.status,
91
- ms: elapsed_time * 1000
91
+ ms: elapsed_time * 1000
92
92
  )
93
93
  end
94
94
  end
@@ -10,7 +10,7 @@ module ApiValve
10
10
  private
11
11
 
12
12
  def permission_handler
13
- permission_handler_klass.instance(@original_request, permission_handler_options)
13
+ permission_handler_klass.instance(original_request, permission_handler_options)
14
14
  end
15
15
 
16
16
  def permission_handler_klass
@@ -18,10 +18,14 @@ module ApiValve
18
18
  end
19
19
 
20
20
  def permission_handler_options
21
- @options[:permission_handler] || {}
21
+ options[:permission_handler] || {}
22
22
  end
23
23
  end
24
24
 
25
+ attr_reader :request, :options
26
+
27
+ delegate :env, to: :request
28
+
25
29
  # Returns an instance of the PermissionHandler, cached in the request env
26
30
  # This allows re-use of the PermissionHandler by both Request and Response instances
27
31
  def self.instance(request, options)
@@ -11,7 +11,7 @@ module ApiValve
11
11
  class Forwarder::Response
12
12
  include Forwarder::PermissionHandler::RequestIntegration
13
13
 
14
- attr_reader :original_request, :original_response
14
+ attr_reader :original_request, :original_response, :options
15
15
 
16
16
  WHITELISTED_HEADERS = %w(
17
17
  Cache-Control
@@ -54,8 +54,8 @@ module ApiValve
54
54
  def forwarder_config(config)
55
55
  {
56
56
  permission_handler: {klass: permission_handler},
57
- request: {klass: request},
58
- response: {klass: response}
57
+ request: {klass: request},
58
+ response: {klass: response}
59
59
  }.with_indifferent_access.deep_merge config.slice(*FORWARDER_OPTIONS)
60
60
  end
61
61
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: api_valve
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - mkon
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-10-16 00:00:00.000000000 Z
11
+ date: 2018-11-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -120,28 +120,28 @@ dependencies:
120
120
  requirements:
121
121
  - - '='
122
122
  - !ruby/object:Gem::Version
123
- version: 0.59.2
123
+ version: 0.60.0
124
124
  type: :development
125
125
  prerelease: false
126
126
  version_requirements: !ruby/object:Gem::Requirement
127
127
  requirements:
128
128
  - - '='
129
129
  - !ruby/object:Gem::Version
130
- version: 0.59.2
130
+ version: 0.60.0
131
131
  - !ruby/object:Gem::Dependency
132
132
  name: rubocop-rspec
133
133
  requirement: !ruby/object:Gem::Requirement
134
134
  requirements:
135
135
  - - '='
136
136
  - !ruby/object:Gem::Version
137
- version: 1.30.0
137
+ version: 1.30.1
138
138
  type: :development
139
139
  prerelease: false
140
140
  version_requirements: !ruby/object:Gem::Requirement
141
141
  requirements:
142
142
  - - '='
143
143
  - !ruby/object:Gem::Version
144
- version: 1.30.0
144
+ version: 1.30.1
145
145
  - !ruby/object:Gem::Dependency
146
146
  name: simplecov
147
147
  requirement: !ruby/object:Gem::Requirement