OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "content/browser/appcache/appcache_service_impl.h" | 5 #include "content/browser/appcache/appcache_service_impl.h" |
6 | 6 |
7 #include <functional> | 7 #include <functional> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/bind_helpers.h" | 10 #include "base/bind_helpers.h" |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
87 class AppCacheServiceImpl::CanHandleOfflineHelper : AsyncHelper { | 87 class AppCacheServiceImpl::CanHandleOfflineHelper : AsyncHelper { |
88 public: | 88 public: |
89 CanHandleOfflineHelper( | 89 CanHandleOfflineHelper( |
90 AppCacheServiceImpl* service, const GURL& url, | 90 AppCacheServiceImpl* service, const GURL& url, |
91 const GURL& first_party, const net::CompletionCallback& callback) | 91 const GURL& first_party, const net::CompletionCallback& callback) |
92 : AsyncHelper(service, callback), | 92 : AsyncHelper(service, callback), |
93 url_(url), | 93 url_(url), |
94 first_party_(first_party) { | 94 first_party_(first_party) { |
95 } | 95 } |
96 | 96 |
97 virtual void Start() OVERRIDE { | 97 virtual void Start() override { |
98 AppCachePolicy* policy = service_->appcache_policy(); | 98 AppCachePolicy* policy = service_->appcache_policy(); |
99 if (policy && !policy->CanLoadAppCache(url_, first_party_)) { | 99 if (policy && !policy->CanLoadAppCache(url_, first_party_)) { |
100 CallCallback(net::ERR_FAILED); | 100 CallCallback(net::ERR_FAILED); |
101 delete this; | 101 delete this; |
102 return; | 102 return; |
103 } | 103 } |
104 | 104 |
105 service_->storage()->FindResponseForMainRequest(url_, GURL(), this); | 105 service_->storage()->FindResponseForMainRequest(url_, GURL(), this); |
106 } | 106 } |
107 | 107 |
108 private: | 108 private: |
109 // AppCacheStorage::Delegate implementation. | 109 // AppCacheStorage::Delegate implementation. |
110 virtual void OnMainResponseFound( | 110 virtual void OnMainResponseFound( |
111 const GURL& url, const AppCacheEntry& entry, | 111 const GURL& url, const AppCacheEntry& entry, |
112 const GURL& fallback_url, const AppCacheEntry& fallback_entry, | 112 const GURL& fallback_url, const AppCacheEntry& fallback_entry, |
113 int64 cache_id, int64 group_id, const GURL& mainfest_url) OVERRIDE; | 113 int64 cache_id, int64 group_id, const GURL& mainfest_url) override; |
114 | 114 |
115 GURL url_; | 115 GURL url_; |
116 GURL first_party_; | 116 GURL first_party_; |
117 | 117 |
118 DISALLOW_COPY_AND_ASSIGN(CanHandleOfflineHelper); | 118 DISALLOW_COPY_AND_ASSIGN(CanHandleOfflineHelper); |
119 }; | 119 }; |
120 | 120 |
121 void AppCacheServiceImpl::CanHandleOfflineHelper::OnMainResponseFound( | 121 void AppCacheServiceImpl::CanHandleOfflineHelper::OnMainResponseFound( |
122 const GURL& url, const AppCacheEntry& entry, | 122 const GURL& url, const AppCacheEntry& entry, |
123 const GURL& fallback_url, const AppCacheEntry& fallback_entry, | 123 const GURL& fallback_url, const AppCacheEntry& fallback_entry, |
124 int64 cache_id, int64 group_id, const GURL& manifest_url) { | 124 int64 cache_id, int64 group_id, const GURL& manifest_url) { |
125 bool can = (entry.has_response_id() || fallback_entry.has_response_id()); | 125 bool can = (entry.has_response_id() || fallback_entry.has_response_id()); |
126 CallCallback(can ? net::OK : net::ERR_FAILED); | 126 CallCallback(can ? net::OK : net::ERR_FAILED); |
127 delete this; | 127 delete this; |
128 } | 128 } |
129 | 129 |
130 // DeleteHelper ------- | 130 // DeleteHelper ------- |
131 | 131 |
132 class AppCacheServiceImpl::DeleteHelper : public AsyncHelper { | 132 class AppCacheServiceImpl::DeleteHelper : public AsyncHelper { |
133 public: | 133 public: |
134 DeleteHelper( | 134 DeleteHelper( |
135 AppCacheServiceImpl* service, const GURL& manifest_url, | 135 AppCacheServiceImpl* service, const GURL& manifest_url, |
136 const net::CompletionCallback& callback) | 136 const net::CompletionCallback& callback) |
137 : AsyncHelper(service, callback), manifest_url_(manifest_url) { | 137 : AsyncHelper(service, callback), manifest_url_(manifest_url) { |
138 } | 138 } |
139 | 139 |
140 virtual void Start() OVERRIDE { | 140 virtual void Start() override { |
141 service_->storage()->LoadOrCreateGroup(manifest_url_, this); | 141 service_->storage()->LoadOrCreateGroup(manifest_url_, this); |
142 } | 142 } |
143 | 143 |
144 private: | 144 private: |
145 // AppCacheStorage::Delegate implementation. | 145 // AppCacheStorage::Delegate implementation. |
146 virtual void OnGroupLoaded( | 146 virtual void OnGroupLoaded( |
147 AppCacheGroup* group, const GURL& manifest_url) OVERRIDE; | 147 AppCacheGroup* group, const GURL& manifest_url) override; |
148 virtual void OnGroupMadeObsolete(AppCacheGroup* group, | 148 virtual void OnGroupMadeObsolete(AppCacheGroup* group, |
149 bool success, | 149 bool success, |
150 int response_code) OVERRIDE; | 150 int response_code) override; |
151 | 151 |
152 GURL manifest_url_; | 152 GURL manifest_url_; |
153 DISALLOW_COPY_AND_ASSIGN(DeleteHelper); | 153 DISALLOW_COPY_AND_ASSIGN(DeleteHelper); |
154 }; | 154 }; |
155 | 155 |
156 void AppCacheServiceImpl::DeleteHelper::OnGroupLoaded( | 156 void AppCacheServiceImpl::DeleteHelper::OnGroupLoaded( |
157 AppCacheGroup* group, const GURL& manifest_url) { | 157 AppCacheGroup* group, const GURL& manifest_url) { |
158 if (group) { | 158 if (group) { |
159 group->set_being_deleted(true); | 159 group->set_being_deleted(true); |
160 group->CancelUpdate(); | 160 group->CancelUpdate(); |
(...skipping 16 matching lines...) Expand all Loading... |
177 | 177 |
178 class AppCacheServiceImpl::DeleteOriginHelper : public AsyncHelper { | 178 class AppCacheServiceImpl::DeleteOriginHelper : public AsyncHelper { |
179 public: | 179 public: |
180 DeleteOriginHelper( | 180 DeleteOriginHelper( |
181 AppCacheServiceImpl* service, const GURL& origin, | 181 AppCacheServiceImpl* service, const GURL& origin, |
182 const net::CompletionCallback& callback) | 182 const net::CompletionCallback& callback) |
183 : AsyncHelper(service, callback), origin_(origin), | 183 : AsyncHelper(service, callback), origin_(origin), |
184 num_caches_to_delete_(0), successes_(0), failures_(0) { | 184 num_caches_to_delete_(0), successes_(0), failures_(0) { |
185 } | 185 } |
186 | 186 |
187 virtual void Start() OVERRIDE { | 187 virtual void Start() override { |
188 // We start by listing all caches, continues in OnAllInfo(). | 188 // We start by listing all caches, continues in OnAllInfo(). |
189 service_->storage()->GetAllInfo(this); | 189 service_->storage()->GetAllInfo(this); |
190 } | 190 } |
191 | 191 |
192 private: | 192 private: |
193 // AppCacheStorage::Delegate implementation. | 193 // AppCacheStorage::Delegate implementation. |
194 virtual void OnAllInfo(AppCacheInfoCollection* collection) OVERRIDE; | 194 virtual void OnAllInfo(AppCacheInfoCollection* collection) override; |
195 virtual void OnGroupLoaded( | 195 virtual void OnGroupLoaded( |
196 AppCacheGroup* group, const GURL& manifest_url) OVERRIDE; | 196 AppCacheGroup* group, const GURL& manifest_url) override; |
197 virtual void OnGroupMadeObsolete(AppCacheGroup* group, | 197 virtual void OnGroupMadeObsolete(AppCacheGroup* group, |
198 bool success, | 198 bool success, |
199 int response_code) OVERRIDE; | 199 int response_code) override; |
200 | 200 |
201 void CacheCompleted(bool success); | 201 void CacheCompleted(bool success); |
202 | 202 |
203 GURL origin_; | 203 GURL origin_; |
204 int num_caches_to_delete_; | 204 int num_caches_to_delete_; |
205 int successes_; | 205 int successes_; |
206 int failures_; | 206 int failures_; |
207 | 207 |
208 DISALLOW_COPY_AND_ASSIGN(DeleteOriginHelper); | 208 DISALLOW_COPY_AND_ASSIGN(DeleteOriginHelper); |
209 }; | 209 }; |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
271 // GetInfoHelper ------- | 271 // GetInfoHelper ------- |
272 | 272 |
273 class AppCacheServiceImpl::GetInfoHelper : AsyncHelper { | 273 class AppCacheServiceImpl::GetInfoHelper : AsyncHelper { |
274 public: | 274 public: |
275 GetInfoHelper( | 275 GetInfoHelper( |
276 AppCacheServiceImpl* service, AppCacheInfoCollection* collection, | 276 AppCacheServiceImpl* service, AppCacheInfoCollection* collection, |
277 const net::CompletionCallback& callback) | 277 const net::CompletionCallback& callback) |
278 : AsyncHelper(service, callback), collection_(collection) { | 278 : AsyncHelper(service, callback), collection_(collection) { |
279 } | 279 } |
280 | 280 |
281 virtual void Start() OVERRIDE { | 281 virtual void Start() override { |
282 service_->storage()->GetAllInfo(this); | 282 service_->storage()->GetAllInfo(this); |
283 } | 283 } |
284 | 284 |
285 private: | 285 private: |
286 // AppCacheStorage::Delegate implementation. | 286 // AppCacheStorage::Delegate implementation. |
287 virtual void OnAllInfo(AppCacheInfoCollection* collection) OVERRIDE; | 287 virtual void OnAllInfo(AppCacheInfoCollection* collection) override; |
288 | 288 |
289 scoped_refptr<AppCacheInfoCollection> collection_; | 289 scoped_refptr<AppCacheInfoCollection> collection_; |
290 | 290 |
291 DISALLOW_COPY_AND_ASSIGN(GetInfoHelper); | 291 DISALLOW_COPY_AND_ASSIGN(GetInfoHelper); |
292 }; | 292 }; |
293 | 293 |
294 void AppCacheServiceImpl::GetInfoHelper::OnAllInfo( | 294 void AppCacheServiceImpl::GetInfoHelper::OnAllInfo( |
295 AppCacheInfoCollection* collection) { | 295 AppCacheInfoCollection* collection) { |
296 if (collection) | 296 if (collection) |
297 collection->infos_by_origin.swap(collection_->infos_by_origin); | 297 collection->infos_by_origin.swap(collection_->infos_by_origin); |
(...skipping 11 matching lines...) Expand all Loading... |
309 : AsyncHelper(service, net::CompletionCallback()), | 309 : AsyncHelper(service, net::CompletionCallback()), |
310 manifest_url_(manifest_url), | 310 manifest_url_(manifest_url), |
311 cache_id_(cache_id), | 311 cache_id_(cache_id), |
312 response_id_(response_id), | 312 response_id_(response_id), |
313 kIOBufferSize(32 * 1024), | 313 kIOBufferSize(32 * 1024), |
314 expected_total_size_(0), | 314 expected_total_size_(0), |
315 amount_headers_read_(0), | 315 amount_headers_read_(0), |
316 amount_data_read_(0) { | 316 amount_data_read_(0) { |
317 } | 317 } |
318 | 318 |
319 virtual void Start() OVERRIDE { | 319 virtual void Start() override { |
320 service_->storage()->LoadOrCreateGroup(manifest_url_, this); | 320 service_->storage()->LoadOrCreateGroup(manifest_url_, this); |
321 } | 321 } |
322 | 322 |
323 virtual void Cancel() OVERRIDE { | 323 virtual void Cancel() override { |
324 AppCacheHistograms::CountCheckResponseResult( | 324 AppCacheHistograms::CountCheckResponseResult( |
325 AppCacheHistograms::CHECK_CANCELED); | 325 AppCacheHistograms::CHECK_CANCELED); |
326 response_reader_.reset(); | 326 response_reader_.reset(); |
327 AsyncHelper::Cancel(); | 327 AsyncHelper::Cancel(); |
328 } | 328 } |
329 | 329 |
330 private: | 330 private: |
331 virtual void OnGroupLoaded(AppCacheGroup* group, | 331 virtual void OnGroupLoaded(AppCacheGroup* group, |
332 const GURL& manifest_url) OVERRIDE; | 332 const GURL& manifest_url) override; |
333 void OnReadInfoComplete(int result); | 333 void OnReadInfoComplete(int result); |
334 void OnReadDataComplete(int result); | 334 void OnReadDataComplete(int result); |
335 | 335 |
336 // Inputs describing what to check. | 336 // Inputs describing what to check. |
337 GURL manifest_url_; | 337 GURL manifest_url_; |
338 int64 cache_id_; | 338 int64 cache_id_; |
339 int64 response_id_; | 339 int64 response_id_; |
340 | 340 |
341 // Internals used to perform the checks. | 341 // Internals used to perform the checks. |
342 const int kIOBufferSize; | 342 const int kIOBufferSize; |
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
573 backends_.insert( | 573 backends_.insert( |
574 BackendMap::value_type(backend_impl->process_id(), backend_impl)); | 574 BackendMap::value_type(backend_impl->process_id(), backend_impl)); |
575 } | 575 } |
576 | 576 |
577 void AppCacheServiceImpl::UnregisterBackend( | 577 void AppCacheServiceImpl::UnregisterBackend( |
578 AppCacheBackendImpl* backend_impl) { | 578 AppCacheBackendImpl* backend_impl) { |
579 backends_.erase(backend_impl->process_id()); | 579 backends_.erase(backend_impl->process_id()); |
580 } | 580 } |
581 | 581 |
582 } // namespace content | 582 } // namespace content |
OLD | NEW |