Index: content/browser/download/download_file_manager.h |
diff --git a/content/browser/download/download_file_manager.h b/content/browser/download/download_file_manager.h |
index db5a7964017ff44f42c4756449d994891e0f48ef..0838e400b8752e0bd56b1fc85afd5e8c76588ff7 100644 |
--- a/content/browser/download/download_file_manager.h |
+++ b/content/browser/download/download_file_manager.h |
@@ -48,6 +48,7 @@ |
#include "base/hash_tables.h" |
#include "base/memory/ref_counted.h" |
#include "base/timer.h" |
+#include "content/browser/download/download_id.h" |
#include "content/browser/download/download_request_handle.h" |
#include "content/common/content_export.h" |
#include "net/base/net_errors.h" |
@@ -75,21 +76,18 @@ class DownloadFileManager |
// Called on shutdown on the UI thread. |
CONTENT_EXPORT void Shutdown(); |
- // Called on the IO or UI threads. |
- int GetNextId(); |
- |
// Called on UI thread to make DownloadFileManager start the download. |
void StartDownload(DownloadCreateInfo* info); |
// Handlers for notifications sent from the IO thread and run on the |
// FILE thread. |
- void UpdateDownload(int id, DownloadBuffer* buffer); |
+ void UpdateDownload(DownloadId global_id, DownloadBuffer* buffer); |
// |net_error| is 0 for normal completions, and non-0 for errors. |
// |security_info| contains SSL information (cert_id, cert_status, |
// security_bits, ssl_connection_status), which can be used to |
// fine-tune the error message. It is empty if the transaction |
// was not performed securely. |
- void OnResponseCompleted(int id, |
+ void OnResponseCompleted(DownloadId global_id, |
DownloadBuffer* buffer, |
net::Error net_error, |
const std::string& security_info); |
@@ -99,22 +97,22 @@ class DownloadFileManager |
// download file, as far as the DownloadFileManager is concerned -- if |
// anything happens to the download file after they are called, it will |
// be ignored. |
- void CancelDownload(int id); |
- void CompleteDownload(int id); |
+ void CancelDownload(DownloadId id); |
+ void CompleteDownload(DownloadId id); |
// Called on FILE thread by DownloadManager at the beginning of its shutdown. |
void OnDownloadManagerShutdown(DownloadManager* manager); |
// The DownloadManager in the UI thread has provided an intermediate |
// .crdownload name for the download specified by |id|. |
- void RenameInProgressDownloadFile(int id, const FilePath& full_path); |
+ void RenameInProgressDownloadFile(DownloadId id, const FilePath& full_path); |
// The DownloadManager in the UI thread has provided a final name for the |
// download specified by |id|. |
// |overwrite_existing_file| prevents uniquification, and is used for SAFE |
// downloads, as the user may have decided to overwrite the file. |
// Sent from the UI thread and run on the FILE thread. |
- void RenameCompletingDownloadFile(int id, |
+ void RenameCompletingDownloadFile(DownloadId id, |
const FilePath& full_path, |
bool overwrite_existing_file); |
@@ -146,21 +144,18 @@ class DownloadFileManager |
bool hash_needed); |
// Called only on the download thread. |
- DownloadFile* GetDownloadFile(int id); |
+ DownloadFile* GetDownloadFile(DownloadId global_id); |
// Called only from RenameInProgressDownloadFile and |
// RenameCompletingDownloadFile on the FILE thread. |
// |rename_error| indicates what error caused the cancel. |
- void CancelDownloadOnRename(int id, net::Error rename_error); |
+ void CancelDownloadOnRename(DownloadId global_id, net::Error rename_error); |
// Erases the download file with the given the download |id| and removes |
// it from the maps. |
- void EraseDownload(int id); |
- |
- // Unique ID for each DownloadItem. |
- base::AtomicSequenceNumber next_id_; |
+ void EraseDownload(DownloadId global_id); |
- typedef base::hash_map<int, DownloadFile*> DownloadFileMap; |
+ typedef base::hash_map<DownloadId, DownloadFile*> DownloadFileMap; |
// A map of all in progress downloads. It owns the download files. |
DownloadFileMap downloads_; |