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

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

Issue 2371213002: Refactor: Inject StatisticsProvider as a dependency of DeviceCloudPolicyInitializer. (Closed)
Patch Set: Address Maksim's comments. Created 4 years, 3 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_initializer.cc
diff --git a/chrome/browser/chromeos/policy/device_cloud_policy_initializer.cc b/chrome/browser/chromeos/policy/device_cloud_policy_initializer.cc
index d324979785dff40892ecfdff36f2aec57ca7cca1..20a8fd91e06d41f9f9d0ecb9489d95281841608e 100644
--- a/chrome/browser/chromeos/policy/device_cloud_policy_initializer.cc
+++ b/chrome/browser/chromeos/policy/device_cloud_policy_initializer.cc
@@ -39,22 +39,6 @@
namespace policy {
-namespace {
-
-// Gets a machine flag from StatisticsProvider, returning the given
-// |default_value| if not present.
-bool GetMachineFlag(const std::string& key, bool default_value) {
- bool value = default_value;
- chromeos::system::StatisticsProvider* provider =
- chromeos::system::StatisticsProvider::GetInstance();
- if (!provider->GetMachineFlag(key, &value))
- return default_value;
-
- return value;
-}
-
-} // namespace
-
DeviceCloudPolicyInitializer::DeviceCloudPolicyInitializer(
PrefService* local_state,
DeviceManagementService* enterprise_service,
@@ -64,7 +48,8 @@ DeviceCloudPolicyInitializer::DeviceCloudPolicyInitializer(
DeviceCloudPolicyStoreChromeOS* device_store,
DeviceCloudPolicyManagerChromeOS* manager,
cryptohome::AsyncMethodCaller* async_method_caller,
- std::unique_ptr<chromeos::attestation::AttestationFlow> attestation_flow)
+ std::unique_ptr<chromeos::attestation::AttestationFlow> attestation_flow,
+ chromeos::system::StatisticsProvider* statistics_provider)
: local_state_(local_state),
enterprise_service_(enterprise_service),
background_task_runner_(background_task_runner),
@@ -73,6 +58,7 @@ DeviceCloudPolicyInitializer::DeviceCloudPolicyInitializer(
device_store_(device_store),
manager_(manager),
attestation_flow_(std::move(attestation_flow)),
+ statistics_provider_(statistics_provider),
signing_service_(base::MakeUnique<TpmEnrollmentKeySigningService>(
async_method_caller)) {}
@@ -165,7 +151,7 @@ EnrollmentConfig DeviceCloudPolicyInitializer::GetPrescribedEnrollmentConfig()
// registration gets lost.
if (local_state_->GetBoolean(prefs::kEnrollmentRecoveryRequired)) {
LOG(WARNING) << "Enrollment recovery required according to pref.";
- if (DeviceCloudPolicyManagerChromeOS::GetMachineID().empty())
+ if (statistics_provider_->GetEnterpriseMachineID().empty())
LOG(WARNING) << "Postponing recovery because machine id is missing.";
else
config.mode = EnrollmentConfig::MODE_RECOVERY;
@@ -263,9 +249,11 @@ void DeviceCloudPolicyInitializer::EnrollmentCompleted(
std::unique_ptr<CloudPolicyClient> DeviceCloudPolicyInitializer::CreateClient(
DeviceManagementService* device_management_service) {
+ std::string machine_model;
+ statistics_provider_->GetMachineStatistic(chromeos::system::kHardwareClassKey,
+ &machine_model);
return base::MakeUnique<CloudPolicyClient>(
- DeviceCloudPolicyManagerChromeOS::GetMachineID(),
- DeviceCloudPolicyManagerChromeOS::GetMachineModel(),
+ statistics_provider_->GetEnterpriseMachineID(), machine_model,
kPolicyVerificationKeyHash, device_management_service,
g_browser_process->system_request_context(), signing_service_.get());
}
@@ -286,6 +274,15 @@ void DeviceCloudPolicyInitializer::StartConnection(
manager_->StartConnection(std::move(client), install_attributes_);
}
+bool DeviceCloudPolicyInitializer::GetMachineFlag(const std::string& key,
+ bool default_value) const {
+ bool value = default_value;
+ if (!statistics_provider_->GetMachineFlag(key, &value))
+ return default_value;
+
+ return value;
+}
+
DeviceCloudPolicyInitializer::TpmEnrollmentKeySigningService::
TpmEnrollmentKeySigningService(
cryptohome::AsyncMethodCaller* async_method_caller)

Powered by Google App Engine
This is Rietveld 408576698