1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #include "content/browser/download/download_file_factory.h" 6 7 #include "content/browser/download/download_file_impl.h" 8 #include "content/public/browser/power_save_blocker.h" 9 10 namespace content { 11 12 DownloadFileFactory::~DownloadFileFactory() {} 13 14 DownloadFile* DownloadFileFactory::CreateFile( 15 scoped_ptr<DownloadSaveInfo> save_info, 16 const base::FilePath& default_downloads_directory, 17 const GURL& url, 18 const GURL& referrer_url, 19 bool calculate_hash, 20 scoped_ptr<ByteStreamReader> stream, 21 const net::BoundNetLog& bound_net_log, 22 base::WeakPtr<DownloadDestinationObserver> observer) { 23 scoped_ptr<PowerSaveBlocker> psb( 24 PowerSaveBlocker::Create( 25 PowerSaveBlocker::kPowerSaveBlockPreventAppSuspension, 26 "Download in progress")); 27 return new DownloadFileImpl( 28 save_info.Pass(), default_downloads_directory, url, referrer_url, 29 calculate_hash, stream.Pass(), bound_net_log, 30 psb.Pass(), observer); 31 } 32 33 } // namespace content 34