Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef CHROME_BROWSER_POLICY_BROWSER_POLICY_CONNECTOR_H_ | 5 #ifndef CHROME_BROWSER_POLICY_BROWSER_POLICY_CONNECTOR_H_ |
| 6 #define CHROME_BROWSER_POLICY_BROWSER_POLICY_CONNECTOR_H_ | 6 #define CHROME_BROWSER_POLICY_BROWSER_POLICY_CONNECTOR_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
| (...skipping 10 matching lines...) Expand all Loading... | |
| 21 class TokenService; | 21 class TokenService; |
| 22 | 22 |
| 23 namespace policy { | 23 namespace policy { |
| 24 | 24 |
| 25 class AppPackUpdater; | 25 class AppPackUpdater; |
| 26 class CloudPolicyDataStore; | 26 class CloudPolicyDataStore; |
| 27 class CloudPolicyProvider; | 27 class CloudPolicyProvider; |
| 28 class CloudPolicySubsystem; | 28 class CloudPolicySubsystem; |
| 29 class ConfigurationPolicyProvider; | 29 class ConfigurationPolicyProvider; |
| 30 class DeviceManagementService; | 30 class DeviceManagementService; |
| 31 class NetworkConfigurationUpdater; | |
| 31 class PolicyService; | 32 class PolicyService; |
| 32 class UserCloudPolicyManager; | 33 class UserCloudPolicyManager; |
| 33 class UserPolicyTokenCache; | 34 class UserPolicyTokenCache; |
| 34 | 35 |
| 35 // Manages the lifecycle of browser-global policy infrastructure, such as the | 36 // Manages the lifecycle of browser-global policy infrastructure, such as the |
| 36 // platform policy providers, device- and the user-cloud policy infrastructure. | 37 // platform policy providers, device- and the user-cloud policy infrastructure. |
| 37 // TODO(gfeher,mnissler): Factor out device and user specific methods into their | 38 // TODO(gfeher,mnissler): Factor out device and user specific methods into their |
| 38 // respective classes. | 39 // respective classes. |
| 39 class BrowserPolicyConnector : public content::NotificationObserver { | 40 class BrowserPolicyConnector : public content::NotificationObserver { |
| 40 public: | 41 public: |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 138 CloudPolicyDataStore* GetUserCloudPolicyDataStore(); | 139 CloudPolicyDataStore* GetUserCloudPolicyDataStore(); |
| 139 | 140 |
| 140 const ConfigurationPolicyHandlerList* GetHandlerList() const; | 141 const ConfigurationPolicyHandlerList* GetHandlerList() const; |
| 141 | 142 |
| 142 // Works out the user affiliation by checking the given |user_name| against | 143 // Works out the user affiliation by checking the given |user_name| against |
| 143 // the installation attributes. | 144 // the installation attributes. |
| 144 UserAffiliation GetUserAffiliation(const std::string& user_name); | 145 UserAffiliation GetUserAffiliation(const std::string& user_name); |
| 145 | 146 |
| 146 AppPackUpdater* GetAppPackUpdater(); | 147 AppPackUpdater* GetAppPackUpdater(); |
| 147 | 148 |
| 149 NetworkConfigurationUpdater* GetNetworkConfigurationUpdater(); | |
| 150 | |
| 148 DeviceManagementService* device_management_service() { | 151 DeviceManagementService* device_management_service() { |
| 149 return device_management_service_.get(); | 152 return device_management_service_.get(); |
| 150 } | 153 } |
| 151 | 154 |
| 152 // Sets a |provider| that will be included in PolicyServices returned by | 155 // Sets a |provider| that will be included in PolicyServices returned by |
| 153 // CreatePolicyService. This is a static method because local state is | 156 // CreatePolicyService. This is a static method because local state is |
| 154 // created immediately after the connector, and tests don't have a chance to | 157 // created immediately after the connector, and tests don't have a chance to |
| 155 // inject the provider otherwise. |provider| must outlive the connector, and | 158 // inject the provider otherwise. |provider| must outlive the connector, and |
| 156 // its ownership is not taken. | 159 // its ownership is not taken. |
| 157 static void SetPolicyProviderForTesting( | 160 static void SetPolicyProviderForTesting( |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 213 | 216 |
| 214 // Registers the provider for notification of successful Gaia logins. | 217 // Registers the provider for notification of successful Gaia logins. |
| 215 content::NotificationRegistrar registrar_; | 218 content::NotificationRegistrar registrar_; |
| 216 | 219 |
| 217 // Weak reference to the TokenService we are listening to for user cloud | 220 // Weak reference to the TokenService we are listening to for user cloud |
| 218 // policy authentication tokens. | 221 // policy authentication tokens. |
| 219 TokenService* token_service_; | 222 TokenService* token_service_; |
| 220 | 223 |
| 221 #if defined(OS_CHROMEOS) | 224 #if defined(OS_CHROMEOS) |
| 222 scoped_ptr<AppPackUpdater> app_pack_updater_; | 225 scoped_ptr<AppPackUpdater> app_pack_updater_; |
| 226 scoped_ptr<NetworkConfigurationUpdater> network_configuration_updater_; | |
|
Mattias Nissler (ping if slow)
2012/09/05 11:19:05
As discussed offline, we probably want to separate
| |
| 223 #endif | 227 #endif |
| 224 | 228 |
| 225 DISALLOW_COPY_AND_ASSIGN(BrowserPolicyConnector); | 229 DISALLOW_COPY_AND_ASSIGN(BrowserPolicyConnector); |
| 226 }; | 230 }; |
| 227 | 231 |
| 228 } // namespace policy | 232 } // namespace policy |
| 229 | 233 |
| 230 #endif // CHROME_BROWSER_POLICY_BROWSER_POLICY_CONNECTOR_H_ | 234 #endif // CHROME_BROWSER_POLICY_BROWSER_POLICY_CONNECTOR_H_ |
| OLD | NEW |