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

Unified Diff: chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.cc

Issue 14843009: Wire the device requisition parameter for enterprise enrollment. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix mock Created 7 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.cc
diff --git a/chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.cc b/chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.cc
index 3497f0754df1035d585a668aecf88b25aa38add2..1f67d754551b9c75b08954990e29503436c1a9d6 100644
--- a/chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.cc
+++ b/chrome/browser/chromeos/policy/device_cloud_policy_manager_chromeos.cc
@@ -16,6 +16,7 @@
#include "chrome/browser/policy/cloud/device_management_service.h"
#include "chrome/browser/policy/proto/cloud/device_management_backend.pb.h"
#include "chrome/common/pref_names.h"
+#include "chromeos/chromeos_constants.h"
namespace em = enterprise_management;
@@ -49,6 +50,18 @@ const char* kMachineInfoSerialNumberKeys[] = {
"sn", // old ZGB devices (more recent ones use serial_number)
};
+// Fetches a machine statics from StatisticsProvider, returns an empty string on
+// failure.
+std::string GetMachineStatistic(const std::string& key) {
+ std::string value;
+ chromeos::system::StatisticsProvider* provider =
+ chromeos::system::StatisticsProvider::GetInstance();
+ if (!provider->GetMachineStatistic(key, &value))
+ LOG(WARNING) << "Failed to get machine statistic " << key;
+
+ return value;
+}
+
} // namespace
DeviceCloudPolicyManagerChromeOS::DeviceCloudPolicyManagerChromeOS(
@@ -88,11 +101,14 @@ void DeviceCloudPolicyManagerChromeOS::StartEnrollment(
CHECK(device_management_service_);
core()->Disconnect();
+ if (requisition_.empty())
+ requisition_ = GetMachineStatistic(chromeos::kOemDeviceRequisitionKey);
+
enrollment_handler_.reset(
new EnrollmentHandlerChromeOS(
device_store_.get(), install_attributes_, CreateClient(), auth_token,
install_attributes_->GetDeviceId(), is_auto_enrollment,
- allowed_device_modes,
+ requisition_, allowed_device_modes,
base::Bind(&DeviceCloudPolicyManagerChromeOS::EnrollmentCompleted,
base::Unretained(this), callback)));
enrollment_handler_->StartEnrollment();
@@ -138,13 +154,7 @@ std::string DeviceCloudPolicyManagerChromeOS::GetMachineID() {
// static
std::string DeviceCloudPolicyManagerChromeOS::GetMachineModel() {
- std::string machine_model;
- chromeos::system::StatisticsProvider* provider =
- chromeos::system::StatisticsProvider::GetInstance();
- if (!provider->GetMachineStatistic(kMachineInfoSystemHwqual, &machine_model))
- LOG(WARNING) << "Failed to get machine model.";
-
- return machine_model;
+ return GetMachineStatistic(kMachineInfoSystemHwqual);
}
scoped_ptr<CloudPolicyClient> DeviceCloudPolicyManagerChromeOS::CreateClient() {

Powered by Google App Engine
This is Rietveld 408576698