Chromium Code Reviews| Index: chrome/browser/chromeos/login/enrollment/enrollment_screen.cc |
| diff --git a/chrome/browser/chromeos/login/enrollment/enrollment_screen.cc b/chrome/browser/chromeos/login/enrollment/enrollment_screen.cc |
| index 053fbf1ed564a04757b2cd43a7499f4030a2c282..dcc5e526fbd1101ecb064608fc9f031147314b5c 100644 |
| --- a/chrome/browser/chromeos/login/enrollment/enrollment_screen.cc |
| +++ b/chrome/browser/chromeos/login/enrollment/enrollment_screen.cc |
| @@ -227,15 +227,67 @@ void EnrollmentScreen::OnOtherError( |
| void EnrollmentScreen::OnDeviceEnrolled(const std::string& additional_token) { |
| if (!additional_token.empty()) |
| SendEnrollmentAuthToken(additional_token); |
| - StartupUtils::MarkDeviceRegistered( |
| - base::Bind(&EnrollmentScreen::ShowEnrollmentStatusOnSuccess, |
| + |
| + policy::BrowserPolicyConnectorChromeOS* connector = |
|
Mattias Nissler (ping if slow)
2015/04/10 12:22:28
This logic should probably all be moved to the enr
Polina Bondarenko
2015/04/14 14:15:47
Done.
|
| + g_browser_process->platform_part()->browser_policy_connector_chromeos(); |
| + policy::DeviceCloudPolicyManagerChromeOS* policy_manager = |
| + connector->GetDeviceCloudPolicyManager(); |
| + |
| + policy::CloudPolicyClient* client = policy_manager->core()->client(); |
| + |
| + client->GetDeviceAttributeUpdatePermission( |
| + enrollment_helper_->GetOAuthToken(), |
| + base::Bind(&EnrollmentScreen::OnDeviceNamingPermission, |
| weak_ptr_factory_.GetWeakPtr())); |
| + |
| if (remora_controller_) { |
|
Mattias Nissler (ping if slow)
2015/04/10 12:22:28
This should not be run if there's still a Naming p
Polina Bondarenko
2015/04/14 14:15:47
Done.
|
| remora_controller_->OnEnrollmentStatusChanged( |
| HostPairingController::ENROLLMENT_STATUS_SUCCESS); |
| } |
| } |
| +void EnrollmentScreen::OnDeviceNaming(const std::string& asset_id, |
| + const std::string& location) { |
| + policy::BrowserPolicyConnectorChromeOS* connector = |
|
Mattias Nissler (ping if slow)
2015/04/10 12:22:28
This stuff should also move to the enrollment help
Polina Bondarenko
2015/04/14 14:15:47
Done.
|
| + g_browser_process->platform_part()->browser_policy_connector_chromeos(); |
| + policy::DeviceCloudPolicyManagerChromeOS* policy_manager = |
| + connector->GetDeviceCloudPolicyManager(); |
| + |
| + policy::CloudPolicyClient* client = policy_manager->core()->client(); |
| + |
| + client->UpdateDeviceAttributes(enrollment_helper_->GetOAuthToken(), asset_id, |
| + location, |
| + base::Bind(&EnrollmentScreen::OnDeviceNamed, |
| + weak_ptr_factory_.GetWeakPtr())); |
| +} |
| + |
| +void EnrollmentScreen::OnDeviceNamingPermission(bool status) { |
| + // If user is permitted to name a device |
| + // Show device naming screen |
| + if (status) { |
| + StartupUtils::MarkDeviceRegistered( |
| + base::Bind(&EnrollmentScreen::ShowDeviceNamingScreen, |
| + weak_ptr_factory_.GetWeakPtr())); |
| + } else { |
| + StartupUtils::MarkDeviceRegistered( |
| + base::Bind(&EnrollmentScreen::ShowEnrollmentStatusOnSuccess, |
| + weak_ptr_factory_.GetWeakPtr())); |
| + } |
| +} |
| + |
| +void EnrollmentScreen::OnDeviceNamed(bool status) { |
|
Mattias Nissler (ping if slow)
2015/04/10 12:22:28
This should probably be renamed to OnDeviceAttribu
Polina Bondarenko
2015/04/14 14:15:47
Done.
|
| + if (status) { |
| + actor_->ShowEnrollmentStatus(policy::EnrollmentStatus::ForStatus( |
| + policy::EnrollmentStatus::STATUS_SUCCESS)); |
| + } else { |
| + actor_->ShowEnrollmentStatus(policy::EnrollmentStatus::ForStatus( |
| + policy::EnrollmentStatus::STATUS_DEVICE_NAMING_FAILED)); |
| + } |
| +} |
| +void EnrollmentScreen::ShowDeviceNamingScreen() { |
|
Mattias Nissler (ping if slow)
2015/04/10 12:22:28
nit: Rename to ShowAttributePromptScreen?
Polina Bondarenko
2015/04/14 14:15:47
Done.
|
| + actor_->ShowDeviceNamingScreen(); |
| +} |
| + |
| void EnrollmentScreen::SendEnrollmentAuthToken(const std::string& token) { |
| // TODO(achuith, zork): Extract and send domain. |
| DCHECK(shark_controller_); |