• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 
~DownloadFileFactory()12 DownloadFileFactory::~DownloadFileFactory() {}
13 
CreateFile(scoped_ptr<DownloadSaveInfo> save_info,const base::FilePath & default_downloads_directory,const GURL & url,const GURL & referrer_url,bool calculate_hash,scoped_ptr<ByteStreamReader> stream,const net::BoundNetLog & bound_net_log,base::WeakPtr<DownloadDestinationObserver> observer)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