Sha256: 2072de6471d3a9bf94af7e12e91378e8d5616582c86c124edc5abd0263c04d37
Contents?: true
Size: 1.42 KB
Versions: 21
Compression:
Stored size: 1.42 KB
Contents
# encoding: utf-8 # This file is distributed under New Relic's license terms. # See https://github.com/newrelic/rpm/blob/master/LICENSE for complete details. require 'new_relic/agent/http_clients/abstract_request' module NewRelic module Agent module HTTPClients class NetHTTPRequest < AbstractRequest def initialize(connection, request) @connection = connection @request = request end NET_HTTP = 'Net::HTTP'.freeze def type NET_HTTP end HOST = 'host'.freeze COLON = ':'.freeze def host_from_header if hostname = self[HOST] hostname.split(COLON).first end end def host host_from_header || @connection.address end def method @request.method end def [](key) @request[key] end def []=(key, value) @request[key] = value end def uri case @request.path when /^https?:\/\// ::NewRelic::Agent::HTTPClients::URIUtil.parse_and_normalize_url(@request.path) else scheme = @connection.use_ssl? ? 'https' : 'http' ::NewRelic::Agent::HTTPClients::URIUtil.parse_and_normalize_url( "#{scheme}://#{@connection.address}:#{@connection.port}#{@request.path}" ) end end end end end end
Version data entries
21 entries across 21 versions & 1 rubygems