OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.h" | 5 #include "chrome/browser/browsing_data/chrome_browsing_data_remover_delegate.h" |
6 | 6 |
7 #include <set> | 7 #include <set> |
8 #include <string> | 8 #include <string> |
9 #include <utility> | 9 #include <utility> |
10 | 10 |
(...skipping 217 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
228 | 228 |
229 net::HttpNetworkSession* http_session = context_getter->GetURLRequestContext() | 229 net::HttpNetworkSession* http_session = context_getter->GetURLRequestContext() |
230 ->http_transaction_factory() | 230 ->http_transaction_factory() |
231 ->GetSession(); | 231 ->GetSession(); |
232 DCHECK(http_session); | 232 DCHECK(http_session); |
233 http_session->http_auth_cache()->ClearEntriesAddedWithin(base::Time::Now() - | 233 http_session->http_auth_cache()->ClearEntriesAddedWithin(base::Time::Now() - |
234 delete_begin); | 234 delete_begin); |
235 http_session->CloseAllConnections(); | 235 http_session->CloseAllConnections(); |
236 } | 236 } |
237 | 237 |
| 238 // Returned by ChromeBrowsingDataRemoverDelegate::GetOriginTypeMatcher(). |
| 239 bool DoesOriginMatchEmbedderMask(int origin_type_mask, |
| 240 const GURL& origin, |
| 241 storage::SpecialStoragePolicy* policy) { |
| 242 DCHECK_EQ( |
| 243 0, |
| 244 origin_type_mask & |
| 245 (ChromeBrowsingDataRemoverDelegate::ORIGIN_TYPE_EMBEDDER_BEGIN - 1)) |
| 246 << "|origin_type_mask| can only contain origin types defined in " |
| 247 << "the embedder."; |
| 248 |
| 249 #if BUILDFLAG(ENABLE_EXTENSIONS) |
| 250 // Packaged apps and extensions match iff EXTENSION. |
| 251 if ((origin.GetOrigin().scheme() == extensions::kExtensionScheme) && |
| 252 (origin_type_mask & |
| 253 ChromeBrowsingDataRemoverDelegate::ORIGIN_TYPE_EXTENSION)) { |
| 254 return true; |
| 255 } |
| 256 origin_type_mask &= ~ChromeBrowsingDataRemoverDelegate::ORIGIN_TYPE_EXTENSION; |
| 257 #endif |
| 258 |
| 259 DCHECK(!origin_type_mask) |
| 260 << "DoesOriginMatchEmbedderMask must handle all origin types."; |
| 261 |
| 262 return false; |
| 263 } |
| 264 |
238 } // namespace | 265 } // namespace |
239 | 266 |
240 ChromeBrowsingDataRemoverDelegate::SubTask::SubTask( | 267 ChromeBrowsingDataRemoverDelegate::SubTask::SubTask( |
241 const base::Closure& forward_callback) | 268 const base::Closure& forward_callback) |
242 : is_pending_(false), | 269 : is_pending_(false), |
243 forward_callback_(forward_callback), | 270 forward_callback_(forward_callback), |
244 weak_ptr_factory_(this) { | 271 weak_ptr_factory_(this) { |
245 DCHECK(!forward_callback_.is_null()); | 272 DCHECK(!forward_callback_.is_null()); |
246 } | 273 } |
247 | 274 |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
304 #if defined(OS_ANDROID) | 331 #if defined(OS_ANDROID) |
305 webapp_registry_(new WebappRegistry()), | 332 webapp_registry_(new WebappRegistry()), |
306 #endif | 333 #endif |
307 weak_ptr_factory_(this) {} | 334 weak_ptr_factory_(this) {} |
308 | 335 |
309 ChromeBrowsingDataRemoverDelegate::~ChromeBrowsingDataRemoverDelegate() { | 336 ChromeBrowsingDataRemoverDelegate::~ChromeBrowsingDataRemoverDelegate() { |
310 history_task_tracker_.TryCancelAll(); | 337 history_task_tracker_.TryCancelAll(); |
311 template_url_sub_.reset(); | 338 template_url_sub_.reset(); |
312 } | 339 } |
313 | 340 |
314 bool ChromeBrowsingDataRemoverDelegate::DoesOriginMatchEmbedderMask( | 341 BrowsingDataRemoverDelegate::EmbedderOriginTypeMatcher |
315 int origin_type_mask, | 342 ChromeBrowsingDataRemoverDelegate::GetOriginTypeMatcher() const { |
316 const GURL& origin, | 343 return base::Bind(DoesOriginMatchEmbedderMask); |
317 storage::SpecialStoragePolicy* policy) const { | |
318 DCHECK_EQ(0, origin_type_mask & (ORIGIN_TYPE_EMBEDDER_BEGIN - 1)) | |
319 << "|origin_type_mask| can only contain origin types defined in " | |
320 << "the embedder."; | |
321 | |
322 #if BUILDFLAG(ENABLE_EXTENSIONS) | |
323 // Packaged apps and extensions match iff EXTENSION. | |
324 if ((origin.GetOrigin().scheme() == extensions::kExtensionScheme) && | |
325 (origin_type_mask & ORIGIN_TYPE_EXTENSION)) { | |
326 return true; | |
327 } | |
328 origin_type_mask &= ~ORIGIN_TYPE_EXTENSION; | |
329 #endif | |
330 | |
331 DCHECK(!origin_type_mask) | |
332 << "DoesOriginMatchEmbedderMask must handle all origin types."; | |
333 | |
334 return false; | |
335 } | 344 } |
336 | 345 |
337 void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData( | 346 void ChromeBrowsingDataRemoverDelegate::RemoveEmbedderData( |
338 const base::Time& delete_begin, | 347 const base::Time& delete_begin, |
339 const base::Time& delete_end, | 348 const base::Time& delete_end, |
340 int remove_mask, | 349 int remove_mask, |
341 const BrowsingDataFilterBuilder& filter_builder, | 350 const BrowsingDataFilterBuilder& filter_builder, |
342 int origin_type_mask, | 351 int origin_type_mask, |
343 const base::Closure& callback) { | 352 const base::Closure& callback) { |
344 DCHECK(((remove_mask & ~FILTERABLE_DATA_TYPES) == 0) || | 353 DCHECK(((remove_mask & ~FILTERABLE_DATA_TYPES) == 0) || |
(...skipping 777 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1122 } | 1131 } |
1123 | 1132 |
1124 void ChromeBrowsingDataRemoverDelegate:: | 1133 void ChromeBrowsingDataRemoverDelegate:: |
1125 OnDeauthorizeFlashContentLicensesCompleted( | 1134 OnDeauthorizeFlashContentLicensesCompleted( |
1126 uint32_t request_id, | 1135 uint32_t request_id, |
1127 bool /* success */) { | 1136 bool /* success */) { |
1128 DCHECK_EQ(request_id, deauthorize_flash_content_licenses_request_id_); | 1137 DCHECK_EQ(request_id, deauthorize_flash_content_licenses_request_id_); |
1129 clear_flash_content_licenses_.GetCompletionCallback().Run(); | 1138 clear_flash_content_licenses_.GetCompletionCallback().Run(); |
1130 } | 1139 } |
1131 #endif | 1140 #endif |
OLD | NEW |