| OLD | NEW |
| 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 "components/user_manager/user.h" | 5 #include "components/user_manager/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" |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 81 virtual ~SupervisedUser(); | 81 virtual ~SupervisedUser(); |
| 82 | 82 |
| 83 // Overridden from User: | 83 // Overridden from User: |
| 84 virtual UserType GetType() const override; | 84 virtual UserType GetType() const override; |
| 85 virtual std::string display_email() const override; | 85 virtual std::string display_email() const override; |
| 86 | 86 |
| 87 private: | 87 private: |
| 88 DISALLOW_COPY_AND_ASSIGN(SupervisedUser); | 88 DISALLOW_COPY_AND_ASSIGN(SupervisedUser); |
| 89 }; | 89 }; |
| 90 | 90 |
| 91 class RetailModeUser : public User { | |
| 92 public: | |
| 93 RetailModeUser(); | |
| 94 virtual ~RetailModeUser(); | |
| 95 | |
| 96 // Overridden from User: | |
| 97 virtual UserType GetType() const override; | |
| 98 | |
| 99 private: | |
| 100 DISALLOW_COPY_AND_ASSIGN(RetailModeUser); | |
| 101 }; | |
| 102 | |
| 103 class PublicAccountUser : public User { | 91 class PublicAccountUser : public User { |
| 104 public: | 92 public: |
| 105 explicit PublicAccountUser(const std::string& email); | 93 explicit PublicAccountUser(const std::string& email); |
| 106 virtual ~PublicAccountUser(); | 94 virtual ~PublicAccountUser(); |
| 107 | 95 |
| 108 // Overridden from User: | 96 // Overridden from User: |
| 109 virtual UserType GetType() const override; | 97 virtual UserType GetType() const override; |
| 110 | 98 |
| 111 private: | 99 private: |
| 112 DISALLOW_COPY_AND_ASSIGN(PublicAccountUser); | 100 DISALLOW_COPY_AND_ASSIGN(PublicAccountUser); |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 193 } | 181 } |
| 194 | 182 |
| 195 User* User::CreateKioskAppUser(const std::string& kiosk_app_username) { | 183 User* User::CreateKioskAppUser(const std::string& kiosk_app_username) { |
| 196 return new KioskAppUser(kiosk_app_username); | 184 return new KioskAppUser(kiosk_app_username); |
| 197 } | 185 } |
| 198 | 186 |
| 199 User* User::CreateSupervisedUser(const std::string& username) { | 187 User* User::CreateSupervisedUser(const std::string& username) { |
| 200 return new SupervisedUser(username); | 188 return new SupervisedUser(username); |
| 201 } | 189 } |
| 202 | 190 |
| 203 User* User::CreateRetailModeUser() { | |
| 204 return new RetailModeUser; | |
| 205 } | |
| 206 | |
| 207 User* User::CreatePublicAccountUser(const std::string& email) { | 191 User* User::CreatePublicAccountUser(const std::string& email) { |
| 208 return new PublicAccountUser(email); | 192 return new PublicAccountUser(email); |
| 209 } | 193 } |
| 210 | 194 |
| 211 User::User(const std::string& email) | 195 User::User(const std::string& email) |
| 212 : email_(email), | 196 : email_(email), |
| 213 oauth_token_status_(OAUTH_TOKEN_STATUS_UNKNOWN), | 197 oauth_token_status_(OAUTH_TOKEN_STATUS_UNKNOWN), |
| 214 force_online_signin_(false), | 198 force_online_signin_(false), |
| 215 image_index_(USER_IMAGE_INVALID), | 199 image_index_(USER_IMAGE_INVALID), |
| 216 image_is_stub_(false), | 200 image_is_stub_(false), |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 303 } | 287 } |
| 304 | 288 |
| 305 UserType SupervisedUser::GetType() const { | 289 UserType SupervisedUser::GetType() const { |
| 306 return user_manager::USER_TYPE_SUPERVISED; | 290 return user_manager::USER_TYPE_SUPERVISED; |
| 307 } | 291 } |
| 308 | 292 |
| 309 std::string SupervisedUser::display_email() const { | 293 std::string SupervisedUser::display_email() const { |
| 310 return base::UTF16ToUTF8(display_name()); | 294 return base::UTF16ToUTF8(display_name()); |
| 311 } | 295 } |
| 312 | 296 |
| 313 RetailModeUser::RetailModeUser() : User(chromeos::login::kRetailModeUserName) { | |
| 314 set_display_email(std::string()); | |
| 315 } | |
| 316 | |
| 317 RetailModeUser::~RetailModeUser() { | |
| 318 } | |
| 319 | |
| 320 UserType RetailModeUser::GetType() const { | |
| 321 return user_manager::USER_TYPE_RETAIL_MODE; | |
| 322 } | |
| 323 | |
| 324 PublicAccountUser::PublicAccountUser(const std::string& email) : User(email) { | 297 PublicAccountUser::PublicAccountUser(const std::string& email) : User(email) { |
| 325 } | 298 } |
| 326 | 299 |
| 327 PublicAccountUser::~PublicAccountUser() { | 300 PublicAccountUser::~PublicAccountUser() { |
| 328 } | 301 } |
| 329 | 302 |
| 330 UserType PublicAccountUser::GetType() const { | 303 UserType PublicAccountUser::GetType() const { |
| 331 return user_manager::USER_TYPE_PUBLIC_ACCOUNT; | 304 return user_manager::USER_TYPE_PUBLIC_ACCOUNT; |
| 332 } | 305 } |
| 333 | 306 |
| 334 bool User::has_gaia_account() const { | 307 bool User::has_gaia_account() const { |
| 335 COMPILE_ASSERT(user_manager::NUM_USER_TYPES == 7, num_user_types_unexpected); | 308 COMPILE_ASSERT(user_manager::NUM_USER_TYPES == 7, num_user_types_unexpected); |
| 336 switch (GetType()) { | 309 switch (GetType()) { |
| 337 case user_manager::USER_TYPE_REGULAR: | 310 case user_manager::USER_TYPE_REGULAR: |
| 338 case user_manager::USER_TYPE_REGULAR_SUPERVISED: | 311 case user_manager::USER_TYPE_REGULAR_SUPERVISED: |
| 339 return true; | 312 return true; |
| 340 case user_manager::USER_TYPE_GUEST: | 313 case user_manager::USER_TYPE_GUEST: |
| 341 case user_manager::USER_TYPE_RETAIL_MODE: | |
| 342 case user_manager::USER_TYPE_PUBLIC_ACCOUNT: | 314 case user_manager::USER_TYPE_PUBLIC_ACCOUNT: |
| 343 case user_manager::USER_TYPE_SUPERVISED: | 315 case user_manager::USER_TYPE_SUPERVISED: |
| 344 case user_manager::USER_TYPE_KIOSK_APP: | 316 case user_manager::USER_TYPE_KIOSK_APP: |
| 345 return false; | 317 return false; |
| 346 default: | 318 default: |
| 347 NOTREACHED(); | 319 NOTREACHED(); |
| 348 } | 320 } |
| 349 return false; | 321 return false; |
| 350 } | 322 } |
| 351 | 323 |
| 352 } // namespace user_manager | 324 } // namespace user_manager |
| OLD | NEW |