class ElasticAPM::Transport::Headers

@api private

def [](key)

def [](key)
  @hash[key]
end

def []=(key, value)

def []=(key, value)
  @hash[key] = value
end

def build!(headers)

def build!(headers)
  headers[:'User-Agent'] = UserAgent.new(@config).to_s
  if (token = @config.secret_token)
    headers[:Authorization] = "Bearer #{token}"
  end
  if (api_key = @config.api_key)
    headers[:Authorization] = "ApiKey #{api_key}"
  end
  headers
end

def chunked

def chunked
  merge(
    @config.http_compression? ? GZIP_HEADERS : HEADERS
  )
end

def initialize(config, initial: {})

def initialize(config, initial: {})
  @config = config
  @hash = build!(initial)
end

def merge(other)

def merge(other)
  self.class.new(@config, initial: @hash.merge(other))
end

def merge!(other)

def merge!(other)
  @hash.merge!(other)
  self
end

def to_h

def to_h
  @hash
end