• 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 "android_webview/browser/aw_download_manager_delegate.h"
6 
7 #include "base/files/file_path.h"
8 #include "content/public/browser/download_danger_type.h"
9 #include "content/public/browser/download_item.h"
10 
11 
12 namespace android_webview {
13 
~AwDownloadManagerDelegate()14 AwDownloadManagerDelegate::~AwDownloadManagerDelegate() {}
15 
DetermineDownloadTarget(content::DownloadItem * item,const content::DownloadTargetCallback & callback)16 bool AwDownloadManagerDelegate::DetermineDownloadTarget(
17     content::DownloadItem* item,
18     const content::DownloadTargetCallback& callback) {
19   // Note this cancel is independent of the URLRequest cancel in
20   // AwResourceDispatcherHostDelegate::DownloadStarting. The request
21   // could have already finished by the time DownloadStarting is called.
22   callback.Run(base::FilePath() /* Empty file path for cancel */,
23                content::DownloadItem::TARGET_DISPOSITION_OVERWRITE,
24                content::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS,
25                base::FilePath());
26   return true;
27 }
28 
ShouldCompleteDownload(content::DownloadItem * item,const base::Closure & complete_callback)29 bool AwDownloadManagerDelegate::ShouldCompleteDownload(
30     content::DownloadItem* item,
31     const base::Closure& complete_callback) {
32   NOTREACHED();
33   return true;
34 }
35 
ShouldOpenDownload(content::DownloadItem * item,const content::DownloadOpenDelayedCallback & callback)36 bool AwDownloadManagerDelegate::ShouldOpenDownload(
37     content::DownloadItem* item,
38     const content::DownloadOpenDelayedCallback& callback) {
39   NOTREACHED();
40   return true;
41 }
42 
GetNextId(const content::DownloadIdCallback & callback)43 void AwDownloadManagerDelegate::GetNextId(
44     const content::DownloadIdCallback& callback) {
45   static uint32 next_id = content::DownloadItem::kInvalidId + 1;
46   callback.Run(next_id++);
47 }
48 
49 }  // namespace android_webview
50