| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/policy/auto_enrollment_client.h" | 5 #include "chrome/browser/chromeos/policy/auto_enrollment_client.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/guid.h" | 8 #include "base/guid.h" |
| 9 #include "base/location.h" | 9 #include "base/location.h" |
| 10 #include "base/logging.h" | 10 #include "base/logging.h" |
| (...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 67 // corresponding prefs string constant. | 67 // corresponding prefs string constant. |
| 68 std::string ConvertRestoreMode( | 68 std::string ConvertRestoreMode( |
| 69 em::DeviceStateRetrievalResponse::RestoreMode restore_mode) { | 69 em::DeviceStateRetrievalResponse::RestoreMode restore_mode) { |
| 70 switch (restore_mode) { | 70 switch (restore_mode) { |
| 71 case em::DeviceStateRetrievalResponse::RESTORE_MODE_NONE: | 71 case em::DeviceStateRetrievalResponse::RESTORE_MODE_NONE: |
| 72 return std::string(); | 72 return std::string(); |
| 73 case em::DeviceStateRetrievalResponse::RESTORE_MODE_REENROLLMENT_REQUESTED: | 73 case em::DeviceStateRetrievalResponse::RESTORE_MODE_REENROLLMENT_REQUESTED: |
| 74 return kDeviceStateRestoreModeReEnrollmentRequested; | 74 return kDeviceStateRestoreModeReEnrollmentRequested; |
| 75 case em::DeviceStateRetrievalResponse::RESTORE_MODE_REENROLLMENT_ENFORCED: | 75 case em::DeviceStateRetrievalResponse::RESTORE_MODE_REENROLLMENT_ENFORCED: |
| 76 return kDeviceStateRestoreModeReEnrollmentEnforced; | 76 return kDeviceStateRestoreModeReEnrollmentEnforced; |
| 77 case em::DeviceStateRetrievalResponse::RESTORE_MODE_DISABLED: |
| 78 return kDeviceStateRestoreModeDisabled; |
| 77 } | 79 } |
| 78 | 80 |
| 79 // Return is required to avoid compiler warning. | 81 // Return is required to avoid compiler warning. |
| 80 NOTREACHED() << "Bad restore mode " << restore_mode; | 82 NOTREACHED() << "Bad restore mode " << restore_mode; |
| 81 return std::string(); | 83 return std::string(); |
| 82 } | 84 } |
| 83 | 85 |
| 84 } // namespace | 86 } // namespace |
| 85 | 87 |
| 86 AutoEnrollmentClient::AutoEnrollmentClient( | 88 AutoEnrollmentClient::AutoEnrollmentClient( |
| (...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 226 } else { | 228 } else { |
| 227 progress_callback_.Run(state_); | 229 progress_callback_.Run(state_); |
| 228 } | 230 } |
| 229 } | 231 } |
| 230 | 232 |
| 231 void AutoEnrollmentClient::NextStep() { | 233 void AutoEnrollmentClient::NextStep() { |
| 232 if (!RetryStep()) { | 234 if (!RetryStep()) { |
| 233 // Protocol finished successfully, report result. | 235 // Protocol finished successfully, report result. |
| 234 bool trigger_enrollment = false; | 236 bool trigger_enrollment = false; |
| 235 if (retrieve_device_state_) { | 237 if (retrieve_device_state_) { |
| 236 const base::DictionaryValue* device_state_dict = | 238 const RestoreMode restore_mode = GetRestoreMode(); |
| 237 local_state_->GetDictionary(prefs::kServerBackedDeviceState); | |
| 238 std::string restore_mode; | |
| 239 device_state_dict->GetString(kDeviceStateRestoreMode, &restore_mode); | |
| 240 trigger_enrollment = | 239 trigger_enrollment = |
| 241 (restore_mode == kDeviceStateRestoreModeReEnrollmentRequested || | 240 (restore_mode == RESTORE_MODE_REENROLLMENT_REQUESTED || |
| 242 restore_mode == kDeviceStateRestoreModeReEnrollmentEnforced); | 241 restore_mode == RESTORE_MODE_REENROLLMENT_ENFORCED); |
| 243 } else { | 242 } else { |
| 244 trigger_enrollment = has_server_state_; | 243 trigger_enrollment = has_server_state_; |
| 245 } | 244 } |
| 246 | 245 |
| 247 ReportProgress(trigger_enrollment ? AUTO_ENROLLMENT_STATE_TRIGGER_ENROLLMENT | 246 ReportProgress(trigger_enrollment ? AUTO_ENROLLMENT_STATE_TRIGGER_ENROLLMENT |
| 248 : AUTO_ENROLLMENT_STATE_NO_ENROLLMENT); | 247 : AUTO_ENROLLMENT_STATE_NO_ENROLLMENT); |
| 249 } | 248 } |
| 250 } | 249 } |
| 251 | 250 |
| 252 bool AutoEnrollmentClient::SendBucketDownloadRequest() { | 251 bool AutoEnrollmentClient::SendBucketDownloadRequest() { |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 405 new base::StringValue(state_response.management_domain())); | 404 new base::StringValue(state_response.management_domain())); |
| 406 | 405 |
| 407 std::string restore_mode = | 406 std::string restore_mode = |
| 408 ConvertRestoreMode(state_response.restore_mode()); | 407 ConvertRestoreMode(state_response.restore_mode()); |
| 409 UpdateDict(dict.Get(), | 408 UpdateDict(dict.Get(), |
| 410 kDeviceStateRestoreMode, | 409 kDeviceStateRestoreMode, |
| 411 !restore_mode.empty(), | 410 !restore_mode.empty(), |
| 412 new base::StringValue(restore_mode)); | 411 new base::StringValue(restore_mode)); |
| 413 | 412 |
| 414 UpdateDict(dict.Get(), | 413 UpdateDict(dict.Get(), |
| 415 kDeviceStateDisabled, | |
| 416 true /* set_or_clear */, | |
| 417 new base::FundamentalValue( | |
| 418 state_response.has_disabled_state())); | |
| 419 UpdateDict(dict.Get(), | |
| 420 kDeviceStateDisabledMessage, | 414 kDeviceStateDisabledMessage, |
| 421 state_response.has_disabled_state(), | 415 state_response.has_disabled_state(), |
| 422 new base::StringValue( | 416 new base::StringValue( |
| 423 state_response.disabled_state().message())); | 417 state_response.disabled_state().message())); |
| 424 } | 418 } |
| 425 local_state_->CommitPendingWrite(); | 419 local_state_->CommitPendingWrite(); |
| 426 device_state_available_ = true; | 420 device_state_available_ = true; |
| 427 progress = true; | 421 progress = true; |
| 428 } | 422 } |
| 429 | 423 |
| (...skipping 25 matching lines...) Expand all Loading... |
| 455 base::TimeDelta delta = kZero; | 449 base::TimeDelta delta = kZero; |
| 456 if (!time_extra_start_.is_null()) | 450 if (!time_extra_start_.is_null()) |
| 457 delta = now - time_extra_start_; | 451 delta = now - time_extra_start_; |
| 458 // This samples |kZero| when there was no need for extra time, so that we can | 452 // This samples |kZero| when there was no need for extra time, so that we can |
| 459 // measure the ratio of users that succeeded without needing a delay to the | 453 // measure the ratio of users that succeeded without needing a delay to the |
| 460 // total users going through OOBE. | 454 // total users going through OOBE. |
| 461 UMA_HISTOGRAM_CUSTOM_TIMES(kUMAExtraTime, delta, kMin, kMax, kBuckets); | 455 UMA_HISTOGRAM_CUSTOM_TIMES(kUMAExtraTime, delta, kMin, kMax, kBuckets); |
| 462 } | 456 } |
| 463 | 457 |
| 464 } // namespace policy | 458 } // namespace policy |
| OLD | NEW |