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

Side by Side Diff: chrome/browser/chromeos/login/users/user.cc

Issue 290513003: Move UserContext to its own file (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebased. Created 6 years, 7 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 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 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 "chrome/browser/chromeos/login/users/user.h" 5 #include "chrome/browser/chromeos/login/users/user.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "base/strings/stringprintf.h" 8 #include "base/strings/stringprintf.h"
9 #include "base/strings/utf_string_conversions.h" 9 #include "base/strings/utf_string_conversions.h"
10 #include "base/threading/thread_restrictions.h" 10 #include "base/threading/thread_restrictions.h"
11 #include "chrome/browser/chromeos/login/helper.h" 11 #include "chrome/browser/chromeos/login/helper.h"
12 #include "chrome/browser/chromeos/login/users/avatar/default_user_images.h" 12 #include "chrome/browser/chromeos/login/users/avatar/default_user_images.h"
13 #include "chrome/browser/chromeos/login/users/user_manager.h" 13 #include "chrome/browser/chromeos/login/users/user_manager.h"
14 #include "google_apis/gaia/gaia_auth_util.h" 14 #include "google_apis/gaia/gaia_auth_util.h"
15 #include "google_apis/gaia/gaia_auth_util.h"
16 #include "grit/theme_resources.h" 15 #include "grit/theme_resources.h"
17 #include "ui/base/resource/resource_bundle.h" 16 #include "ui/base/resource/resource_bundle.h"
18 17
19 namespace chromeos { 18 namespace chromeos {
20 19
21 namespace { 20 namespace {
22 21
23 // Returns account name portion of an email. 22 // Returns account name portion of an email.
24 std::string GetUserName(const std::string& email) { 23 std::string GetUserName(const std::string& email) {
25 std::string::size_type i = email.find('@'); 24 std::string::size_type i = email.find('@');
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
102 explicit PublicAccountUser(const std::string& email); 101 explicit PublicAccountUser(const std::string& email);
103 virtual ~PublicAccountUser(); 102 virtual ~PublicAccountUser();
104 103
105 // Overridden from User: 104 // Overridden from User:
106 virtual UserType GetType() const OVERRIDE; 105 virtual UserType GetType() const OVERRIDE;
107 106
108 private: 107 private:
109 DISALLOW_COPY_AND_ASSIGN(PublicAccountUser); 108 DISALLOW_COPY_AND_ASSIGN(PublicAccountUser);
110 }; 109 };
111 110
112 UserContext::UserContext() : does_need_password_hashing_(true),
113 is_using_oauth_(true),
114 auth_flow_(AUTH_FLOW_OFFLINE) {
115 }
116
117 UserContext::UserContext(const UserContext& other)
118 : user_id_(other.user_id_),
119 password_(other.password_),
120 does_need_password_hashing_(other.does_need_password_hashing_),
121 key_label_(other.key_label_),
122 auth_code_(other.auth_code_),
123 user_id_hash_(other.user_id_hash_),
124 is_using_oauth_(other.is_using_oauth_),
125 auth_flow_(other.auth_flow_) {
126 }
127
128 UserContext::UserContext(const std::string& user_id)
129 : user_id_(login::CanonicalizeUserID(user_id)),
130 does_need_password_hashing_(true),
131 is_using_oauth_(true),
132 auth_flow_(AUTH_FLOW_OFFLINE) {
133 }
134
135 UserContext::~UserContext() {
136 }
137
138 bool UserContext::operator==(const UserContext& context) const {
139 return context.user_id_ == user_id_ &&
140 context.password_ == password_ &&
141 context.does_need_password_hashing_ == does_need_password_hashing_ &&
142 context.key_label_ == key_label_ &&
143 context.auth_code_ == auth_code_ &&
144 context.user_id_hash_ == user_id_hash_ &&
145 context.is_using_oauth_ == is_using_oauth_ &&
146 context.auth_flow_ == auth_flow_;
147 }
148
149 const std::string& UserContext::GetUserID() const {
150 return user_id_;
151 }
152
153 const std::string& UserContext::GetPassword() const {
154 return password_;
155 }
156
157 bool UserContext::DoesNeedPasswordHashing() const {
158 return does_need_password_hashing_;
159 }
160
161 const std::string& UserContext::GetKeyLabel() const {
162 return key_label_;
163 }
164
165 const std::string& UserContext::GetAuthCode() const {
166 return auth_code_;
167 }
168
169 const std::string& UserContext::GetUserIDHash() const {
170 return user_id_hash_;
171 }
172
173 bool UserContext::IsUsingOAuth() const {
174 return is_using_oauth_;
175 }
176
177 UserContext::AuthFlow UserContext::GetAuthFlow() const {
178 return auth_flow_;
179 }
180
181 bool UserContext::HasCredentials() const {
182 return (!user_id_.empty() && !password_.empty()) || !auth_code_.empty();
183 }
184
185 void UserContext::SetUserID(const std::string& user_id) {
186 user_id_ = login::CanonicalizeUserID(user_id);
187 }
188
189 void UserContext::SetPassword(const std::string& password) {
190 password_ = password;
191 }
192
193 void UserContext::SetDoesNeedPasswordHashing(bool does_need_password_hashing) {
194 does_need_password_hashing_ = does_need_password_hashing;
195 }
196
197 void UserContext::SetKeyLabel(const std::string& key_label) {
198 key_label_ = key_label;
199 }
200
201 void UserContext::SetAuthCode(const std::string& auth_code) {
202 auth_code_ = auth_code;
203 }
204
205 void UserContext::SetUserIDHash(const std::string& user_id_hash) {
206 user_id_hash_ = user_id_hash;
207 }
208
209 void UserContext::SetIsUsingOAuth(bool is_using_oauth) {
210 is_using_oauth_ = is_using_oauth;
211 }
212
213 void UserContext::SetAuthFlow(AuthFlow auth_flow) {
214 auth_flow_ = auth_flow;
215 }
216
217 void UserContext::ClearSecrets() {
218 password_.clear();
219 auth_code_.clear();
220 }
221
222 std::string User::GetEmail() const { 111 std::string User::GetEmail() const {
223 return display_email(); 112 return display_email();
224 } 113 }
225 114
226 base::string16 User::GetDisplayName() const { 115 base::string16 User::GetDisplayName() const {
227 // Fallback to the email account name in case display name haven't been set. 116 // Fallback to the email account name in case display name haven't been set.
228 return display_name_.empty() ? 117 return display_name_.empty() ?
229 base::UTF8ToUTF16(GetAccountName(true)) : 118 base::UTF8ToUTF16(GetAccountName(true)) :
230 display_name_; 119 display_name_;
231 } 120 }
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after
422 case USER_TYPE_LOCALLY_MANAGED: 311 case USER_TYPE_LOCALLY_MANAGED:
423 case USER_TYPE_KIOSK_APP: 312 case USER_TYPE_KIOSK_APP:
424 return false; 313 return false;
425 default: 314 default:
426 NOTREACHED(); 315 NOTREACHED();
427 } 316 }
428 return false; 317 return false;
429 } 318 }
430 319
431 } // namespace chromeos 320 } // namespace chromeos
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/login/users/user.h ('k') | chrome/browser/chromeos/login/users/user_manager_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698