# File lib/rubygems/mirror/fetcher.rb, line 27 def handle_response(resp, path) case resp.code.to_i when 304 when 302 fetch resp['location'], path when 200 write_file(resp, path) when 403, 404 warn "#{resp.code} on #{File.basename(path)}" else raise Error, "unexpected response #{resp.inspect}" end # TODO rescue http errors and reraise cleanly end