[email protected] | fdf74bf | 2014-04-30 21:24:02 | [diff] [blame] | 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 | |||||
[email protected] | d66eac4 | 2014-07-14 23:48:30 | [diff] [blame] | 5 | #ifndef COMPONENTS_USER_MANAGER_USER_INFO_H_ |
6 | #define COMPONENTS_USER_MANAGER_USER_INFO_H_ | ||||
[email protected] | fdf74bf | 2014-04-30 21:24:02 | [diff] [blame] | 7 | |
8 | #include <string> | ||||
9 | |||||
[email protected] | fdf74bf | 2014-04-30 21:24:02 | [diff] [blame] | 10 | #include "base/strings/string16.h" |
[email protected] | d66eac4 | 2014-07-14 23:48:30 | [diff] [blame] | 11 | #include "components/user_manager/user_manager_export.h" |
[email protected] | fdf74bf | 2014-04-30 21:24:02 | [diff] [blame] | 12 | |
alemate | 3ffbde6f | 2015-11-03 02:02:55 | [diff] [blame] | 13 | class AccountId; |
14 | |||||
[email protected] | fdf74bf | 2014-04-30 21:24:02 | [diff] [blame] | 15 | namespace gfx { |
16 | class ImageSkia; | ||||
17 | } | ||||
18 | |||||
[email protected] | d66eac4 | 2014-07-14 23:48:30 | [diff] [blame] | 19 | namespace user_manager { |
[email protected] | fdf74bf | 2014-04-30 21:24:02 | [diff] [blame] | 20 | |
21 | // A class that represents user related info. | ||||
[email protected] | d66eac4 | 2014-07-14 23:48:30 | [diff] [blame] | 22 | class USER_MANAGER_EXPORT UserInfo { |
[email protected] | fdf74bf | 2014-04-30 21:24:02 | [diff] [blame] | 23 | public: |
[email protected] | d66eac4 | 2014-07-14 23:48:30 | [diff] [blame] | 24 | UserInfo(); |
25 | virtual ~UserInfo(); | ||||
[email protected] | fdf74bf | 2014-04-30 21:24:02 | [diff] [blame] | 26 | |
27 | // Gets the display name for the user. | ||||
28 | virtual base::string16 GetDisplayName() const = 0; | ||||
29 | |||||
30 | // Gets the given name of the user. | ||||
31 | virtual base::string16 GetGivenName() const = 0; | ||||
32 | |||||
33 | // Gets the display email address for the user. | ||||
34 | // The display email address might contains some periods in the email name | ||||
35 | // as well as capitalized letters. For example: "[email protected]". | ||||
alemate | bc19dbb | 2016-11-01 19:49:07 | [diff] [blame] | 36 | virtual std::string GetDisplayEmail() const = 0; |
[email protected] | fdf74bf | 2014-04-30 21:24:02 | [diff] [blame] | 37 | |
alemate | 3ffbde6f | 2015-11-03 02:02:55 | [diff] [blame] | 38 | // Returns AccountId for the user. |
hcarmona | b1723ed3 | 2015-11-18 21:52:58 | [diff] [blame] | 39 | virtual const AccountId& GetAccountId() const = 0; |
[email protected] | fdf74bf | 2014-04-30 21:24:02 | [diff] [blame] | 40 | |
41 | // Gets the avatar image for the user. | ||||
42 | virtual const gfx::ImageSkia& GetImage() const = 0; | ||||
43 | }; | ||||
44 | |||||
[email protected] | d66eac4 | 2014-07-14 23:48:30 | [diff] [blame] | 45 | } // namespace user_manager |
[email protected] | fdf74bf | 2014-04-30 21:24:02 | [diff] [blame] | 46 | |
[email protected] | d66eac4 | 2014-07-14 23:48:30 | [diff] [blame] | 47 | #endif // COMPONENTS_USER_MANAGER_USER_INFO_H_ |