Sha256: 69ebe18657dc8c96e527d7a7bb4abf68a88b283a75dac45ac00653c84ddb2d7a

Contents?: true

Size: 764 Bytes

Versions: 13

Compression:

Stored size: 764 Bytes

Contents

# frozen_string_literal: true

require 'rack/contrib/response_headers'
require_relative 'concerns/skip_request_paths'

module RailsSpotlight
  module Middlewares
    class HeaderMarker
      include ::RailsSpotlight::Middlewares::SkipRequestPaths

      def initialize(app, app_config)
        @app = app
        @app_config = app_config
      end

      def call(env)
        request_path = env['PATH_INFO']
        middleware = Rack::ResponseHeaders.new(app) do |headers|
          headers['X-Rails-Spotlight-Version'] = RailsSpotlight::VERSION unless skip?(request_path)
        end
        middleware.call(env)
      end

      private

      attr_reader :app, :app_config

      def default_skip_paths
        %w[/__better_errors]
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
rails_spotlight-0.3.6 lib/rails_spotlight/middlewares/header_marker.rb
rails_spotlight-0.3.5 lib/rails_spotlight/middlewares/header_marker.rb
rails_spotlight-0.3.4 lib/rails_spotlight/middlewares/header_marker.rb
rails_spotlight-0.3.3 lib/rails_spotlight/middlewares/header_marker.rb
rails_spotlight-0.3.2 lib/rails_spotlight/middlewares/header_marker.rb
rails_spotlight-0.3.1 lib/rails_spotlight/middlewares/header_marker.rb
rails_spotlight-0.3.0 lib/rails_spotlight/middlewares/header_marker.rb
rails_spotlight-0.2.5 lib/rails_spotlight/middlewares/header_marker.rb
rails_spotlight-0.2.4 lib/rails_spotlight/middlewares/header_marker.rb
rails_spotlight-0.2.3 lib/rails_spotlight/middlewares/header_marker.rb
rails_spotlight-0.2.2 lib/rails_spotlight/middlewares/header_marker.rb
rails_spotlight-0.2.1 lib/rails_spotlight/middlewares/header_marker.rb
rails_spotlight-0.2.0 lib/rails_spotlight/middlewares/header_marker.rb