class Gem::Resolver::ActivationRequest

def download(path)

def download(path)
  Gem.ensure_gem_subdirectories path
  if @spec.respond_to? :sources
    exception = nil
    path = @spec.sources.find do |source|
      source.download full_spec, path
    rescue exception
    end
    return path      if path
    raise  exception if exception
  elsif @spec.respond_to? :source
    source = @spec.source
    source.download full_spec, path
  else
    source = Gem.sources.first
    source.download full_spec, path
  end
end