Class: ApiParticulier::Commons::Middleware::Authentication
- Inherits:
-
Faraday::Middleware
- Object
- Faraday::Middleware
- ApiParticulier::Commons::Middleware::Authentication
- Defined in:
- lib/api_particulier/commons/middleware/authentication.rb
Defined Under Namespace
Classes: RequestWrapper
Instance Method Summary collapse
-
#initialize(app, auth_strategy:) ⇒ Authentication
constructor
A new instance of Authentication.
- #on_request(env) ⇒ Object
Constructor Details
#initialize(app, auth_strategy:) ⇒ Authentication
Returns a new instance of Authentication.
10 11 12 13 |
# File 'lib/api_particulier/commons/middleware/authentication.rb', line 10 def initialize(app, auth_strategy:) super(app) @auth_strategy = auth_strategy end |
Instance Method Details
#on_request(env) ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/api_particulier/commons/middleware/authentication.rb', line 15 def on_request(env) return if @auth_strategy.nil? request = RequestWrapper.new(env) begin @auth_strategy.apply(request) rescue StandardError => e raise ApiParticulier::Commons::AuthenticationError.new( "auth strategy raised: #{e.}", method: env.method, url: env.url.to_s ) end end |