| Index: chrome/browser/chromeos/login/user.h
|
| diff --git a/chrome/browser/chromeos/login/user.h b/chrome/browser/chromeos/login/user.h
|
| index c61c0bb8f6a2c8e02426e7e10a33862e84230c6d..faf591395f62be3b96eadd8f61ae98df5b40ca8b 100644
|
| --- a/chrome/browser/chromeos/login/user.h
|
| +++ b/chrome/browser/chromeos/login/user.h
|
| @@ -24,6 +24,16 @@ extern const int kDefaultImagesCount;
|
| // back once user homedir is mounted. |username_hash| is used to identify
|
| // user homedir mount point.
|
| struct UserContext {
|
| + // The authentication flow used during sign-in.
|
| + enum AuthFlow {
|
| + // Online authentication against GAIA. GAIA did not redirect to a SAML IdP.
|
| + AUTH_FLOW_GAIA_WITHOUT_SAML,
|
| + // Online authentication against GAIA. GAIA redirected to a SAML IdP.
|
| + AUTH_FLOW_GAIA_WITH_SAML,
|
| + // Offline authentication against a cached password.
|
| + AUTH_FLOW_OFFLINE
|
| + };
|
| +
|
| UserContext();
|
| UserContext(const std::string& username,
|
| const std::string& password,
|
| @@ -36,7 +46,8 @@ struct UserContext {
|
| const std::string& password,
|
| const std::string& auth_code,
|
| const std::string& username_hash,
|
| - bool using_oauth);
|
| + bool using_oauth,
|
| + AuthFlow auth_flow);
|
| virtual ~UserContext();
|
| bool operator==(const UserContext& context) const;
|
| std::string username;
|
| @@ -44,6 +55,7 @@ struct UserContext {
|
| std::string auth_code;
|
| std::string username_hash;
|
| bool using_oauth;
|
| + AuthFlow auth_flow;
|
| };
|
|
|
| // A class representing information about a previously logged in user.
|
| @@ -150,15 +162,15 @@ class User {
|
| // True if image is being loaded from file.
|
| bool image_is_loading() const { return image_is_loading_; }
|
|
|
| - // OAuth token status for this user.
|
| - OAuthTokenStatus oauth_token_status() const { return oauth_token_status_; }
|
| -
|
| // The displayed user name.
|
| base::string16 display_name() const { return display_name_; }
|
|
|
| // The displayed (non-canonical) user email.
|
| virtual std::string display_email() const;
|
|
|
| + // OAuth token status for this user.
|
| + OAuthTokenStatus oauth_token_status() const { return oauth_token_status_; }
|
| +
|
| // True if the user's session can be locked (i.e. the user has a password with
|
| // which to unlock the session).
|
| virtual bool can_lock() const;
|
| @@ -211,10 +223,6 @@ class User {
|
| // If |is_loading| is |true|, that means user image is being loaded from file.
|
| void SetStubImage(int image_index, bool is_loading);
|
|
|
| - void set_oauth_token_status(OAuthTokenStatus status) {
|
| - oauth_token_status_ = status;
|
| - }
|
| -
|
| void set_display_name(const base::string16& display_name) {
|
| display_name_ = display_name;
|
| }
|
| @@ -227,6 +235,10 @@ class User {
|
|
|
| const UserImage& user_image() const { return user_image_; }
|
|
|
| + void set_oauth_token_status(OAuthTokenStatus status) {
|
| + oauth_token_status_ = status;
|
| + }
|
| +
|
| void set_username_hash(const std::string& username_hash) {
|
| username_hash_ = username_hash;
|
| }
|
|
|