Module: Agents::Helpers::Headers
- Defined in:
- lib/agents/helpers/headers.rb
Class Method Summary collapse
Class Method Details
.merge(agent_headers, runtime_headers) ⇒ Object
18 19 20 21 22 23 |
# File 'lib/agents/helpers/headers.rb', line 18 def merge(agent_headers, runtime_headers) return runtime_headers if agent_headers.empty? return agent_headers if runtime_headers.empty? agent_headers.merge(runtime_headers) { |_key, _agent_value, runtime_value| runtime_value } end |
.normalize(headers, freeze_result: false) ⇒ Object
8 9 10 11 12 13 14 15 16 |
# File 'lib/agents/helpers/headers.rb', line 8 def normalize(headers, freeze_result: false) return freeze_result ? {}.freeze : {} if headers.nil? || (headers.respond_to?(:empty?) && headers.empty?) hash = headers.respond_to?(:to_h) ? headers.to_h : headers raise ArgumentError, "headers must be a Hash or respond to #to_h" unless hash.is_a?(Hash) result = symbolize_keys(hash) freeze_result ? result.freeze : result end |