stub_user_accounts_delegate.cc revision a02191e04bc25c4935f804f2c080ae28663d096d
1a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch// Copyright 2014 The Chromium Authors. All rights reserved. 2a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch// Use of this source code is governed by a BSD-style license that can be 3a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch// found in the LICENSE file. 4a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 5a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch#include "chrome/browser/ui/ash/stub_user_accounts_delegate.h" 6a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 7a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch#include <cctype> 8a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 9a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch#include "base/logging.h" 10a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 11a02191e04bc25c4935f804f2c080ae28663d096dBen MurdochStubUserAccountsDelegate::StubUserAccountsDelegate(const std::string& owner_id) 12a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch : primary_account_(owner_id) {} 13a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 14a02191e04bc25c4935f804f2c080ae28663d096dBen MurdochStubUserAccountsDelegate::~StubUserAccountsDelegate() {} 15a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 16a02191e04bc25c4935f804f2c080ae28663d096dBen Murdochstd::string StubUserAccountsDelegate::GetPrimaryAccount() { 17a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch return primary_account_; 18a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch} 19a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 20a02191e04bc25c4935f804f2c080ae28663d096dBen Murdochstd::vector<std::string> StubUserAccountsDelegate::GetSecondaryAccountsList() { 21a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch return secondary_accounts_; 22a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch} 23a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 24a02191e04bc25c4935f804f2c080ae28663d096dBen Murdochstd::string StubUserAccountsDelegate::GetAccountDisplayName( 25a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch const std::string& account_id) { 26a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch std::string res(1, std::toupper(account_id[0])); 27a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch res += account_id.substr(1); 28a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch return res; 29a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch} 30a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 31a02191e04bc25c4935f804f2c080ae28663d096dBen Murdochvoid StubUserAccountsDelegate::DeleteAccount(const std::string& account_id) { 32a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch secondary_accounts_.erase( 33a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch std::remove( 34a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch secondary_accounts_.begin(), secondary_accounts_.end(), account_id), 35a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch secondary_accounts_.end()); 36a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch NotifyAccountListChanged(); 37a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch} 38a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 39a02191e04bc25c4935f804f2c080ae28663d096dBen Murdochvoid StubUserAccountsDelegate::AddAccount(const std::string& account_id) { 40a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch if (primary_account_ == account_id) 41a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch return; 42a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch if (std::find(secondary_accounts_.begin(), 43a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch secondary_accounts_.end(), 44a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch account_id) != secondary_accounts_.end()) 45a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch return; 46a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch secondary_accounts_.push_back(account_id); 47a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch NotifyAccountListChanged(); 48a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch} 49a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch 50a02191e04bc25c4935f804f2c080ae28663d096dBen Murdochvoid StubUserAccountsDelegate::LaunchAddAccountDialog() { 51a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch NOTIMPLEMENTED(); 52a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch} 53