Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1684)

Side by Side Diff: content/browser/download/download_manager_impl.cc

Issue 9296012: Hooked up NetLog to DownloadItem, DownloadFile, and FileStream. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Addressed Randy's comments. Created 8 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/download/download_manager_impl.h" 5 #include "content/browser/download/download_manager_impl.h"
6 6
7 #include <iterator> 7 #include <iterator>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/callback.h" 10 #include "base/callback.h"
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
107 base::hash_map<int64, DownloadItem*>::const_iterator iter_; 107 base::hash_map<int64, DownloadItem*>::const_iterator iter_;
108 // Allow copy and assign. 108 // Allow copy and assign.
109 }; 109 };
110 110
111 } // namespace 111 } // namespace
112 112
113 namespace content { 113 namespace content {
114 114
115 // static 115 // static
116 DownloadManager* DownloadManager::Create( 116 DownloadManager* DownloadManager::Create(
117 content::DownloadManagerDelegate* delegate) { 117 content::DownloadManagerDelegate* delegate,
118 return new DownloadManagerImpl(delegate); 118 net::NetLog* net_log) {
119 return new DownloadManagerImpl(delegate, net_log);
119 } 120 }
120 121
121 } // namespace content 122 } // namespace content
122 123
123 DownloadManagerImpl::DownloadManagerImpl( 124 DownloadManagerImpl::DownloadManagerImpl(
124 content::DownloadManagerDelegate* delegate) 125 content::DownloadManagerDelegate* delegate,
126 net::NetLog* net_log)
125 : shutdown_needed_(false), 127 : shutdown_needed_(false),
126 browser_context_(NULL), 128 browser_context_(NULL),
127 file_manager_(NULL), 129 file_manager_(NULL),
128 delegate_(delegate), 130 delegate_(delegate),
129 largest_db_handle_in_history_(DownloadItem::kUninitializedHandle) { 131 largest_db_handle_in_history_(DownloadItem::kUninitializedHandle),
132 net_log_(net_log) {
130 } 133 }
131 134
132 DownloadManagerImpl::~DownloadManagerImpl() { 135 DownloadManagerImpl::~DownloadManagerImpl() {
133 DCHECK(!shutdown_needed_); 136 DCHECK(!shutdown_needed_);
134 } 137 }
135 138
136 DownloadId DownloadManagerImpl::GetNextId() { 139 DownloadId DownloadManagerImpl::GetNextId() {
137 return delegate_->GetNextId(); 140 return delegate_->GetNextId();
138 } 141 }
139 142
(...skipping 249 matching lines...) Expand 10 before | Expand all | Expand 10 after
389 CHECK_96627(!ContainsKey(active_downloads_, download_id)); 392 CHECK_96627(!ContainsKey(active_downloads_, download_id));
390 downloads_.insert(download); 393 downloads_.insert(download);
391 active_downloads_[download_id] = download; 394 active_downloads_[download_id] = download;
392 } 395 }
393 396
394 DownloadItem* DownloadManagerImpl::CreateSavePackageDownloadItem( 397 DownloadItem* DownloadManagerImpl::CreateSavePackageDownloadItem(
395 const FilePath& main_file_path, 398 const FilePath& main_file_path,
396 const GURL& page_url, 399 const GURL& page_url,
397 bool is_otr, 400 bool is_otr,
398 DownloadItem::Observer* observer) { 401 DownloadItem::Observer* observer) {
402 net::BoundNetLog bound_net_log =
403 net::BoundNetLog::Make(GetNetLog(), net::NetLog::SOURCE_DOWNLOAD);
399 DownloadItem* download = new DownloadItemImpl( 404 DownloadItem* download = new DownloadItemImpl(
400 this, main_file_path, page_url, is_otr, GetNextId(), net::BoundNetLog()); 405 this, main_file_path, page_url, is_otr, GetNextId(), bound_net_log);
401 406
402 download->AddObserver(observer); 407 download->AddObserver(observer);
403 408
404 DCHECK(!ContainsKey(save_page_downloads_, download->GetId())); 409 DCHECK(!ContainsKey(save_page_downloads_, download->GetId()));
405 downloads_.insert(download); 410 downloads_.insert(download);
406 save_page_downloads_[download->GetId()] = download; 411 save_page_downloads_[download->GetId()] = download;
407 412
408 // Will notify the observer in the callback. 413 // Will notify the observer in the callback.
409 delegate_->AddItemToPersistentStore(download); 414 delegate_->AddItemToPersistentStore(download);
410 415
(...skipping 482 matching lines...) Expand 10 before | Expand all | Expand 10 after
893 898
894 // The history service has retrieved all download entries. 'entries' contains 899 // The history service has retrieved all download entries. 'entries' contains
895 // 'DownloadPersistentStoreInfo's in sorted order (by ascending start_time). 900 // 'DownloadPersistentStoreInfo's in sorted order (by ascending start_time).
896 void DownloadManagerImpl::OnPersistentStoreQueryComplete( 901 void DownloadManagerImpl::OnPersistentStoreQueryComplete(
897 std::vector<DownloadPersistentStoreInfo>* entries) { 902 std::vector<DownloadPersistentStoreInfo>* entries) {
898 // TODO(rdsmith): Remove this and related logic when 903 // TODO(rdsmith): Remove this and related logic when
899 // http://crbug.com/96627 is fixed. 904 // http://crbug.com/96627 is fixed.
900 largest_db_handle_in_history_ = 0; 905 largest_db_handle_in_history_ = 0;
901 906
902 for (size_t i = 0; i < entries->size(); ++i) { 907 for (size_t i = 0; i < entries->size(); ++i) {
908 net::BoundNetLog bound_net_log =
909 net::BoundNetLog::Make(GetNetLog(), net::NetLog::SOURCE_DOWNLOAD);
903 DownloadItem* download = new DownloadItemImpl( 910 DownloadItem* download = new DownloadItemImpl(
904 this, GetNextId(), entries->at(i), net::BoundNetLog()); 911 this, GetNextId(), entries->at(i), bound_net_log);
905 CHECK_96627(!ContainsKey(history_downloads_, download->GetDbHandle())); 912 CHECK_96627(!ContainsKey(history_downloads_, download->GetDbHandle()));
906 downloads_.insert(download); 913 downloads_.insert(download);
907 history_downloads_[download->GetDbHandle()] = download; 914 history_downloads_[download->GetDbHandle()] = download;
908 VLOG(20) << __FUNCTION__ << "()" << i << ">" 915 VLOG(20) << __FUNCTION__ << "()" << i << ">"
909 << " download = " << download->DebugString(true); 916 << " download = " << download->DebugString(true);
910 917
911 if (download->GetDbHandle() > largest_db_handle_in_history_) 918 if (download->GetDbHandle() > largest_db_handle_in_history_)
912 largest_db_handle_in_history_ = download->GetDbHandle(); 919 largest_db_handle_in_history_ = download->GetDbHandle();
913 } 920 }
914 NotifyModelChanged(); 921 NotifyModelChanged();
(...skipping 237 matching lines...) Expand 10 before | Expand all | Expand 10 after
1152 it != history_downloads_.end(); ++it) { 1159 it != history_downloads_.end(); ++it) {
1153 if (it->second->IsComplete() && !it->second->GetOpened()) 1160 if (it->second->IsComplete() && !it->second->GetOpened())
1154 ++num_unopened; 1161 ++num_unopened;
1155 } 1162 }
1156 download_stats::RecordOpensOutstanding(num_unopened); 1163 download_stats::RecordOpensOutstanding(num_unopened);
1157 } 1164 }
1158 1165
1159 void DownloadManagerImpl::SetFileManager(DownloadFileManager* file_manager) { 1166 void DownloadManagerImpl::SetFileManager(DownloadFileManager* file_manager) {
1160 file_manager_ = file_manager; 1167 file_manager_ = file_manager;
1161 } 1168 }
1169
1170 net::NetLog* DownloadManagerImpl::GetNetLog() {
1171 return net_log_;
1172 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698