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

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

Issue 7003021: Added DeleteOriginData to QuotaClient (Closed)
Patch Set: Add tests Created 9 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
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/mock_storage_client.h" 5 #include "webkit/quota/mock_storage_client.h"
6 6
7 #include "base/atomic_sequence_num.h" 7 #include "base/atomic_sequence_num.h"
8 #include "base/basictypes.h" 8 #include "base/basictypes.h"
9 #include "base/memory/singleton.h" 9 #include "base/memory/singleton.h"
10 #include "base/message_loop_proxy.h" 10 #include "base/message_loop_proxy.h"
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
43 MockStorageClient::MockStorageClient(QuotaManagerProxy* quota_manager_proxy) 43 MockStorageClient::MockStorageClient(QuotaManagerProxy* quota_manager_proxy)
44 : quota_manager_proxy_(quota_manager_proxy), 44 : quota_manager_proxy_(quota_manager_proxy),
45 id_(MockStorageClientIDSequencer::GetInstance()->NextMockID()), 45 id_(MockStorageClientIDSequencer::GetInstance()->NextMockID()),
46 runnable_factory_(ALLOW_THIS_IN_INITIALIZER_LIST(this)) { 46 runnable_factory_(ALLOW_THIS_IN_INITIALIZER_LIST(this)) {
47 } 47 }
48 48
49 MockStorageClient::~MockStorageClient() { 49 MockStorageClient::~MockStorageClient() {
50 STLDeleteContainerPointers(usage_callbacks_.begin(), usage_callbacks_.end()); 50 STLDeleteContainerPointers(usage_callbacks_.begin(), usage_callbacks_.end());
51 STLDeleteContainerPointers( 51 STLDeleteContainerPointers(
52 origins_callbacks_.begin(), origins_callbacks_.end()); 52 origins_callbacks_.begin(), origins_callbacks_.end());
53 STLDeleteContainerPointers(
54 deletion_callbacks_.begin(), deletion_callbacks_.end());
53 } 55 }
54 56
55 void MockStorageClient::AddMockOriginData( 57 void MockStorageClient::AddMockOriginData(
56 const GURL& origin_url, StorageType type, int64 size) { 58 const GURL& origin_url, StorageType type, int64 size) {
57 origin_data_.insert(std::make_pair(origin_url, MockOriginData(type, size))); 59 origin_data_.insert(std::make_pair(origin_url, MockOriginData(type, size)));
58 } 60 }
59 61
60 void MockStorageClient::ModifyMockOriginDataSize( 62 void MockStorageClient::ModifyMockOriginDataSize(
61 const GURL& origin_url, StorageType type, int64 delta) { 63 const GURL& origin_url, StorageType type, int64 delta) {
62 std::map<GURL, MockOriginData>::iterator find = origin_data_.find(origin_url); 64 std::map<GURL, MockOriginData>::iterator find = origin_data_.find(origin_url);
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
98 void MockStorageClient::GetOriginsForHost( 100 void MockStorageClient::GetOriginsForHost(
99 StorageType type, const std::string& host, 101 StorageType type, const std::string& host,
100 GetOriginsCallback* callback) { 102 GetOriginsCallback* callback) {
101 origins_callbacks_.insert(callback); 103 origins_callbacks_.insert(callback);
102 base::MessageLoopProxy::CreateForCurrentThread()->PostTask( 104 base::MessageLoopProxy::CreateForCurrentThread()->PostTask(
103 FROM_HERE, runnable_factory_.NewRunnableMethod( 105 FROM_HERE, runnable_factory_.NewRunnableMethod(
104 &MockStorageClient::RunGetOriginsForHost, 106 &MockStorageClient::RunGetOriginsForHost,
105 type, host, callback)); 107 type, host, callback));
106 } 108 }
107 109
110 void MockStorageClient::DeleteOriginData(
111 const GURL& origin, StorageType type,
112 DeletionCallback* callback) {
113 deletion_callbacks_.insert(callback);
114 base::MessageLoopProxy::CreateForCurrentThread()->PostTask(
115 FROM_HERE, runnable_factory_.NewRunnableMethod(
116 &MockStorageClient::RunDeleteOriginData,
117 callback));
118 }
119
108 void MockStorageClient::RunGetOriginUsage( 120 void MockStorageClient::RunGetOriginUsage(
109 const GURL& origin_url, StorageType type, GetUsageCallback* callback_ptr) { 121 const GURL& origin_url, StorageType type, GetUsageCallback* callback_ptr) {
110 usage_callbacks_.erase(callback_ptr); 122 usage_callbacks_.erase(callback_ptr);
111 scoped_ptr<GetUsageCallback> callback(callback_ptr); 123 scoped_ptr<GetUsageCallback> callback(callback_ptr);
112 std::map<GURL, MockOriginData>::iterator find = origin_data_.find(origin_url); 124 std::map<GURL, MockOriginData>::iterator find = origin_data_.find(origin_url);
113 if (find == origin_data_.end()) { 125 if (find == origin_data_.end()) {
114 callback->Run(0); 126 callback->Run(0);
115 } else { 127 } else {
116 callback->Run(find->second.usage); 128 callback->Run(find->second.usage);
117 } 129 }
(...skipping 20 matching lines...) Expand all
138 std::set<GURL> origins; 150 std::set<GURL> origins;
139 for (std::map<GURL, MockOriginData>::iterator iter = origin_data_.begin(); 151 for (std::map<GURL, MockOriginData>::iterator iter = origin_data_.begin();
140 iter != origin_data_.end(); ++iter) { 152 iter != origin_data_.end(); ++iter) {
141 std::string host_or_spec = net::GetHostOrSpecFromURL(iter->first); 153 std::string host_or_spec = net::GetHostOrSpecFromURL(iter->first);
142 if (type == iter->second.type && host == host_or_spec) 154 if (type == iter->second.type && host == host_or_spec)
143 origins.insert(iter->first); 155 origins.insert(iter->first);
144 } 156 }
145 callback->Run(origins); 157 callback->Run(origins);
146 } 158 }
147 159
160 void MockStorageClient::RunDeleteOriginData(
161 DeletionCallback* callback_ptr) {
tzik (google) 2011/05/13 14:22:24 Something to be done here
162 scoped_ptr<DeletionCallback> callback(callback_ptr);
163 deletion_callbacks_.erase(callback_ptr);
164 callback->Run(kQuotaStatusOk);
165 }
166
148 } // namespace quota 167 } // namespace quota
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698