Class: Castle::HeadersFilter

Inherits:
Object
  • Object
show all
Defined in:
lib/castle/headers_filter.rb

Overview

used for preparing valuable headers list

Instance Method Summary collapse

Constructor Details

#initialize(request) ⇒ HeadersFilter

Returns a new instance of HeadersFilter.

Parameters:

  • request (Rack::Request)


19
20
21
22
# File 'lib/castle/headers_filter.rb', line 19

def initialize(request)
  @request_env = request.env
  @formatter = HeadersFormatter
end

Instance Method Details

#callHash

Serialize HTTP headers

Returns:

  • (Hash)


26
27
28
29
30
31
32
33
# File 'lib/castle/headers_filter.rb', line 26

def call
  @request_env.keys.each_with_object({}) do |header_name, acc|
    next unless header_name.match(VALUABLE_HEADERS)

    formatted_name = @formatter.call(header_name)
    acc[formatted_name] = @request_env[header_name]
  end
end