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

Unified Diff: content/browser/download/save_package.cc

Issue 1529363006: Introducing SavePackageId and SaveItemId as distinct IdType<...>-based types. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Addressed CR feedback from Daniel. Created 4 years, 11 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/browser/download/save_package.h ('k') | content/browser/download/save_types.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/browser/download/save_package.cc
diff --git a/content/browser/download/save_package.cc b/content/browser/download/save_package.cc
index eae1e0de10871f4c1b23d9793075ac97f262f6f4..fa03381c49865ed38965d991e94da14e32c7f1a9 100644
--- a/content/browser/download/save_package.cc
+++ b/content/browser/download/save_package.cc
@@ -58,8 +58,11 @@ using base::Time;
namespace content {
namespace {
-// A counter for uniquely identifying each save package.
-int g_save_package_id = 0;
+// Generates unique ids for SavePackage::unique_id_ field.
+SavePackageId GetNextSavePackageId() {
+ static int g_save_package_id = 0;
+ return SavePackageId::FromUnsafeValue(g_save_package_id++);
+}
// Default name which will be used when we can not get proper name from
// resource URL.
@@ -162,7 +165,7 @@ SavePackage::SavePackage(WebContents* web_contents,
all_save_items_count_(0),
file_name_set_(&base::FilePath::CompareLessIgnoreCase),
wait_state_(INITIALIZE),
- unique_id_(g_save_package_id++),
+ unique_id_(GetNextSavePackageId()),
wrote_to_completed_file_(false),
wrote_to_failed_file_(false) {
DCHECK(page_url_.is_valid());
@@ -194,7 +197,7 @@ SavePackage::SavePackage(WebContents* web_contents)
all_save_items_count_(0),
file_name_set_(&base::FilePath::CompareLessIgnoreCase),
wait_state_(INITIALIZE),
- unique_id_(g_save_package_id++),
+ unique_id_(GetNextSavePackageId()),
wrote_to_completed_file_(false),
wrote_to_failed_file_(false) {
DCHECK(page_url_.is_valid());
@@ -223,7 +226,7 @@ SavePackage::SavePackage(WebContents* web_contents,
all_save_items_count_(0),
file_name_set_(&base::FilePath::CompareLessIgnoreCase),
wait_state_(INITIALIZE),
- unique_id_(g_save_package_id++),
+ unique_id_(GetNextSavePackageId()),
wrote_to_completed_file_(false),
wrote_to_failed_file_(false) {}
@@ -627,7 +630,7 @@ void SavePackage::StartSave(const SaveFileCreateInfo* info) {
}
}
-SaveItem* SavePackage::LookupSaveItemInProcess(int32_t save_item_id) {
+SaveItem* SavePackage::LookupSaveItemInProcess(SaveItemId save_item_id) {
auto it = in_progress_items_.find(save_item_id);
if (it != in_progress_items_.end()) {
SaveItem* save_item = it->second;
@@ -657,7 +660,7 @@ void SavePackage::PutInProgressItemToSavedMap(SaveItem* save_item) {
}
// Called for updating saving state.
-bool SavePackage::UpdateSaveProgress(int32_t save_item_id,
+bool SavePackage::UpdateSaveProgress(SaveItemId save_item_id,
int64_t size,
bool write_success) {
// Because we might have canceled this saving job before,
@@ -687,9 +690,8 @@ void SavePackage::Stop() {
// When stopping, if it still has some items in in_progress, cancel them.
DCHECK(canceled());
if (in_process_count()) {
- SaveItemIdMap::iterator it = in_progress_items_.begin();
- for (; it != in_progress_items_.end(); ++it) {
- SaveItem* save_item = it->second;
+ for (const auto& it : in_progress_items_) {
+ SaveItem* save_item = it.second;
DCHECK_EQ(SaveItem::IN_PROGRESS, save_item->state());
save_item->Cancel();
}
@@ -702,7 +704,7 @@ void SavePackage::Stop() {
// This vector contains the save ids of the save files which SaveFileManager
// needs to remove from its save_file_map_.
- std::vector<int> save_item_ids;
+ std::vector<SaveItemId> save_item_ids;
for (const auto& it : saved_success_items_)
save_item_ids.push_back(it.first);
for (const auto& it : saved_failed_items_)
@@ -767,7 +769,7 @@ void SavePackage::Finish() {
// This vector contains the save ids of the save files which SaveFileManager
// needs to remove from its save_file_map_.
- std::vector<int> list_of_failed_save_item_ids;
+ std::vector<SaveItemId> list_of_failed_save_item_ids;
for (const auto& it : saved_failed_items_) {
SaveItem* save_item = it.second;
DCHECK_EQ(it.first, save_item->id());
@@ -796,7 +798,7 @@ void SavePackage::Finish() {
}
// Called for updating end state.
-void SavePackage::SaveFinished(int32_t save_item_id,
+void SavePackage::SaveFinished(SaveItemId save_item_id,
int64_t size,
bool is_success) {
// Because we might have canceled this saving job before,
@@ -1044,9 +1046,8 @@ void SavePackage::OnSerializedHtmlWithLocalLinksResponse(
SaveItem* save_item = it->second;
DCHECK_EQ(SaveFileCreateInfo::SAVE_FILE_FROM_DOM, save_item->save_source());
if (save_item->state() != SaveItem::IN_PROGRESS) {
- for (SavedItemMap::iterator saved_it = saved_success_items_.begin();
- saved_it != saved_success_items_.end(); ++saved_it) {
- if (saved_it->second->url() == save_item->url()) {
+ for (const auto& saved_it : saved_success_items_) {
+ if (saved_it.second->url() == save_item->url()) {
wrote_to_completed_file_ = true;
break;
}
« no previous file with comments | « content/browser/download/save_package.h ('k') | content/browser/download/save_types.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698