class CorrelationId::Middleware::Rack

Public Class Methods

new(app) click to toggle source
# File lib/correlation_id/middleware/rack.rb, line 4
def initialize(app)
  @app = app
end

Public Instance Methods

call(env) click to toggle source
# File lib/correlation_id/middleware/rack.rb, line 8
def call(env)
  CorrelationId.uuid = header_from_env(env)

  status, headers, body = @app.call(env)

  headers = headers.merge(HEADER_KEY => CorrelationId.uuid)
  [status, headers, body]
end

Private Instance Methods

header_from_env(env) click to toggle source
# File lib/correlation_id/middleware/rack.rb, line 19
def header_from_env(env)
  env["HTTP_#{HEADER_KEY.upcase.tr('-', '_')}"]
end