Class: PactBroker::Api::Middleware::BasicAuth
- Inherits:
-
Object
- Object
- PactBroker::Api::Middleware::BasicAuth
- Defined in:
- lib/pact_broker/api/middleware/basic_auth.rb
Instance Method Summary collapse
- #call(env) ⇒ Object
-
#initialize(app, write_credentials, read_credentials, policy) ⇒ BasicAuth
constructor
A new instance of BasicAuth.
Constructor Details
#initialize(app, write_credentials, read_credentials, policy) ⇒ BasicAuth
Returns a new instance of BasicAuth.
10 11 12 13 14 15 16 17 |
# File 'lib/pact_broker/api/middleware/basic_auth.rb', line 10 def initialize(app, write_credentials, read_credentials, policy) @app = app @write_credentials = write_credentials @read_credentials = read_credentials @app_with_write_auth = build_app_with_write_auth @app_with_read_auth = build_app_with_read_auth @policy = policy end |
Instance Method Details
#call(env) ⇒ Object
19 20 21 22 23 24 25 26 27 |
# File 'lib/pact_broker/api/middleware/basic_auth.rb', line 19 def call(env) if policy.public_access_allowed?(env) app.call(env) elsif policy.read_access_allowed?(env) app_with_read_auth.call(env) else app_with_write_auth.call(env) end end |