lib/cfoundry/rest_client.rb in cfoundry-0.5.3.rc7 vs lib/cfoundry/rest_client.rb in cfoundry-0.6.0.rc1
- old
+ new
@@ -22,11 +22,11 @@
:follow_redirects => true
}
attr_reader :target
- attr_accessor :trace, :backtrace, :log, :request_id, :token, :target, :proxy, :http_proxy, :https_proxy
+ attr_accessor :trace, :backtrace, :log, :request_id, :token, :target, :proxy
def initialize(target, token = nil)
@target = target
@token = token
@trace = false
@@ -113,15 +113,21 @@
print_request(request_hash) if @trace
add_headers(request, headers)
- http = create_http(uri)
+ # TODO: test http proxies
+ http = Net::HTTP.new(uri.host, uri.port)
# TODO remove this when staging returns streaming responses
http.read_timeout = 300
+ if uri.is_a?(URI::HTTPS)
+ http.use_ssl = true
+ http.verify_mode = OpenSSL::SSL::VERIFY_NONE
+ end
+
before = Time.now
http.start do
response = http.request(request)
time = Time.now - before
@@ -146,30 +152,9 @@
raise Timeout.new(method, uri, e)
rescue SocketError, Errno::ECONNREFUSED => e
raise TargetRefused, e.message
rescue URI::InvalidURIError
raise InvalidTarget.new(@target)
- end
-
- def create_http(uri)
- if (uri.instance_of?(URI::HTTP) && http_proxy) || (uri.instance_of?(URI::HTTPS) && https_proxy)
- if uri.instance_of?(URI::HTTP)
- http_proxy_uri = URI.parse(http_proxy)
- else
- http_proxy_uri = URI.parse(https_proxy)
- end
- http_proxy_user, http_proxy_pass = http_proxy_uri.userinfo.split(/:/) if http_proxy_uri.userinfo
- http = Net::HTTP::Proxy(http_proxy_uri.host, http_proxy_uri.port, http_proxy_user, http_proxy_pass).new(uri.host, uri.port)
- else
- http = Net::HTTP.new(uri.host, uri.port)
- end
-
- if uri.is_a?(URI::HTTPS)
- http.use_ssl = true
- http.verify_mode = OpenSSL::SSL::VERIFY_NONE
- end
-
- return http
end
def construct_url(path)
uri = URI.parse(path)
return path if uri.scheme