class HTTParty::HeadersProcessor
def call
def call return unless options[:headers] options[:headers] = headers.merge(options[:headers]) if headers.any? options[:headers] = Utils.stringify_keys(process_dynamic_headers) end
def initialize(headers, options)
def initialize(headers, options) @headers = headers @options = options end
def process_dynamic_headers
def process_dynamic_headers options[:headers].each_with_object({}) do |header, processed_headers| key, value = header processed_headers[key] = if value.respond_to?(:call) value.arity == 0 ? value.call : value.call(options) else value end end end