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

Unified Diff: storage/browser/quota/storage_monitor.cc

Issue 2389583002: Remove stl_util's deletion functions from storage/. (Closed)
Patch Set: nits Created 4 years, 2 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 | « storage/browser/quota/storage_monitor.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: storage/browser/quota/storage_monitor.cc
diff --git a/storage/browser/quota/storage_monitor.cc b/storage/browser/quota/storage_monitor.cc
index 87c982e04b629305507f8b4f15844271003ef0f9..eafa5a6e7f797a800f363f5d2e2d68902336f872 100644
--- a/storage/browser/quota/storage_monitor.cc
+++ b/storage/browser/quota/storage_monitor.cc
@@ -8,7 +8,7 @@
#include <algorithm>
-#include "base/stl_util.h"
+#include "base/memory/ptr_util.h"
#include "base/trace_event/trace_event.h"
#include "net/base/url_util.h"
#include "storage/browser/quota/quota_manager.h"
@@ -247,7 +247,6 @@ StorageTypeObservers::StorageTypeObservers(QuotaManager* quota_manager)
}
StorageTypeObservers::~StorageTypeObservers() {
- base::STLDeleteValues(&host_observers_map_);
}
void StorageTypeObservers::AddObserver(
@@ -256,25 +255,22 @@ void StorageTypeObservers::AddObserver(
if (host.empty())
return;
- HostStorageObservers* host_observers = NULL;
- HostObserversMap::iterator it = host_observers_map_.find(host);
- if (it == host_observers_map_.end()) {
- host_observers = new HostStorageObservers(quota_manager_);
- host_observers_map_[host] = host_observers;
- } else {
- host_observers = it->second;
+ auto& host_observers = host_observers_map_[host];
+ if (!host_observers) {
+ // Because there are no null entries in host_observers_map_, the [] inserted
+ // a blank pointer, so let's populate it.
+ host_observers = base::MakeUnique<HostStorageObservers>(quota_manager_);
}
host_observers->AddObserver(observer, params);
}
void StorageTypeObservers::RemoveObserver(StorageObserver* observer) {
- for (HostObserversMap::iterator it = host_observers_map_.begin();
- it != host_observers_map_.end(); ) {
+ for (auto it = host_observers_map_.begin();
+ it != host_observers_map_.end();) {
it->second->RemoveObserver(observer);
if (!it->second->ContainsObservers()) {
- delete it->second;
- host_observers_map_.erase(it++);
+ it = host_observers_map_.erase(it);
} else {
++it;
}
@@ -284,31 +280,29 @@ void StorageTypeObservers::RemoveObserver(StorageObserver* observer) {
void StorageTypeObservers::RemoveObserverForFilter(
StorageObserver* observer, const StorageObserver::Filter& filter) {
std::string host = net::GetHostOrSpecFromURL(filter.origin);
- HostObserversMap::iterator it = host_observers_map_.find(host);
+ auto it = host_observers_map_.find(host);
if (it == host_observers_map_.end())
return;
it->second->RemoveObserver(observer);
- if (!it->second->ContainsObservers()) {
- delete it->second;
+ if (!it->second->ContainsObservers())
host_observers_map_.erase(it);
- }
}
const HostStorageObservers* StorageTypeObservers::GetHostObservers(
const std::string& host) const {
- HostObserversMap::const_iterator it = host_observers_map_.find(host);
+ auto it = host_observers_map_.find(host);
if (it != host_observers_map_.end())
- return it->second;
+ return it->second.get();
- return NULL;
+ return nullptr;
}
void StorageTypeObservers::NotifyUsageChange(
const StorageObserver::Filter& filter,
int64_t delta) {
std::string host = net::GetHostOrSpecFromURL(filter.origin);
- HostObserversMap::iterator it = host_observers_map_.find(host);
+ auto it = host_observers_map_.find(host);
if (it == host_observers_map_.end())
return;
@@ -323,7 +317,6 @@ StorageMonitor::StorageMonitor(QuotaManager* quota_manager)
}
StorageMonitor::~StorageMonitor() {
- base::STLDeleteValues(&storage_type_observers_map_);
}
void StorageMonitor::AddObserver(
@@ -338,22 +331,16 @@ void StorageMonitor::AddObserver(
return;
}
- StorageTypeObservers* type_observers = NULL;
- StorageTypeObserversMap::iterator it =
- storage_type_observers_map_.find(params.filter.storage_type);
- if (it == storage_type_observers_map_.end()) {
- type_observers = new StorageTypeObservers(quota_manager_);
- storage_type_observers_map_[params.filter.storage_type] = type_observers;
- } else {
- type_observers = it->second;
- }
+ auto& type_observers =
+ storage_type_observers_map_[params.filter.storage_type];
+ if (!type_observers)
+ type_observers = base::MakeUnique<StorageTypeObservers>(quota_manager_);
type_observers->AddObserver(observer, params);
}
void StorageMonitor::RemoveObserver(StorageObserver* observer) {
- for (StorageTypeObserversMap::iterator it =
- storage_type_observers_map_.begin();
+ for (auto it = storage_type_observers_map_.begin();
it != storage_type_observers_map_.end(); ++it) {
it->second->RemoveObserver(observer);
}
@@ -361,8 +348,7 @@ void StorageMonitor::RemoveObserver(StorageObserver* observer) {
void StorageMonitor::RemoveObserverForFilter(
StorageObserver* observer, const StorageObserver::Filter& filter) {
- StorageTypeObserversMap::iterator it =
- storage_type_observers_map_.find(filter.storage_type);
+ auto it = storage_type_observers_map_.find(filter.storage_type);
if (it == storage_type_observers_map_.end())
return;
@@ -371,12 +357,11 @@ void StorageMonitor::RemoveObserverForFilter(
const StorageTypeObservers* StorageMonitor::GetStorageTypeObservers(
StorageType storage_type) const {
- StorageTypeObserversMap::const_iterator it =
- storage_type_observers_map_.find(storage_type);
+ auto it = storage_type_observers_map_.find(storage_type);
if (it != storage_type_observers_map_.end())
- return it->second;
+ return it->second.get();
- return NULL;
+ return nullptr;
}
void StorageMonitor::NotifyUsageChange(const StorageObserver::Filter& filter,
@@ -389,8 +374,7 @@ void StorageMonitor::NotifyUsageChange(const StorageObserver::Filter& filter,
return;
}
- StorageTypeObserversMap::iterator it =
- storage_type_observers_map_.find(filter.storage_type);
+ auto it = storage_type_observers_map_.find(filter.storage_type);
if (it == storage_type_observers_map_.end())
return;
« no previous file with comments | « storage/browser/quota/storage_monitor.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698