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

Side by Side Diff: webkit/quota/usage_tracker.cc

Issue 14307012: webkit: Remove use of ALLOW_THIS_IN_INITIALIZER_LIST. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 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 | Annotate | Revision Log
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 #include "webkit/quota/usage_tracker.h" 5 #include "webkit/quota/usage_tracker.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <deque> 8 #include <deque>
9 #include <set> 9 #include <set>
10 #include <string> 10 #include <string>
(...skipping 18 matching lines...) Expand all
29 // origins. This class is self-destructed. 29 // origins. This class is self-destructed.
30 class ClientUsageTracker::GatherUsageTaskBase : public QuotaTask { 30 class ClientUsageTracker::GatherUsageTaskBase : public QuotaTask {
31 public: 31 public:
32 GatherUsageTaskBase( 32 GatherUsageTaskBase(
33 UsageTracker* tracker, 33 UsageTracker* tracker,
34 QuotaClient* client) 34 QuotaClient* client)
35 : QuotaTask(tracker), 35 : QuotaTask(tracker),
36 client_(client), 36 client_(client),
37 tracker_(tracker), 37 tracker_(tracker),
38 current_gathered_usage_(0), 38 current_gathered_usage_(0),
39 weak_factory_(ALLOW_THIS_IN_INITIALIZER_LIST(this)) { 39 weak_factory_(this) {
40 DCHECK(tracker_); 40 DCHECK(tracker_);
41 DCHECK(client_); 41 DCHECK(client_);
42 client_tracker_ = base::AsWeakPtr( 42 client_tracker_ = base::AsWeakPtr(
43 tracker_->GetClientTracker(client_->id())); 43 tracker_->GetClientTracker(client_->id()));
44 DCHECK(client_tracker_.get()); 44 DCHECK(client_tracker_.get());
45 } 45 }
46 virtual ~GatherUsageTaskBase() {} 46 virtual ~GatherUsageTaskBase() {}
47 47
48 // Get total usage for the given |origins|. 48 // Get total usage for the given |origins|.
49 void GetUsageForOrigins(const std::set<GURL>& origins, StorageType type) { 49 void GetUsageForOrigins(const std::set<GURL>& origins, StorageType type) {
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
146 // type. This class is self-destructed. 146 // type. This class is self-destructed.
147 class ClientUsageTracker::GatherGlobalUsageTask 147 class ClientUsageTracker::GatherGlobalUsageTask
148 : public GatherUsageTaskBase { 148 : public GatherUsageTaskBase {
149 public: 149 public:
150 GatherGlobalUsageTask( 150 GatherGlobalUsageTask(
151 UsageTracker* tracker, 151 UsageTracker* tracker,
152 QuotaClient* client) 152 QuotaClient* client)
153 : GatherUsageTaskBase(tracker, client), 153 : GatherUsageTaskBase(tracker, client),
154 client_(client), 154 client_(client),
155 non_cached_global_usage_(0), 155 non_cached_global_usage_(0),
156 weak_factory_(ALLOW_THIS_IN_INITIALIZER_LIST(this)) { 156 weak_factory_(this) {
157 DCHECK(tracker); 157 DCHECK(tracker);
158 DCHECK(client); 158 DCHECK(client);
159 } 159 }
160 virtual ~GatherGlobalUsageTask() {} 160 virtual ~GatherGlobalUsageTask() {}
161 161
162 protected: 162 protected:
163 virtual void Run() OVERRIDE { 163 virtual void Run() OVERRIDE {
164 client_->GetOriginsForType(tracker()->type(), 164 client_->GetOriginsForType(tracker()->type(),
165 base::Bind(&GatherUsageTaskBase::GetUsageForOrigins, 165 base::Bind(&GatherUsageTaskBase::GetUsageForOrigins,
166 weak_factory_.GetWeakPtr())); 166 weak_factory_.GetWeakPtr()));
(...skipping 27 matching lines...) Expand all
194 class ClientUsageTracker::GatherHostUsageTask 194 class ClientUsageTracker::GatherHostUsageTask
195 : public GatherUsageTaskBase { 195 : public GatherUsageTaskBase {
196 public: 196 public:
197 GatherHostUsageTask( 197 GatherHostUsageTask(
198 UsageTracker* tracker, 198 UsageTracker* tracker,
199 QuotaClient* client, 199 QuotaClient* client,
200 const std::string& host) 200 const std::string& host)
201 : GatherUsageTaskBase(tracker, client), 201 : GatherUsageTaskBase(tracker, client),
202 client_(client), 202 client_(client),
203 host_(host), 203 host_(host),
204 weak_factory_(ALLOW_THIS_IN_INITIALIZER_LIST(this)) { 204 weak_factory_(this) {
205 DCHECK(client_); 205 DCHECK(client_);
206 } 206 }
207 virtual ~GatherHostUsageTask() {} 207 virtual ~GatherHostUsageTask() {}
208 208
209 protected: 209 protected:
210 virtual void Run() OVERRIDE { 210 virtual void Run() OVERRIDE {
211 client_->GetOriginsForHost(tracker()->type(), host_, 211 client_->GetOriginsForHost(tracker()->type(), host_,
212 base::Bind(&GatherUsageTaskBase::GetUsageForOrigins, 212 base::Bind(&GatherUsageTaskBase::GetUsageForOrigins,
213 weak_factory_.GetWeakPtr())); 213 weak_factory_.GetWeakPtr()));
214 } 214 }
215 215
216 virtual void Completed() OVERRIDE { 216 virtual void Completed() OVERRIDE {
217 client_tracker()->GatherHostUsageComplete(host_, current_gathered_usage()); 217 client_tracker()->GatherHostUsageComplete(host_, current_gathered_usage());
218 } 218 }
219 219
220 private: 220 private:
221 QuotaClient* client_; 221 QuotaClient* client_;
222 std::string host_; 222 std::string host_;
223 base::WeakPtrFactory<GatherUsageTaskBase> weak_factory_; 223 base::WeakPtrFactory<GatherUsageTaskBase> weak_factory_;
224 224
225 DISALLOW_COPY_AND_ASSIGN(GatherHostUsageTask); 225 DISALLOW_COPY_AND_ASSIGN(GatherHostUsageTask);
226 }; 226 };
227 227
228 // UsageTracker ---------------------------------------------------------- 228 // UsageTracker ----------------------------------------------------------
229 229
230 UsageTracker::UsageTracker(const QuotaClientList& clients, StorageType type, 230 UsageTracker::UsageTracker(const QuotaClientList& clients, StorageType type,
231 SpecialStoragePolicy* special_storage_policy) 231 SpecialStoragePolicy* special_storage_policy)
232 : type_(type), 232 : type_(type),
233 weak_factory_(ALLOW_THIS_IN_INITIALIZER_LIST(this)) { 233 weak_factory_(this) {
234 for (QuotaClientList::const_iterator iter = clients.begin(); 234 for (QuotaClientList::const_iterator iter = clients.begin();
235 iter != clients.end(); 235 iter != clients.end();
236 ++iter) { 236 ++iter) {
237 client_tracker_map_.insert(std::make_pair( 237 client_tracker_map_.insert(std::make_pair(
238 (*iter)->id(), 238 (*iter)->id(),
239 new ClientUsageTracker(this, *iter, type, special_storage_policy))); 239 new ClientUsageTracker(this, *iter, type, special_storage_policy)));
240 } 240 }
241 } 241 }
242 242
243 UsageTracker::~UsageTracker() { 243 UsageTracker::~UsageTracker() {
(...skipping 403 matching lines...) Expand 10 before | Expand all | Expand 10 after
647 void ClientUsageTracker::NoopHostUsageCallback(int64 usage) {} 647 void ClientUsageTracker::NoopHostUsageCallback(int64 usage) {}
648 648
649 bool ClientUsageTracker::IsStorageUnlimited(const GURL& origin) const { 649 bool ClientUsageTracker::IsStorageUnlimited(const GURL& origin) const {
650 if (type_ == kStorageTypeSyncable) 650 if (type_ == kStorageTypeSyncable)
651 return false; 651 return false;
652 return special_storage_policy_.get() && 652 return special_storage_policy_.get() &&
653 special_storage_policy_->IsStorageUnlimited(origin); 653 special_storage_policy_->IsStorageUnlimited(origin);
654 } 654 }
655 655
656 } // namespace quota 656 } // namespace quota
OLDNEW
« no previous file with comments | « webkit/quota/quota_temporary_storage_evictor_unittest.cc ('k') | webkit/tools/test_shell/simple_appcache_system.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698