Commit bc7fb3ba authored by Victor Costan's avatar Victor Costan Committed by Commit Bot

Quota: Implement TODO in quota_client.h.

This CL switches the QuotaClientList type alias from
std::list<QuotaClient*> to std::vector and inlines its use.

Change-Id: I2164807c15c6aa9befdf104814b5f9d3a677b717
Reviewed-on: https://chromium-review.googlesource.com/c/1266883
Commit-Queue: Victor Costan <pwnall@chromium.org>
Reviewed-by: default avatarMarijn Kruisselbrink <mek@chromium.org>
Cr-Commit-Position: refs/heads/master@{#597629}
parent 8fb52d77
......@@ -7,7 +7,6 @@
#include <stdint.h>
#include <list>
#include <set>
#include <string>
......@@ -79,9 +78,6 @@ class STORAGE_EXPORT QuotaClient {
virtual bool DoesSupport(blink::mojom::StorageType type) const = 0;
};
// TODO(dmikurube): Replace it to std::vector for efficiency.
using QuotaClientList = std::list<QuotaClient*>;
} // namespace storage
#endif // STORAGE_BROWSER_QUOTA_QUOTA_CLIENT_H_
......@@ -449,7 +449,7 @@ class STORAGE_EXPORT QuotaManager
GetOriginCallback lru_origin_callback_;
std::set<url::Origin> access_notified_origins_;
QuotaClientList clients_;
std::vector<QuotaClient*> clients_;
std::unique_ptr<UsageTracker> temporary_usage_tracker_;
std::unique_ptr<UsageTracker> persistent_usage_tracker_;
......
......@@ -37,7 +37,7 @@ void StripUsageWithBreakdownCallback(
} // namespace
UsageTracker::UsageTracker(const QuotaClientList& clients,
UsageTracker::UsageTracker(const std::vector<QuotaClient*>& clients,
blink::mojom::StorageType type,
SpecialStoragePolicy* special_storage_policy,
StorageMonitor* storage_monitor)
......
......@@ -11,6 +11,7 @@
#include <memory>
#include <set>
#include <string>
#include <vector>
#include "base/callback.h"
#include "base/containers/flat_map.h"
......@@ -33,7 +34,7 @@ class StorageMonitor;
// An instance of this class is created per storage type.
class STORAGE_EXPORT UsageTracker : public QuotaTaskObserver {
public:
UsageTracker(const QuotaClientList& clients,
UsageTracker(const std::vector<QuotaClient*>& clients,
blink::mojom::StorageType type,
SpecialStoragePolicy* special_storage_policy,
StorageMonitor* storage_monitor);
......
......@@ -4,6 +4,8 @@
#include <stdint.h>
#include <vector>
#include "base/bind.h"
#include "base/location.h"
#include "base/macros.h"
......@@ -19,7 +21,6 @@
using blink::mojom::QuotaStatusCode;
using blink::mojom::StorageType;
using storage::QuotaClient;
using storage::QuotaClientList;
using storage::SpecialStoragePolicy;
using storage::UsageTracker;
......@@ -221,8 +222,8 @@ class UsageTrackerTest : public testing::Test {
}
private:
QuotaClientList GetUsageTrackerList() {
QuotaClientList client_list;
std::vector<QuotaClient*> GetUsageTrackerList() {
std::vector<QuotaClient*> client_list;
client_list.push_back(&quota_client_);
return client_list;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment