Class: PactBroker::Api::Middleware::Configuration
- Inherits:
-
Object
- Object
- PactBroker::Api::Middleware::Configuration
- Includes:
- Logging
- Defined in:
- lib/pact_broker/api/middleware/configuration.rb
Instance Method Summary collapse
- #call(env) ⇒ Object
-
#initialize(app, configuration) ⇒ Configuration
constructor
A new instance of Configuration.
Methods included from Logging
included, #log_error, #log_with_tag, #measure_info
Constructor Details
#initialize(app, configuration) ⇒ Configuration
Returns a new instance of Configuration.
11 12 13 14 |
# File 'lib/pact_broker/api/middleware/configuration.rb', line 11 def initialize(app, configuration) @app = app @configuration = configuration end |
Instance Method Details
#call(env) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/pact_broker/api/middleware/configuration.rb', line 16 def call(env) if (overrides = env["pactbroker.configuration_overrides"])&.any? dupped_configuration = configuration.dup dupped_configuration.override_runtime_configuration!(overrides) dupped_configuration.freeze PactBroker.set_configuration(dupped_configuration) app.call(env) else PactBroker.set_configuration(configuration) app.call(env) end end |