class RedHatSupportLib::Network::HttpRequest

This HACK class allows us to set proxy on per connection basis when using RestClient libraries 1.6.x and below THINGS MAY BREAK when we upgrade RestClient.….

Public Class Methods

execute(args, & block) click to toggle source
# File lib/network/http_request.rb, line 19
def self.execute(args, & block)
  new(args).execute(& block)
end
new(args={}) click to toggle source
Calls superclass method
# File lib/network/http_request.rb, line 12
def initialize (args={})
  if args[:proxy]
    @proxy = args[:proxy]
  end
  super(args)
end

Public Instance Methods

net_http_class() click to toggle source
# File lib/network/http_request.rb, line 42
def net_http_class
  p = proxy_uri
  if p
    host = URI.decode(p.hostname) if p.hostname
    user = URI.decode(p.user) if p.user
    password = URI.decode(p.password) if p.password
    Net::HTTP::Proxy(host,p.port, user, password)
  else
    Net::HTTP
  end
end
proxy_uri() click to toggle source

The proxy URI for this request. If `:proxy` was provided on this request, use it over `RestClient.proxy`.

@return [URI, nil]

# File lib/network/http_request.rb, line 28
def proxy_uri
  if defined?(@proxy)
    if @proxy
      URI.parse(@proxy)
    else
      nil
    end
  elsif RestClient.proxy
    URI.parse(RestClient.proxy)
  else
    nil
  end
end