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 "chrome/browser/chromeos/policy/device_cloud_policy_initializer.h" | 5 #include "chrome/browser/chromeos/policy/device_cloud_policy_initializer.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/bind_helpers.h" | 8 #include "base/bind_helpers.h" |
9 #include "base/callback.h" | 9 #include "base/callback.h" |
10 #include "base/logging.h" | 10 #include "base/logging.h" |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
89 | 89 |
90 device_store_->RemoveObserver(this); | 90 device_store_->RemoveObserver(this); |
91 enrollment_handler_.reset(); | 91 enrollment_handler_.reset(); |
92 state_keys_update_subscription_.reset(); | 92 state_keys_update_subscription_.reset(); |
93 is_initialized_ = false; | 93 is_initialized_ = false; |
94 } | 94 } |
95 | 95 |
96 void DeviceCloudPolicyInitializer::StartEnrollment( | 96 void DeviceCloudPolicyInitializer::StartEnrollment( |
97 ManagementMode management_mode, | 97 ManagementMode management_mode, |
98 DeviceManagementService* device_management_service, | 98 DeviceManagementService* device_management_service, |
| 99 chromeos::OwnerSettingsServiceChromeOS* owner_settings_service, |
99 const std::string& auth_token, | 100 const std::string& auth_token, |
100 const AllowedDeviceModes& allowed_device_modes, | 101 const AllowedDeviceModes& allowed_device_modes, |
101 const EnrollmentCallback& enrollment_callback) { | 102 const EnrollmentCallback& enrollment_callback) { |
102 DCHECK(is_initialized_); | 103 DCHECK(is_initialized_); |
103 DCHECK(!enrollment_handler_); | 104 DCHECK(!enrollment_handler_); |
104 | 105 |
105 manager_->core()->Disconnect(); | 106 manager_->core()->Disconnect(); |
106 enrollment_handler_.reset(new EnrollmentHandlerChromeOS( | 107 enrollment_handler_.reset(new EnrollmentHandlerChromeOS( |
107 device_store_, | 108 device_store_, install_attributes_, state_keys_broker_, |
108 install_attributes_, | 109 device_settings_service_, owner_settings_service, |
109 state_keys_broker_, | 110 CreateClient(device_management_service), background_task_runner_, |
110 device_settings_service_, | 111 auth_token, install_attributes_->GetDeviceId(), |
111 CreateClient(device_management_service), | 112 manager_->GetDeviceRequisition(), allowed_device_modes, management_mode, |
112 background_task_runner_, | |
113 auth_token, | |
114 install_attributes_->GetDeviceId(), | |
115 manager_->GetDeviceRequisition(), | |
116 allowed_device_modes, | |
117 management_mode, | |
118 base::Bind(&DeviceCloudPolicyInitializer::EnrollmentCompleted, | 113 base::Bind(&DeviceCloudPolicyInitializer::EnrollmentCompleted, |
119 base::Unretained(this), | 114 base::Unretained(this), enrollment_callback))); |
120 enrollment_callback))); | |
121 enrollment_handler_->StartEnrollment(); | 115 enrollment_handler_->StartEnrollment(); |
122 } | 116 } |
123 | 117 |
124 bool DeviceCloudPolicyInitializer::ShouldAutoStartEnrollment() const { | 118 bool DeviceCloudPolicyInitializer::ShouldAutoStartEnrollment() const { |
125 const RestoreMode restore_mode = GetRestoreMode(); | 119 const RestoreMode restore_mode = GetRestoreMode(); |
126 if (restore_mode == RESTORE_MODE_REENROLLMENT_REQUESTED || | 120 if (restore_mode == RESTORE_MODE_REENROLLMENT_REQUESTED || |
127 restore_mode == RESTORE_MODE_REENROLLMENT_ENFORCED) { | 121 restore_mode == RESTORE_MODE_REENROLLMENT_ENFORCED) { |
128 return true; | 122 return true; |
129 } | 123 } |
130 | 124 |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
232 StartConnection(CreateClient(service)); | 226 StartConnection(CreateClient(service)); |
233 } | 227 } |
234 | 228 |
235 void DeviceCloudPolicyInitializer::StartConnection( | 229 void DeviceCloudPolicyInitializer::StartConnection( |
236 scoped_ptr<CloudPolicyClient> client) { | 230 scoped_ptr<CloudPolicyClient> client) { |
237 if (!manager_->core()->service()) | 231 if (!manager_->core()->service()) |
238 manager_->StartConnection(client.Pass(), install_attributes_); | 232 manager_->StartConnection(client.Pass(), install_attributes_); |
239 } | 233 } |
240 | 234 |
241 } // namespace policy | 235 } // namespace policy |
OLD | NEW |