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

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

Issue 1058513002: Add an Accounts in Token Service section to about:signin-internals. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase before submit Created 5 years, 8 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
« no previous file with comments | « components/signin/core/browser/about_signin_internals.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "components/signin/core/browser/about_signin_internals.h" 5 #include "components/signin/core/browser/about_signin_internals.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/hash.h" 8 #include "base/hash.h"
9 #include "base/i18n/time_formatting.h" 9 #include "base/i18n/time_formatting.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 229 matching lines...) Expand 10 before | Expand all | Expand 10 after
240 // TODO(robliao): Remove ScopedTracker below once https://crbug.com/422460 is 240 // TODO(robliao): Remove ScopedTracker below once https://crbug.com/422460 is
241 // fixed. 241 // fixed.
242 tracked_objects::ScopedTracker tracking_profile05( 242 tracked_objects::ScopedTracker tracking_profile05(
243 FROM_HERE_WITH_EXPLICIT_FUNCTION( 243 FROM_HERE_WITH_EXPLICIT_FUNCTION(
244 "422460 AboutSigninInternals::NotifyObservers 0.5")); 244 "422460 AboutSigninInternals::NotifyObservers 0.5"));
245 245
246 scoped_ptr<base::DictionaryValue> signin_status_value = 246 scoped_ptr<base::DictionaryValue> signin_status_value =
247 signin_status_.ToValue(account_tracker_, 247 signin_status_.ToValue(account_tracker_,
248 signin_manager_, 248 signin_manager_,
249 signin_error_controller_, 249 signin_error_controller_,
250 token_service_,
250 product_version); 251 product_version);
251 252
252 // TODO(robliao): Remove ScopedTracker below once https://crbug.com/422460 is 253 // TODO(robliao): Remove ScopedTracker below once https://crbug.com/422460 is
253 // fixed. 254 // fixed.
254 tracked_objects::ScopedTracker tracking_profile1( 255 tracked_objects::ScopedTracker tracking_profile1(
255 FROM_HERE_WITH_EXPLICIT_FUNCTION( 256 FROM_HERE_WITH_EXPLICIT_FUNCTION(
256 "422460 AboutSigninInternals::NotifyObservers1")); 257 "422460 AboutSigninInternals::NotifyObservers1"));
257 258
258 FOR_EACH_OBSERVER(AboutSigninInternals::Observer, 259 FOR_EACH_OBSERVER(AboutSigninInternals::Observer,
259 signin_observers_, 260 signin_observers_,
260 OnSigninStateChanged(signin_status_value.get())); 261 OnSigninStateChanged(signin_status_value.get()));
261 } 262 }
262 263
263 scoped_ptr<base::DictionaryValue> AboutSigninInternals::GetSigninStatus() { 264 scoped_ptr<base::DictionaryValue> AboutSigninInternals::GetSigninStatus() {
264 return signin_status_.ToValue(account_tracker_, 265 return signin_status_.ToValue(account_tracker_,
265 signin_manager_, 266 signin_manager_,
266 signin_error_controller_, 267 signin_error_controller_,
268 token_service_,
267 client_->GetProductVersion()).Pass(); 269 client_->GetProductVersion()).Pass();
268 } 270 }
269 271
270 void AboutSigninInternals::OnAccessTokenRequested( 272 void AboutSigninInternals::OnAccessTokenRequested(
271 const std::string& account_id, 273 const std::string& account_id,
272 const std::string& consumer_id, 274 const std::string& consumer_id,
273 const OAuth2TokenService::ScopeSet& scopes) { 275 const OAuth2TokenService::ScopeSet& scopes) {
274 // TODO(robliao): Remove ScopedTracker below once https://crbug.com/422460 is 276 // TODO(robliao): Remove ScopedTracker below once https://crbug.com/422460 is
275 // fixed. 277 // fixed.
276 tracked_objects::ScopedTracker tracking_profile( 278 tracked_objects::ScopedTracker tracking_profile(
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
412 : consumer_id(consumer_id), 414 : consumer_id(consumer_id),
413 scopes(scopes), 415 scopes(scopes),
414 request_time(base::Time::Now()), 416 request_time(base::Time::Now()),
415 error(GoogleServiceAuthError::AuthErrorNone()), 417 error(GoogleServiceAuthError::AuthErrorNone()),
416 removed_(false) {} 418 removed_(false) {}
417 419
418 AboutSigninInternals::TokenInfo::~TokenInfo() {} 420 AboutSigninInternals::TokenInfo::~TokenInfo() {}
419 421
420 bool AboutSigninInternals::TokenInfo::LessThan(const TokenInfo* a, 422 bool AboutSigninInternals::TokenInfo::LessThan(const TokenInfo* a,
421 const TokenInfo* b) { 423 const TokenInfo* b) {
422 return a->consumer_id < b->consumer_id || 424 if (a->request_time == b->request_time) {
423 (a->consumer_id == b->consumer_id && a->scopes < b->scopes); 425 if (a->consumer_id == b->consumer_id) {
426 return a->scopes < b->scopes;
427 }
428 return a->consumer_id < b->consumer_id;
429 }
430 return a->request_time < b->request_time;
424 } 431 }
425 432
426 void AboutSigninInternals::TokenInfo::Invalidate() { removed_ = true; } 433 void AboutSigninInternals::TokenInfo::Invalidate() { removed_ = true; }
427 434
428 base::DictionaryValue* AboutSigninInternals::TokenInfo::ToValue() const { 435 base::DictionaryValue* AboutSigninInternals::TokenInfo::ToValue() const {
429 scoped_ptr<base::DictionaryValue> token_info(new base::DictionaryValue()); 436 scoped_ptr<base::DictionaryValue> token_info(new base::DictionaryValue());
430 token_info->SetString("service", consumer_id); 437 token_info->SetString("service", consumer_id);
431 438
432 std::string scopes_str; 439 std::string scopes_str;
433 for (OAuth2TokenService::ScopeSet::const_iterator it = scopes.begin(); 440 for (OAuth2TokenService::ScopeSet::const_iterator it = scopes.begin();
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
485 if (tmp->consumer_id == consumer_id && tmp->scopes == scopes) 492 if (tmp->consumer_id == consumer_id && tmp->scopes == scopes)
486 return tmp; 493 return tmp;
487 } 494 }
488 return NULL; 495 return NULL;
489 } 496 }
490 497
491 scoped_ptr<base::DictionaryValue> AboutSigninInternals::SigninStatus::ToValue( 498 scoped_ptr<base::DictionaryValue> AboutSigninInternals::SigninStatus::ToValue(
492 AccountTrackerService* account_tracker, 499 AccountTrackerService* account_tracker,
493 SigninManagerBase* signin_manager, 500 SigninManagerBase* signin_manager,
494 SigninErrorController* signin_error_controller, 501 SigninErrorController* signin_error_controller,
502 ProfileOAuth2TokenService* token_service,
495 const std::string& product_version) { 503 const std::string& product_version) {
496 // TODO(robliao): Remove ScopedTracker below once https://crbug.com/422460 is 504 // TODO(robliao): Remove ScopedTracker below once https://crbug.com/422460 is
497 // fixed. 505 // fixed.
498 tracked_objects::ScopedTracker tracking_profile1( 506 tracked_objects::ScopedTracker tracking_profile1(
499 FROM_HERE_WITH_EXPLICIT_FUNCTION( 507 FROM_HERE_WITH_EXPLICIT_FUNCTION(
500 "422460 AboutSigninInternals::SigninStatus::ToValue1")); 508 "422460 AboutSigninInternals::SigninStatus::ToValue1"));
501 509
502 scoped_ptr<base::DictionaryValue> signin_status(new base::DictionaryValue()); 510 scoped_ptr<base::DictionaryValue> signin_status(new base::DictionaryValue());
503 base::ListValue* signin_info = new base::ListValue(); 511 base::ListValue* signin_info = new base::ListValue();
504 signin_status->Set("signin_info", signin_info); 512 signin_status->Set("signin_info", signin_info);
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
602 tracked_objects::ScopedTracker tracking_profile43( 610 tracked_objects::ScopedTracker tracking_profile43(
603 FROM_HERE_WITH_EXPLICIT_FUNCTION( 611 FROM_HERE_WITH_EXPLICIT_FUNCTION(
604 "422460 AboutSigninInternals::SigninStatus::ToValue43")); 612 "422460 AboutSigninInternals::SigninStatus::ToValue43"));
605 613
606 for (size_t i = 0; i < tokens.size(); ++i) { 614 for (size_t i = 0; i < tokens.size(); ++i) {
607 base::DictionaryValue* token_info = tokens[i]->ToValue(); 615 base::DictionaryValue* token_info = tokens[i]->ToValue();
608 token_details->Append(token_info); 616 token_details->Append(token_info);
609 } 617 }
610 } 618 }
611 619
620 base::ListValue* account_info = new base::ListValue();
621 signin_status->Set("accountInfo", account_info);
622 const std::vector<std::string>& accounts_in_token_service =
623 token_service->GetAccounts();
624
625 if(accounts_in_token_service.size() == 0) {
626 base::DictionaryValue* no_token_entry = new base::DictionaryValue();
627 no_token_entry->SetString("accountId", "No token in Token Service.");
628 account_info->Append(no_token_entry);
629 }
630
631 for(const std::string& account_id : accounts_in_token_service) {
632 base::DictionaryValue* entry = new base::DictionaryValue();
633 entry->SetString("accountId", account_id);
634 account_info->Append(entry);
635 }
636
612 return signin_status.Pass(); 637 return signin_status.Pass();
613 } 638 }
OLDNEW
« no previous file with comments | « components/signin/core/browser/about_signin_internals.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698