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