| 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
|
|
|