Chromium Code Reviews| Index: chrome/browser/policy/profile_policy_connector_factory.cc |
| diff --git a/chrome/browser/policy/profile_policy_connector_factory.cc b/chrome/browser/policy/profile_policy_connector_factory.cc |
| index 52d8a1d0883aa0961485653527b0a666dfb6dd6f..7a6ad1decf21dc9eb97ad3a034e8b18b592a23d6 100644 |
| --- a/chrome/browser/policy/profile_policy_connector_factory.cc |
| +++ b/chrome/browser/policy/profile_policy_connector_factory.cc |
| @@ -13,13 +13,14 @@ |
| #include "components/user_prefs/pref_registry_syncable.h" |
| #if defined(ENABLE_CONFIGURATION_POLICY) |
| -#include "chrome/browser/policy/schema_registry_service_factory.h" |
| #if defined(OS_CHROMEOS) |
| #include "chrome/browser/chromeos/login/user.h" |
| #include "chrome/browser/chromeos/login/user_manager.h" |
| #include "chrome/browser/chromeos/policy/user_cloud_policy_manager_chromeos.h" |
| #include "chrome/browser/chromeos/policy/user_cloud_policy_manager_factory_chromeos.h" |
| #include "chrome/browser/chromeos/profiles/profile_helper.h" |
| +#include "chrome/browser/policy/schema_registry_service.h" |
| +#include "chrome/browser/policy/schema_registry_service_factory.h" |
| #else |
| #include "chrome/browser/policy/cloud/user_cloud_policy_manager.h" |
| #include "chrome/browser/policy/cloud/user_cloud_policy_manager_factory.h" |
| @@ -59,8 +60,8 @@ ProfilePolicyConnectorFactory::ProfilePolicyConnectorFactory() |
| "ProfilePolicyConnector", |
| BrowserContextDependencyManager::GetInstance()) { |
| #if defined(ENABLE_CONFIGURATION_POLICY) |
| - DependsOn(SchemaRegistryServiceFactory::GetInstance()); |
| #if defined(OS_CHROMEOS) |
| + DependsOn(SchemaRegistryServiceFactory::GetInstance()); |
| DependsOn(UserCloudPolicyManagerFactoryChromeOS::GetInstance()); |
| #else |
| DependsOn(UserCloudPolicyManagerFactory::GetInstance()); |
| @@ -90,7 +91,10 @@ ProfilePolicyConnectorFactory::CreateForProfileInternal( |
| #if defined(ENABLE_CONFIGURATION_POLICY) |
| #if defined(OS_CHROMEOS) |
| chromeos::User* user = NULL; |
| - if (!chromeos::ProfileHelper::IsSigninProfile(profile)) { |
| + SchemaRegistry* schema_registry = NULL; |
| + if (chromeos::ProfileHelper::IsSigninProfile(profile)) { |
| + schema_registry = SchemaRegistryServiceFactory::GetForContext(profile); |
|
Joao da Silva
2013/11/13 09:45:58
The schema_registry is also needed for non-signin
|
| + } else { |
| chromeos::UserManager* user_manager = chromeos::UserManager::Get(); |
| user = user_manager->GetUserByProfile(profile); |
| CHECK(user); |
| @@ -104,10 +108,11 @@ ProfilePolicyConnectorFactory::CreateForProfileInternal( |
| #else |
| CloudPolicyManager* user_cloud_policy_manager = NULL; |
| #endif |
| - ProfilePolicyConnector* connector = new ProfilePolicyConnector(profile); |
| + ProfilePolicyConnector* connector = new ProfilePolicyConnector(); |
| connector->Init(force_immediate_load, |
| #if defined(ENABLE_CONFIGURATION_POLICY) && defined(OS_CHROMEOS) |
| user, |
| + schema_registry, |
| #endif |
| user_cloud_policy_manager); |
| connectors_[profile] = connector; |
| @@ -134,12 +139,6 @@ void ProfilePolicyConnectorFactory::BrowserContextDestroyed( |
| void ProfilePolicyConnectorFactory::RegisterProfilePrefs( |
| user_prefs::PrefRegistrySyncable* registry) { |
| -#if defined(OS_CHROMEOS) |
| - registry->RegisterBooleanPref( |
| - prefs::kUsedPolicyCertificatesOnce, |
| - false, |
| - user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); |
| -#endif |
| #if defined(OS_ANDROID) |
| registry->RegisterListPref( |
| prefs::kManagedBookmarks, |