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

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

Issue 10449071: Enable user policy handling through the new cloud policy stack. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Address comments. 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
« no previous file with comments | « no previous file | chrome/browser/policy/browser_policy_connector.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/policy/browser_policy_connector.h
diff --git a/chrome/browser/policy/browser_policy_connector.h b/chrome/browser/policy/browser_policy_connector.h
index 2c524726c0908dc744d7ffb3e83ace6d9c9ee3ec..bb71c15e94855bb1b1ca10301697b49c0bad6dc5 100644
--- a/chrome/browser/policy/browser_policy_connector.h
+++ b/chrome/browser/policy/browser_policy_connector.h
@@ -14,6 +14,7 @@
#include "chrome/browser/policy/cloud_policy_constants.h"
#include "chrome/browser/policy/configuration_policy_handler_list.h"
#include "chrome/browser/policy/enterprise_install_attributes.h"
+#include "chrome/browser/policy/proxy_policy_provider.h"
#include "content/public/browser/notification_observer.h"
#include "content/public/browser/notification_registrar.h"
@@ -27,7 +28,9 @@ class CloudPolicyDataStore;
class CloudPolicyProvider;
class CloudPolicySubsystem;
class ConfigurationPolicyProvider;
+class DeviceManagementService;
class PolicyService;
+class UserCloudPolicyManager;
class UserPolicyTokenCache;
// Manages the lifecycle of browser-global policy infrastructure, such as the
@@ -48,7 +51,7 @@ class BrowserPolicyConnector : public content::NotificationObserver {
// Creates a new policy service for the given profile, or a global one if
// it is NULL. Ownership is transferred to the caller.
- PolicyService* CreatePolicyService(Profile* profile) const;
+ PolicyService* CreatePolicyService(Profile* profile);
// Returns a weak pointer to the CloudPolicySubsystem corresponding to the
// device policy managed by this policy connector, or NULL if no such
@@ -153,6 +156,12 @@ class BrowserPolicyConnector : public content::NotificationObserver {
static ConfigurationPolicyProvider* CreateManagedPlatformProvider();
static ConfigurationPolicyProvider* CreateRecommendedPlatformProvider();
+ // Used to convert policies to preferences. The providers declared below
+ // trigger policy updates during destruction via OnProviderGoingAway(), which
+ // will result in |handler_list_| being consulted for policy translation.
+ // Therefore, it's important to destroy |handler_list_| after the providers.
+ ConfigurationPolicyHandlerList handler_list_;
+
scoped_ptr<ConfigurationPolicyProvider> managed_platform_provider_;
scoped_ptr<ConfigurationPolicyProvider> recommended_platform_provider_;
@@ -169,6 +178,14 @@ class BrowserPolicyConnector : public content::NotificationObserver {
scoped_ptr<CloudPolicyDataStore> user_data_store_;
scoped_ptr<CloudPolicySubsystem> user_cloud_policy_subsystem_;
+ // Components of the new-style cloud policy implementation.
+ // TODO(mnissler): Remove the old-style components above once we have
+ // completed the switch to the new cloud policy implementation.
+ scoped_ptr<DeviceManagementService> device_management_service_;
+
+ ProxyPolicyProvider user_cloud_policy_provider_;
+ scoped_ptr<UserCloudPolicyManager> user_cloud_policy_manager_;
+
// Used to initialize the device policy subsystem once the message loops
// are spinning.
base::WeakPtrFactory<BrowserPolicyConnector> weak_ptr_factory_;
@@ -180,9 +197,6 @@ class BrowserPolicyConnector : public content::NotificationObserver {
// policy authentication tokens.
TokenService* token_service_;
- // Used to convert policies to preferences.
- ConfigurationPolicyHandlerList handler_list_;
-
#if defined(OS_CHROMEOS)
scoped_ptr<AppPackUpdater> app_pack_updater_;
#endif
« no previous file with comments | « no previous file | chrome/browser/policy/browser_policy_connector.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698