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 3// found in the LICENSE file. 4 5#include "chrome/browser/ui/ash/stub_user_accounts_delegate.h" 6 7#include <cctype> 8 9#include "base/logging.h" 10 11StubUserAccountsDelegate::StubUserAccountsDelegate(const std::string& owner_id) 12 : primary_account_(owner_id) {} 13 14StubUserAccountsDelegate::~StubUserAccountsDelegate() {} 15 16std::string StubUserAccountsDelegate::GetPrimaryAccountId() { 17 return primary_account_; 18} 19 20std::vector<std::string> StubUserAccountsDelegate::GetSecondaryAccountIds() { 21 return secondary_accounts_; 22} 23 24std::string StubUserAccountsDelegate::GetAccountDisplayName( 25 const std::string& account_id) { 26 std::string res(1, std::toupper(account_id[0])); 27 res += account_id.substr(1); 28 return res; 29} 30 31void StubUserAccountsDelegate::DeleteAccount(const std::string& account_id) { 32 secondary_accounts_.erase( 33 std::remove( 34 secondary_accounts_.begin(), secondary_accounts_.end(), account_id), 35 secondary_accounts_.end()); 36 NotifyAccountListChanged(); 37} 38 39void StubUserAccountsDelegate::AddAccount(const std::string& account_id) { 40 if (primary_account_ == account_id) 41 return; 42 if (std::find(secondary_accounts_.begin(), 43 secondary_accounts_.end(), 44 account_id) != secondary_accounts_.end()) 45 return; 46 secondary_accounts_.push_back(account_id); 47 NotifyAccountListChanged(); 48} 49 50void StubUserAccountsDelegate::LaunchAddAccountDialog() { 51 NOTIMPLEMENTED(); 52} 53