# 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