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

Side by Side Diff: content/public/browser/download_manager.h

Issue 2880933002: Download driver for components/download. (Closed)
Patch Set: Polish comment. Created 3 years, 7 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
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 // The DownloadManager object manages the process of downloading, including 5 // The DownloadManager object manages the process of downloading, including
6 // updates to the history system and providing the information for displaying 6 // updates to the history system and providing the information for displaying
7 // the downloads view in the Destinations tab. There is one DownloadManager per 7 // the downloads view in the Destinations tab. There is one DownloadManager per
8 // active browser context in Chrome. 8 // active browser context in Chrome.
9 // 9 //
10 // Download observers: 10 // Download observers:
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
77 // doing large amounts of work in OnDownloadCreated(). TODO(<whoever>): 77 // doing large amounts of work in OnDownloadCreated(). TODO(<whoever>):
78 // When we've fully specified the possible states of the DownloadItem in 78 // When we've fully specified the possible states of the DownloadItem in
79 // download_item.h, we should remove the caveat above. 79 // download_item.h, we should remove the caveat above.
80 virtual void OnDownloadCreated( 80 virtual void OnDownloadCreated(
81 DownloadManager* manager, DownloadItem* item) {} 81 DownloadManager* manager, DownloadItem* item) {}
82 82
83 // A SavePackage has successfully finished. 83 // A SavePackage has successfully finished.
84 virtual void OnSavePackageSuccessfullyFinished( 84 virtual void OnSavePackageSuccessfullyFinished(
85 DownloadManager* manager, DownloadItem* item) {} 85 DownloadManager* manager, DownloadItem* item) {}
86 86
87 // Called when the download manager has finished loading the data.
88 virtual void OnManagerInitialized() {}
89
87 // Called when the DownloadManager is being destroyed to prevent Observers 90 // Called when the DownloadManager is being destroyed to prevent Observers
88 // from calling back to a stale pointer. 91 // from calling back to a stale pointer.
89 virtual void ManagerGoingDown(DownloadManager* manager) {} 92 virtual void ManagerGoingDown(DownloadManager* manager) {}
90 93
91 protected: 94 protected:
92 virtual ~Observer() {} 95 virtual ~Observer() {}
93 }; 96 };
94 97
95 typedef std::vector<DownloadItem*> DownloadVector; 98 typedef std::vector<DownloadItem*> DownloadVector;
96 99
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
148 int64_t total_bytes, 151 int64_t total_bytes,
149 const std::string& hash, 152 const std::string& hash,
150 DownloadItem::DownloadState state, 153 DownloadItem::DownloadState state,
151 DownloadDangerType danger_type, 154 DownloadDangerType danger_type,
152 DownloadInterruptReason interrupt_reason, 155 DownloadInterruptReason interrupt_reason,
153 bool opened, 156 bool opened,
154 base::Time last_access_time, 157 base::Time last_access_time,
155 bool transient, 158 bool transient,
156 const std::vector<DownloadItem::ReceivedSlice>& received_slices) = 0; 159 const std::vector<DownloadItem::ReceivedSlice>& received_slices) = 0;
157 160
161 // Called when download manager has loaded all the data.
162 virtual void PostInitialization() = 0;
163
164 // Returns if the manager has been initialized and loaded all the data.
165 virtual bool IsManagerInitialized() const = 0;
166
158 // The number of in progress (including paused) downloads. 167 // The number of in progress (including paused) downloads.
159 // Performance note: this loops over all items. If profiling finds that this 168 // Performance note: this loops over all items. If profiling finds that this
160 // is too slow, use an AllDownloadItemNotifier to count in-progress items. 169 // is too slow, use an AllDownloadItemNotifier to count in-progress items.
161 virtual int InProgressCount() const = 0; 170 virtual int InProgressCount() const = 0;
162 171
163 // The number of in progress (including paused) downloads. 172 // The number of in progress (including paused) downloads.
164 // Performance note: this loops over all items. If profiling finds that this 173 // Performance note: this loops over all items. If profiling finds that this
165 // is too slow, use an AllDownloadItemNotifier to count in-progress items. 174 // is too slow, use an AllDownloadItemNotifier to count in-progress items.
166 // This excludes downloads that are marked as malicious. 175 // This excludes downloads that are marked as malicious.
167 virtual int NonMaliciousInProgressCount() const = 0; 176 virtual int NonMaliciousInProgressCount() const = 0;
(...skipping 12 matching lines...) Expand all
180 // if you need to keep track of a specific download. (http://crbug.com/593020) 189 // if you need to keep track of a specific download. (http://crbug.com/593020)
181 virtual DownloadItem* GetDownload(uint32_t id) = 0; 190 virtual DownloadItem* GetDownload(uint32_t id) = 0;
182 191
183 // Get the download item for |guid|. 192 // Get the download item for |guid|.
184 virtual DownloadItem* GetDownloadByGuid(const std::string& guid) = 0; 193 virtual DownloadItem* GetDownloadByGuid(const std::string& guid) = 0;
185 }; 194 };
186 195
187 } // namespace content 196 } // namespace content
188 197
189 #endif // CONTENT_PUBLIC_BROWSER_DOWNLOAD_MANAGER_H_ 198 #endif // CONTENT_PUBLIC_BROWSER_DOWNLOAD_MANAGER_H_
OLDNEW
« no previous file with comments | « content/browser/download/download_request_core.cc ('k') | content/public/browser/download_url_parameters.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698