Sha256: 15b97334ef3e56f7047e76b20b6afaed6ec94515ceb06c2f0d7a358f1b0b7123
Contents?: true
Size: 853 Bytes
Versions: 85
Compression:
Stored size: 853 Bytes
Contents
# frozen_string_literal: true module HTTParty class HeadersProcessor attr_reader :headers, :options def initialize(headers, options) @headers = headers @options = options end def call return unless options[:headers] options[:headers] = headers.merge(options[:headers]) if headers.any? options[:headers] = Utils.stringify_keys(process_dynamic_headers) end private 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 end end
Version data entries
85 entries across 85 versions & 3 rubygems