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

Side by Side Diff: components/signin/core/browser/gaia_cookie_manager_service.cc

Issue 2349823003: Pass a RemovalCause to CookieChangedCallback (Closed)
Patch Set: rebase Created 4 years, 2 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 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 "components/signin/core/browser/gaia_cookie_manager_service.h" 5 #include "components/signin/core/browser/gaia_cookie_manager_service.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <queue> 9 #include <queue>
10 10
(...skipping 375 matching lines...) Expand 10 before | Expand all | Expand 10 after
386 requests_.push_back(GaiaCookieRequest::CreateListAccountsRequest(source)); 386 requests_.push_back(GaiaCookieRequest::CreateListAccountsRequest(source));
387 } 387 }
388 } 388 }
389 389
390 void GaiaCookieManagerService::ForceOnCookieChangedProcessing() { 390 void GaiaCookieManagerService::ForceOnCookieChangedProcessing() {
391 GURL google_url = GaiaUrls::GetInstance()->google_url(); 391 GURL google_url = GaiaUrls::GetInstance()->google_url();
392 std::unique_ptr<net::CanonicalCookie> cookie(net::CanonicalCookie::Create( 392 std::unique_ptr<net::CanonicalCookie> cookie(net::CanonicalCookie::Create(
393 google_url, kGaiaCookieName, std::string(), "." + google_url.host(), 393 google_url, kGaiaCookieName, std::string(), "." + google_url.host(),
394 std::string(), base::Time(), base::Time(), false, false, 394 std::string(), base::Time(), base::Time(), false, false,
395 net::CookieSameSite::DEFAULT_MODE, false, net::COOKIE_PRIORITY_DEFAULT)); 395 net::CookieSameSite::DEFAULT_MODE, false, net::COOKIE_PRIORITY_DEFAULT));
396 OnCookieChanged(*cookie, true); 396 OnCookieChanged(*cookie, net::CookieStore::ChangeCause::UNKNOWN_DELETION);
397 } 397 }
398 398
399 void GaiaCookieManagerService::LogOutAllAccounts(const std::string& source) { 399 void GaiaCookieManagerService::LogOutAllAccounts(const std::string& source) {
400 VLOG(1) << "GaiaCookieManagerService::LogOutAllAccounts"; 400 VLOG(1) << "GaiaCookieManagerService::LogOutAllAccounts";
401 401
402 bool log_out_queued = false; 402 bool log_out_queued = false;
403 if (!requests_.empty()) { 403 if (!requests_.empty()) {
404 // Track requests to keep; all other unstarted requests will be removed. 404 // Track requests to keep; all other unstarted requests will be removed.
405 std::vector<GaiaCookieRequest> requests_to_keep; 405 std::vector<GaiaCookieRequest> requests_to_keep;
406 406
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
462 } 462 }
463 463
464 std::string GaiaCookieManagerService::GetSourceForRequest( 464 std::string GaiaCookieManagerService::GetSourceForRequest(
465 const GaiaCookieManagerService::GaiaCookieRequest& request, 465 const GaiaCookieManagerService::GaiaCookieRequest& request,
466 const std::string& source_default) { 466 const std::string& source_default) {
467 return request.source().empty() ? source_default : request.source(); 467 return request.source().empty() ? source_default : request.source();
468 } 468 }
469 469
470 void GaiaCookieManagerService::OnCookieChanged( 470 void GaiaCookieManagerService::OnCookieChanged(
471 const net::CanonicalCookie& cookie, 471 const net::CanonicalCookie& cookie,
472 bool removed) { 472 net::CookieStore::ChangeCause cause) {
473 DCHECK_EQ(kGaiaCookieName, cookie.Name()); 473 DCHECK_EQ(kGaiaCookieName, cookie.Name());
474 DCHECK(cookie.IsDomainMatch(GaiaUrls::GetInstance()->google_url().host())); 474 DCHECK(cookie.IsDomainMatch(GaiaUrls::GetInstance()->google_url().host()));
475 list_accounts_stale_ = true; 475 list_accounts_stale_ = true;
476 // Ignore changes to the cookie while requests are pending. These changes 476 // Ignore changes to the cookie while requests are pending. These changes
477 // are caused by the service itself as it adds accounts. A side effects is 477 // are caused by the service itself as it adds accounts. A side effects is
478 // that any changes to the gaia cookie outside of this class, while requests 478 // that any changes to the gaia cookie outside of this class, while requests
479 // are pending, will be lost. However, trying to process these changes could 479 // are pending, will be lost. However, trying to process these changes could
480 // cause an endless loop (see crbug.com/516070). 480 // cause an endless loop (see crbug.com/516070).
481 if (requests_.empty()) { 481 if (requests_.empty()) {
482 requests_.push_back(GaiaCookieRequest::CreateListAccountsRequest(source_)); 482 requests_.push_back(GaiaCookieRequest::CreateListAccountsRequest(source_));
(...skipping 252 matching lines...) Expand 10 before | Expand all | Expand 10 after
735 break; 735 break;
736 case GaiaCookieRequestType::LIST_ACCOUNTS: 736 case GaiaCookieRequestType::LIST_ACCOUNTS:
737 uber_token_fetcher_.reset(); 737 uber_token_fetcher_.reset();
738 signin_client_->DelayNetworkCall( 738 signin_client_->DelayNetworkCall(
739 base::Bind(&GaiaCookieManagerService::StartFetchingListAccounts, 739 base::Bind(&GaiaCookieManagerService::StartFetchingListAccounts,
740 base::Unretained(this))); 740 base::Unretained(this)));
741 break; 741 break;
742 } 742 }
743 } 743 }
744 } 744 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698