module Escher::Request::DCI::RackEnv

Constants

CONSTANT_HTTP_HEADER_KEYS
CUSTOM_HTTP_HEADER_MATCHER

Protected Instance Methods

get_headers_by_rack_env(env) click to toggle source
# File lib/escher/request/dci/rack_env.rb, line 8
def get_headers_by_rack_env(env)
  format_headers(get_custom_http_headers(env) + get_constant_http_headers(env))
end

Private Instance Methods

format_headers(array) click to toggle source
# File lib/escher/request/dci/rack_env.rb, line 22
def format_headers(array)
  array.map { |header_name, value| [header_name.sub(CUSTOM_HTTP_HEADER_MATCHER, '').tr('_', '-'), value] }
end
get_constant_http_headers(env) click to toggle source
# File lib/escher/request/dci/rack_env.rb, line 18
def get_constant_http_headers(env)
  CONSTANT_HTTP_HEADER_KEYS.map { |env_key| [env_key, env[env_key]] }.select { |k, v| !v.nil? }
end
get_custom_http_headers(env) click to toggle source
# File lib/escher/request/dci/rack_env.rb, line 14
def get_custom_http_headers(env)
  env.select { |env_str_key, _| env_str_key =~ CUSTOM_HTTP_HEADER_MATCHER }.to_a
end