class PactBroker::Api::Middleware::Configuration

Attributes

app[R]
configuration[R]

Public Class Methods

new(app, configuration) click to toggle source
# File lib/pact_broker/api/middleware/configuration.rb, line 11
def initialize(app, configuration)
  @app = app
  @configuration = configuration
end

Public Instance Methods

call(env) click to toggle source
# 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