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

Unified Diff: chrome/browser/policy/browser_policy_connector.cc

Issue 10443108: Implement the ConfigDirPolicyProvider based on the AsyncPolicyLoader (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: addressed comments, added FilePathWatchers Created 8 years, 6 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/policy/browser_policy_connector.cc
diff --git a/chrome/browser/policy/browser_policy_connector.cc b/chrome/browser/policy/browser_policy_connector.cc
index 4fe41d312912e1438062d0f8812a4a8db34c5431..4efda42ab2d5a713930b7d8edfede76afc07ed73 100644
--- a/chrome/browser/policy/browser_policy_connector.cc
+++ b/chrome/browser/policy/browser_policy_connector.cc
@@ -34,7 +34,7 @@
#include "chrome/browser/policy/policy_loader_mac.h"
#include "chrome/browser/preferences_mac.h"
#elif defined(OS_POSIX)
-#include "chrome/browser/policy/config_dir_policy_provider.h"
+#include "chrome/browser/policy/config_dir_policy_loader.h"
#endif
#if defined(OS_CHROMEOS)
@@ -113,13 +113,11 @@ BrowserPolicyConnector::~BrowserPolicyConnector() {
// ConfigurationPolicyPrefStore.
recommended_cloud_provider_.reset();
managed_cloud_provider_.reset();
- recommended_platform_provider_.reset();
- managed_platform_provider_.reset();
+ platform_provider_.reset();
}
void BrowserPolicyConnector::Init() {
- managed_platform_provider_.reset(CreateManagedPlatformProvider());
- recommended_platform_provider_.reset(CreateRecommendedPlatformProvider());
+ platform_provider_.reset(CreatePlatformProvider());
#if defined(OS_CHROMEOS)
// The CloudPolicyProvider blocks asynchronous Profile creation until a login
@@ -156,12 +154,10 @@ PolicyService* BrowserPolicyConnector::CreatePolicyService(
Profile* profile) const {
// |providers| in decreasing order of priority.
PolicyServiceImpl::Providers providers;
- if (managed_platform_provider_.get())
- providers.push_back(managed_platform_provider_.get());
+ if (platform_provider_.get())
+ providers.push_back(platform_provider_.get());
if (managed_cloud_provider_.get())
providers.push_back(managed_cloud_provider_.get());
- if (recommended_platform_provider_.get())
- providers.push_back(recommended_platform_provider_.get());
if (recommended_cloud_provider_.get())
providers.push_back(recommended_cloud_provider_.get());
return new PolicyServiceImpl(providers);
@@ -504,7 +500,7 @@ void BrowserPolicyConnector::CompleteInitialization() {
// static
ConfigurationPolicyProvider*
- BrowserPolicyConnector::CreateManagedPlatformProvider() {
+ BrowserPolicyConnector::CreatePlatformProvider() {
const PolicyDefinitionList* policy_list = GetChromePolicyDefinitionList();
#if defined(OS_WIN)
return new ConfigurationPolicyProviderWin(policy_list);
@@ -515,31 +511,9 @@ ConfigurationPolicyProvider*
#elif defined(OS_POSIX)
FilePath config_dir_path;
if (PathService::Get(chrome::DIR_POLICY_FILES, &config_dir_path)) {
- return new ConfigDirPolicyProvider(
- policy_list,
- POLICY_LEVEL_MANDATORY,
- POLICY_SCOPE_MACHINE,
- config_dir_path.Append(FILE_PATH_LITERAL("managed")));
- } else {
- return NULL;
- }
-#else
- return NULL;
-#endif
-}
-
-// static
-ConfigurationPolicyProvider*
- BrowserPolicyConnector::CreateRecommendedPlatformProvider() {
-#if defined(OS_POSIX) && !defined(OS_MACOSX)
- const PolicyDefinitionList* policy_list = GetChromePolicyDefinitionList();
- FilePath config_dir_path;
- if (PathService::Get(chrome::DIR_POLICY_FILES, &config_dir_path)) {
- return new ConfigDirPolicyProvider(
- policy_list,
- POLICY_LEVEL_RECOMMENDED,
- POLICY_SCOPE_MACHINE,
- config_dir_path.Append(FILE_PATH_LITERAL("recommended")));
+ scoped_ptr<AsyncPolicyLoader> loader(
+ new ConfigDirPolicyLoader(config_dir_path, POLICY_SCOPE_MACHINE));
+ return new AsyncPolicyProvider(policy_list, loader.Pass());
} else {
return NULL;
}

Powered by Google App Engine
This is Rietveld 408576698