class Apia::RequestHeaders

Public Class Methods

create_from_request(request) click to toggle source
# File lib/apia/request_headers.rb, line 28
def create_from_request(request)
  hash = request.each_header.each_with_object({}) do |(key, value), inner_hash|
    next unless key =~ /\AHTTP_(\w+)\z/

    name = Regexp.last_match[1]

    inner_hash[name] = value
  end
  new(hash)
end
make_key(key) click to toggle source
# File lib/apia/request_headers.rb, line 24
def make_key(key)
  key.gsub('-', '_').upcase
end
new(headers) click to toggle source
# File lib/apia/request_headers.rb, line 6
def initialize(headers)
  @headers = headers
end

Public Instance Methods

[](key) click to toggle source
# File lib/apia/request_headers.rb, line 14
def [](key)
  fetch(key)
end
[]=(key, value) click to toggle source
# File lib/apia/request_headers.rb, line 18
def []=(key, value)
  @headers[self.class.make_key(key)] = value
end
fetch(key, default = nil) click to toggle source
# File lib/apia/request_headers.rb, line 10
def fetch(key, default = nil)
  @headers[self.class.make_key(key)] || default
end